From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Petazzoni Date: Tue, 1 Jan 2019 11:31:55 +0100 Subject: [Buildroot] [PATCH 3/3] package/pkg-python: use --single-version-externally-managed for host setuptools In-Reply-To: <20181228170132.13049-4-thomas.petazzoni@bootlin.com> References: <20181228170132.13049-1-thomas.petazzoni@bootlin.com> <20181228170132.13049-4-thomas.petazzoni@bootlin.com> Message-ID: <20190101113155.4bc9cce5@windsurf> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: buildroot@busybox.net Hello, On Fri, 28 Dec 2018 18:01:31 +0100, Thomas Petazzoni wrote: > Currently, host Python packages that use setuptools are installed as > Python Eggs, i.e they are installed in > $(HOST_DIR)/lib/python2.7/site-packages/Something-.egg. Once > installed, each Python Egg is registered to a file called > $(HOST_DIR)/lib/python2.7/site-packages/easy-install.pth. This file is > read by the Python interpreter so that the installation location of > each Egg is added to the Python path, and can be found by the Python > interpreter. > > However, the fact that the installation of different Python modules > need to update a common file is clearly not compatible with > per-package directories and top-level parallel build. > > To fix this, we avoid using Python Eggs using the same > --single-version-externally-managed option that we use for target > modules. This option is normally meant for distributions packaging > Python modules, and can therefore only be used if either --record (to > record the list of files being installed) or --root is > passed. --root=/ works fine and was suggested by > https://stackoverflow.com/questions/6301003/stopping-setup-py-from-installing-as-egg/33791008#33791008. > > With this change, host Python modules installed by setuptools are now > installed in the "regular" way, i.e directly in > $(HOST_DIR)/lib/python2.7/site-packages/mako for host-python-mako. > > This makes the installation of host Python modules more similar to the > one of target modules, and makes it compatible with per-package > directory support and top-level parallel build. > > Signed-off-by: Thomas Petazzoni > --- > package/pkg-python.mk | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) Applied to master, thanks. Thomas -- Thomas Petazzoni, CTO, Bootlin Embedded Linux and Kernel engineering https://bootlin.com