From patchwork Mon Apr 30 19:23:58 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Trent Piepho X-Patchwork-Id: 906837 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.137; helo=fraxinus.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=impinj.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=impinj.onmicrosoft.com header.i=@impinj.onmicrosoft.com header.b="DuOCk+Si"; dkim-atps=neutral Received: from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 40ZZcG09wJz9s0n for ; Tue, 1 May 2018 05:39:25 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id 46E66861AA; Mon, 30 Apr 2018 19:39:23 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ng5JQml9gT85; Mon, 30 Apr 2018 19:39:21 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by fraxinus.osuosl.org (Postfix) with ESMTP id C259285AB5; Mon, 30 Apr 2018 19:39:21 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from hemlock.osuosl.org (smtp2.osuosl.org [140.211.166.133]) by ash.osuosl.org (Postfix) with ESMTP id 70FD81C25D9 for ; Mon, 30 Apr 2018 19:39:20 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by hemlock.osuosl.org (Postfix) with ESMTP id 6DCFF88A8C for ; Mon, 30 Apr 2018 19:39:20 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from hemlock.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 0fyDgJDU4JfI for ; Mon, 30 Apr 2018 19:39:19 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from NAM03-DM3-obe.outbound.protection.outlook.com (mail-dm3nam03on0100.outbound.protection.outlook.com [104.47.41.100]) by hemlock.osuosl.org (Postfix) with ESMTPS id 699E488A86 for ; Mon, 30 Apr 2018 19:39:19 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=impinj.onmicrosoft.com; s=selector1-impinj-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=O/5oH6Hv9QaYZwqTf4veYS/+V1WOWQBrlyY9Aj0VR/g=; b=DuOCk+SiYO6cgFJ/iStcVMrUH0alPYatL3++2e6qnWfjCHXQJ5mtJJMcT1weu1sdgdYW1Uz37JXMugg7uTEo4NcNc28fOFEufew7TiFI2JoNH6j1DINeqBOVXBzXc7rHL92FUUyayPv7ujT5NaCsUr3Adfo6tPSahFJoEln2kL0= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=tpiepho@impinj.com; Received: from impinj.com (216.207.205.253) by MWHPR0601MB3706.namprd06.prod.outlook.com (2603:10b6:301:7c::36) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.715.18; Mon, 30 Apr 2018 19:24:31 +0000 From: Trent Piepho To: buildroot@buildroot.org Date: Mon, 30 Apr 2018 12:23:58 -0700 Message-Id: <20180430192359.15733-2-tpiepho@impinj.com> X-Mailer: git-send-email 2.14.3 In-Reply-To: <20180430192359.15733-1-tpiepho@impinj.com> References: <20180430192359.15733-1-tpiepho@impinj.com> MIME-Version: 1.0 X-Originating-IP: [216.207.205.253] X-ClientProxiedBy: MWHPR22CA0002.namprd22.prod.outlook.com (2603:10b6:300:ef::12) To MWHPR0601MB3706.namprd06.prod.outlook.com (2603:10b6:301:7c::36) X-MS-PublicTrafficType: Email X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:MWHPR0601MB3706; X-Microsoft-Exchange-Diagnostics: 1; MWHPR0601MB3706; 3:x1vqObe7EHGgUnGxEx0rjYkZ6q4iiRlorPVTV9SW6Y79VLowCmCJzP/5+nCLXHLtpPzFp4WWTzJevhCyqaImqiz0g/mXUzMGT2jQ9445AT9JlLSE4kN1r8DtaWax1tu2XbDgJimcHvj9RRYsyOEyv06h5lUTMHfnpb8vpLN+I4BBLxb0ggsTMRvElaO0XGDEq291ozb0lXAoU3gJuKOqMB7W7OMTu6npXDFEWPW3XZNWZZVv6fSIurtTWCDgLVHc; 25:kYzvHAEszDXAMXjtuPl2nt4n20cQhuuXMeiaBU7m/ymq5IkDuuRlDrXUZbCO7YhLnNV1gHB0qNpeB8JszfYhFdSy2DyrXUicRlTBdMSB1HYLCNSTwol1Ow2hrPfEnisF1jXAWN+60Xs+P3kFqKp545akGlb0ihjevIl7KAXN6TrrQbSuyseyUTRLJsiBATpEu4ZVWwQ2dLlSQ4H2uDpo7nYmc1BxoihiFVZKY725vYNn70oWGhG1VRp52zmOsJENams9rqwpa/VLu8Gr73A0mV0mE83W6DFVJnd6h1I0vTQ7KGrWU5v0Cq7Z4g33dKZCvF0veKN55K4639Q771ImtQ==; 31:KCSqsQx2VHsSzUBBQt7mnxOPsLbVd4itdLixoMu2ejo+S5J/1URjq/tANFbEDGbJAwXkne6n8qiHHkaE0Y9799usxI0RIOBe73WUzB6Hs3xNFcFOlb05WqbVJ73N+fSKoKuP2UWmZeh90p7HTZoJrE8+Y6aDnc+W9oXPz/tI6ZsrKT+Kd2fs8wrZPIsjqPAw6OWUSbmE/0cHZrZnoCPzXAhE96w8IVoYd5YiT082bus= X-MS-TrafficTypeDiagnostic: MWHPR0601MB3706: X-Microsoft-Exchange-Diagnostics: 1; MWHPR0601MB3706; 20:bMOST9wNv9LFRx5lYJSmG05I+BwvlO964j0SlzJIcOp0AuwXuCBOgdXzJqmTkvDZiHI4kmAwJMJds53R+/A/dMFUNv0qmvQlBXxX499heMpOkhbeatf/DgtWMj3CT2D62u7ocvXTZBf/ecIWarG+VUb12aaKtfX14Lh/t4hqTTD8d8JEWpXJF32onkTrKxIzYXgGciuFpImqmO8nNVKh5XPczZ1I1od38aVyk+f6QufFFZXHdwU/7S4EMQH+W27dExg8PkYwCbh2xHXugyPY/5Wi2JksCyPuCMTg/yNaJskyio+ClVjnhkRUXWHkcbVUeIu8eNWcjJlD7Kxp7sq7V4H/HqAikEHHSS3Jlfmw8de+DcIHg9LSa1ggN5EiqDC2aNBY/ZoB7BZSUmmtrhxtkFbcBXsl7iQWh0I/1qCauRFaPEI8F0hOrf9MNXOca9fGnAVKs0kNRBWxmqFJwRFw1t/fjrnf+nY1DJaLhXjfrDe51LPe/KhJWaJ82RSdU98i; 4:5P4wc5YBYPVZZIaKz4dVL6jDtDJT0D2VWeewQGJDsIKiMsNBCoNBMYAmrOWLXc8Aj/7ljBQPaqvH45e0R26omdskGSlmP31b+82QiIHMS2RjlaRKm9wAVjUbVx5zcZZwovzeL38333FYO870SXXXUpeoqHQQ5tZdHSeoIh/pPnNQzvWBJAQDsiAxMosFRQDlc+MUsyGIeSeag4tJ6K/TwCOj6yiulp4m7MR4ySwZ43ZfJYJh7kzlwBnVEztE1wmLJTkupYIC67zV6R1zFP9lrQ== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93001095)(3231254)(944501410)(52105095)(10201501046)(3002001)(6041310)(20161123560045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123564045)(6072148)(201708071742011); SRVR:MWHPR0601MB3706; BCL:0; PCL:0; RULEID:; SRVR:MWHPR0601MB3706; X-Forefront-PRVS: 0658BAF71F X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(346002)(39840400004)(396003)(376002)(39380400002)(366004)(199004)(189003)(305945005)(81156014)(7736002)(6116002)(53936002)(1076002)(3846002)(316002)(97736004)(36756003)(16526019)(478600001)(186003)(39060400002)(4326008)(107886003)(105586002)(69596002)(5660300001)(8936002)(55016002)(8676002)(106356001)(2361001)(50226002)(11346002)(476003)(26005)(68736007)(2616005)(2906002)(446003)(956004)(386003)(66066001)(6916009)(486006)(81166006)(7696005)(86362001)(2351001)(50466002)(48376002)(51416003)(54906003)(21086003)(16586007)(25786009)(52116002)(76176011)(6666003)(47776003); DIR:OUT; SFP:1102; SCL:1; SRVR:MWHPR0601MB3706; H:impinj.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; Received-SPF: None (protection.outlook.com: impinj.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; MWHPR0601MB3706; 23:u7fjUmt9YXiu1xBal1WF/M814Q/hudg31ry+fH8?= elRD56Pp4O/9dTdRQ4pFr+ruIDqj/pXUAPO4GuqfmiXFvH3/QxxdCvLjV5wIPpqUAlus6eBllJHyG8FNh4wSefSKrTpu/aIGTCRC4VhCG5kLYcbZ1d9ShmJdjMmVyR5CAKn0aVRN1/jmmPEkaB49/uuvwl0mt+lrRyZTuGn5NnjczNzq+ABn0ezniB0o9/HCJzd269N6pJdxDQ2cRaMWlOo7QGkL9BBhl4TwDq7oLLjowNO0BaBIa/taoKofbZ93LcsBPnnIQqi9aQtqkjieRNwQ3QlPPzYBJljgnPeP/HZ0QMcxINEKiBoJF6OyvAyv8ZXbwkQKrQV74Q1ESKURzQTxl8Fv48HPIwZTWF/uqivS8IP9FQaw3XqZuSNCshM0DjGDnDOflwa68D3PtTB0CwKPhxCzQiPBas4TOIVGWEPfaH0CMN0/MfyCDXIs68Marx4Gn7W1A17rMunak5Q0+/OK8KIAAcgSLVerOlqM4twlroNP1NXgMMUxZAkG5OlYYgkIQRq0MouSqW5GUmusfbolRGlyIKHC9mJCRBI912+CTLAvoB808SWR7Zv0omLi/RkihUbUMddMqy7si8o9LR0cf6a6uwljkXdnzONZxBNLhQyYf62bdM9+TVlFCvzBrUfAgt56DVCtrFswJVY6Q9Tw9RsZbggUqqGHUQisQpl0OQYRVH7JiXynNvnWqxhLWJmO7i1K0t1jsd76Nt2GCiAXqId5J4SEd2Aab+h4KeAkvkVppNX7xVzuOTHsMBOftCZ4ML+xz8XL/yjHiR+e9R2hnqgWTZZhef9HUStjnHUJq5CFcWhhzerWm5Go0MV9muQ33TN9icFZuX7mBFytUUVp+j1TdyW+J6Ibwhf3lEqOCaYFtTjKgBHrLL0Y/IUw8jsQcA6y5LE4m18N6NCtWxKbRw8KGqe5j86tEDxtlUzZf+cceyjw9/iXR3Db8QlTb95VHy23A/57t3DBM21B48792e1RasZp3eYZGT8ZnhoSIzWecyQfoIzxOBXsDnyuNG4rJ+m9ytKTz/pPFTovrvEVUaEkuo7I7LOQnzls3lXVZbibre5Mv/UmS6R6tGClCjoHjM8NjSj+lKKNah/ACyELhoccQe6M9JFl8D7qAFIC3PY6sDMcP0/MasTJSOUDPTIX18sKXLsuMi36oXcT19FRIQ5heIkRE3S9B0WxSIbtT7GDiYlh2fc5RaANQq/KXbT2ILtryvuxBGarrpM7tF7ItgjmwyTY+7JElHi+fiEVdBPHwyrYzqMUZLF+YG2ZuZ+QsFLUEsM0sUaFe5vuOLLM9 X-Microsoft-Antispam-Message-Info: Bk/s/GZaaO2od+82RuEpYaQ1JdVcn6yK9Y1QbY7kH9BsXwzP5PLPc33u5p1W/qKl3xUbCYPhpJCWEa4t+KMfuI+ZiC6PPU1wZwrmyEdk3tkKJZaIlYya8yfHM/xEIsCW+48fwtygsSUEw7d8wkImDVe8rxUMXpVyCKBo9JOLn22DCAhM+4736yo7+iUynF2y X-Microsoft-Exchange-Diagnostics: 1; MWHPR0601MB3706; 6:cOL/gUfb53oJJ0YfNk4OBDG+1XGUERgOiFhZMhpntMmLThC96WAqYihR04esr8yCKucg10dOi/B1uUEyFvoPPDVgyvfC5gOgDYtxL8GgNT17VwgoQTzDyOIOYmCEutAL0cl+QBUqQoDAFEpJDQ1f1egLA2BXpYDA0Q4efF2RJrnLm4TzhrEhX+VmknXudz7CPonnO6uQS7eGK/GV88SVjTER2EYiqH/rZbPdJdUQax/QZr98/QpjBeWNOqLO9EGvmhomAdDoCC6awqcljS9Hi+jQysWpXc3oiKzulR/2R23/WZ7vhWV9b2/YIs1Mno5lsOHANmDYmkUrvdXexpIQ066A2YoGonIyAxXoTSCig1Okya6t7wQtrGAgxRIxaTOLBlrzAz8PQScD9w779ox1TcXfyAWg66PyEKBwnb5Y5twyhYQSJquPXOFHjad46b4UdJkf2Oou360FLijbQVK98g==; 5:r7rRavuhdMAGVQq55F0zdnM/Ah/7PI3tSc4l4JACxi+Ybw1vEODBpWSWM3Liz7QyF0OdM1AFdLYCg82b3tJIqw6alqOVlFd9ZcLOPw4BV4ml9FUnfiPrI6J/MFbEbWX+0VU2RiprnAz6SKP0D2X+5YuEtCj/+zBxrbghHMEa6LU=; 24:xcphuBlf6GVfPjymXvxOLeBvBdtwZ+ZBgLCSn0yZVUGUL1xC2NfRvLj7YhtA3xsdIxYXMnuw2aMCnZkMtGwPbtrdNWsyP+e7t3yKGXwLwpY= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; MWHPR0601MB3706; 7:xK0pEdUP97KlqEFlC6MZOS8axXQYqHBcT1n+XRdnQ6I3Q+z/tPCyaOPpzIXxknwXJhNjdgK1wtDqCGasLP9QwDOpP8x5+O60gxZH2K4aDFvJhq2PQ2jgxEjEMJqMtodb/F1KyqAguYP8kWsktzVRnd7gQyT/HB2qG965vaXU50u6w8s/S2l6QmxzT4ah0Rf+lplt+qtBql94l+rWWbSdC20a5ZPd14FlW19AVZLK8zKvNrKyEiUr7UcNy20lVZd1 X-MS-Office365-Filtering-Correlation-Id: be0a7a0b-d3ff-4f1c-c35d-08d5aecfffee X-OriginatorOrg: impinj.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Apr 2018 19:24:31.7781 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: be0a7a0b-d3ff-4f1c-c35d-08d5aecfffee X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 6de70f0f-7357-4529-a415-d8cbb7e93e5e X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR0601MB3706 Subject: [Buildroot] [PATCH 1/2] host-python: Select host python version when no target python X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.24 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Adam Duskett , Trent Piepho Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" Buildroot will select the host python version, 2 or 3, based on the target python version. Without a target python, one gets host python 2. While both versions of host python can be built, only one can be the default and have setuptools and distutils support. This must match the target python version, but if there is no target python version it could be either 2 or 3. Currently, the default host python will be 2 if there is no target python selected and there is no way to change that. This patch allows one to select host python 3 in this instance. Iff there is no target python selected, then a host package option for python3 will be available. If there is a target python selected, then this new option is forced by that and no longer user selectable. Add variable PKG_PYTHON_HOST_PYTHON to be used by non-python-packages that need host-python. If they can work with either host-python version, they should use this variable to depend on the correct one. Signed-off-by: Trent Piepho --- package/Config.in.host | 1 + package/pkg-python.mk | 6 +++++- package/python/python.mk | 2 +- package/python3/Config.in.host | 8 ++++++++ package/python3/python3.mk | 2 +- 5 files changed, 16 insertions(+), 3 deletions(-) create mode 100644 package/python3/Config.in.host diff --git a/package/Config.in.host b/package/Config.in.host index a8a4c1f802..aab431c8d6 100644 --- a/package/Config.in.host +++ b/package/Config.in.host @@ -43,6 +43,7 @@ menu "Host utilities" source "package/pkgconf/Config.in.host" source "package/pru-software-support/Config.in.host" source "package/pwgen/Config.in.host" + source "package/python3/Config.in.host" source "package/python-lxml/Config.in.host" source "package/python-six/Config.in.host" source "package/python-xlrd/Config.in.host" diff --git a/package/pkg-python.mk b/package/pkg-python.mk index f57e486dad..add100eedc 100644 --- a/package/pkg-python.mk +++ b/package/pkg-python.mk @@ -24,6 +24,10 @@ define PKG_PYTHON_SYSCONFIGDATA_NAME $(basename $(notdir $(wildcard $(STAGING_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/_sysconfigdata_m_linux_*.py))) endef +# If a package, which is not a python-package, needs a host python, but it can +# be either version, use this as the dependency +PKG_PYTHON_HOST_PYTHON = $(if $(BR2_PACKAGE_HOST_PYTHON3),host-python3,host-python) + # Target distutils-based packages PKG_PYTHON_DISTUTILS_ENV = \ PATH=$(BR_PATH) \ @@ -166,7 +170,7 @@ ifeq ($(4),target) $(2)_DEPENDENCIES += $$(if $$(BR2_PACKAGE_PYTHON3),host-python3 python3,host-python python) else ifeq ($$($(2)_NEEDS_HOST_PYTHON),) -$(2)_DEPENDENCIES += $$(if $$(BR2_PACKAGE_PYTHON3),host-python3,host-python) +$(2)_DEPENDENCIES += $$(if $$(BR2_PACKAGE_HOST_PYTHON3),host-python3,host-python) else ifeq ($$($(2)_NEEDS_HOST_PYTHON),python2) $(2)_DEPENDENCIES += host-python diff --git a/package/python/python.mk b/package/python/python.mk index aa7917ab46..ea68d49b19 100644 --- a/package/python/python.mk +++ b/package/python/python.mk @@ -225,7 +225,7 @@ PYTHON_AUTORECONF = YES # Some packages may have build scripts requiring python2. # Only install the python symlink in the host tree if python3 is not enabled # for the target, otherwise the default python program may be missing. -ifneq ($(BR2_PACKAGE_PYTHON3),y) +ifneq ($(BR2_PACKAGE_HOST_PYTHON3),y) define HOST_PYTHON_INSTALL_PYTHON_SYMLINK ln -sf python2 $(HOST_DIR)/bin/python ln -sf python2-config $(HOST_DIR)/bin/python-config diff --git a/package/python3/Config.in.host b/package/python3/Config.in.host new file mode 100644 index 0000000000..d5846df614 --- /dev/null +++ b/package/python3/Config.in.host @@ -0,0 +1,8 @@ +config BR2_PACKAGE_HOST_PYTHON3 + bool "host python3" if !BR2_PACKAGE_PYTHON3 && !BR2_PACKAGE_PYTHON + default BR2_PACKAGE_PYTHON3 + help + Use Python version 3 for the host Python version. + + If Python is enabled for the target, then this must match the target's + Python version and this option is not user selectable. diff --git a/package/python3/python3.mk b/package/python3/python3.mk index 6e61108661..427f9616aa 100644 --- a/package/python3/python3.mk +++ b/package/python3/python3.mk @@ -244,7 +244,7 @@ endif # python version chosen for the target. # Only install the python symlink in the host tree if python3 is enabled # for the target. -ifeq ($(BR2_PACKAGE_PYTHON3),y) +ifeq ($(BR2_PACKAGE_HOST_PYTHON3),y) define HOST_PYTHON3_INSTALL_SYMLINK ln -fs python3 $(HOST_DIR)/bin/python ln -fs python3-config $(HOST_DIR)/bin/python-config