buildroot/package/python
Arnout Vandecappelle 6c94ab3cfd host-python{, 3}: fix parallel install of libpython
During installation, host-python and host-python3 run the freshly built
python executable. This is done with a proper LD_LIBRARY_PATH to make
sure it picks up the libpython in the build directory. However, the
python binary has an RPATH pointing to the $(HOST_DIR)/usr/lib.
Therefore, if libpython exists there, it will be used instead.

If the install step is run in parallel, it is possible that libpython
is already partially copied to $(HOST_DIR)/usr/lib when python is run.
This gives an error like:

python: error while loading shared libraries: $(HOST_DIR)/usr/lib/libpython3.4m.so.1.0: file too short

The fix is simple: use RUNPATH instead of RPATH, which allows
LD_LIBRARY_PATH to override RUNPATH. That way, the libpython in the
build directory is always used. RUNPATH is enabled by passing
--enable-new-dtags to the linker.

Fixes e.g.
http://autobuild.buildroot.net/results/2a6/2a62de3247ba5ad273f03d01e690a3eeb11aa7b4

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-03-05 19:45:24 +01:00
..
Config.in added python unicode selection to menu 2014-01-22 22:39:36 +01:00
python-001-remove-host-header-path.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python-002-fix-get-python-inc.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python-003-properly-detect-if-python-build.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python-004-sysconfigdata-install-location.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python-005-pyc-pyo-conditional.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python-006-cross-compile-getaddrinfo.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python-007-disable-extensions.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python-008-distutils-use-python-sysroot.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python-009-no-termcap-host-path.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python-010-fix-python-config.patch python: fixup python-config script 2014-03-02 15:20:16 +01:00
python-100-optional-test-modules.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python-101-optional-pydoc.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python-102-optional-2to3.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python-103-optional-sqlite.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python-104-optional-tk.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python-105-optional-curses.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python-106-optional-expat.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python-107-optional-codecs-cjk.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python-108-optional-nis.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python-109-optional-unicodedata.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python-110-optional-db.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python-111-optional-ssl.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python-112-optional-bzip2.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python-113-optional-zlib.patch python: bump to 2.7.6 2014-02-14 21:41:43 +01:00
python.mk host-python{, 3}: fix parallel install of libpython 2014-03-05 19:45:24 +01:00