diff options
author | Michał Górny <mgorny@gentoo.org> | 2015-11-10 18:38:43 +0100 |
---|---|---|
committer | Michał Górny <mgorny@gentoo.org> | 2015-11-11 11:22:13 +0100 |
commit | 04e5898847f506eef4e6d0c58ce21710e2671cee (patch) | |
tree | 59a2ed8f13ab71656639033c7f9ab148c933bccf /dev-libs | |
parent | c7a174af449ecf4e84c51e8acfdc1811c4f1f69e (diff) | |
download | gentoo-04e5898847f506eef4e6d0c58ce21710e2671cee.tar.gz gentoo-04e5898847f506eef4e6d0c58ce21710e2671cee.tar.xz |
dev-libs/boost: Work-around library rename due to ABIFLAGS
Create a compatibility symlink to work-around Boost linking failures
when Python library name contains ABIFLAGS. A proper fix would be
preferable but the build system is convoluted and buggy, so a
work-around is put in place instead.
Diffstat (limited to 'dev-libs')
-rw-r--r-- | dev-libs/boost/boost-1.57.0.ebuild | 11 | ||||
-rw-r--r-- | dev-libs/boost/boost-1.58.0-r1.ebuild | 11 |
2 files changed, 20 insertions, 2 deletions
diff --git a/dev-libs/boost/boost-1.57.0.ebuild b/dev-libs/boost/boost-1.57.0.ebuild index caddfd55889..a1273eccd5e 100644 --- a/dev-libs/boost/boost-1.57.0.ebuild +++ b/dev-libs/boost/boost-1.57.0.ebuild @@ -75,10 +75,19 @@ create_user-config.jam() { fi if python_bindings_needed; then + # boost expects libpython$(pyver) and doesn't allow overrides + # and the build system is so creepy that it's easier just to + # provide a symlink (linker's going to use SONAME anyway) + # TODO: replace it with proper override one day + ln -f -s "$(python_get_library_path)" "${T}/lib${EPYTHON}$(get_libname)" || die + if tc-is-cross-compiler; then python_configuration="using python : ${EPYTHON#python} : : ${SYSROOT:-${EROOT}}/usr/include/${EPYTHON} : ${SYSROOT:-${EROOT}}/usr/$(get_libdir) ;" else - python_configuration="using python : : ${PYTHON} ;" + # note: we need to provide version explicitly because of + # a bug in the build system: + # https://github.com/boostorg/build/pull/104 + python_configuration="using python : ${EPYTHON#python} : ${PYTHON} : $(python_get_includedir) : ${T} ;" fi fi diff --git a/dev-libs/boost/boost-1.58.0-r1.ebuild b/dev-libs/boost/boost-1.58.0-r1.ebuild index 6389bc0577a..10cddb99443 100644 --- a/dev-libs/boost/boost-1.58.0-r1.ebuild +++ b/dev-libs/boost/boost-1.58.0-r1.ebuild @@ -74,10 +74,19 @@ create_user-config.jam() { fi if python_bindings_needed; then + # boost expects libpython$(pyver) and doesn't allow overrides + # and the build system is so creepy that it's easier just to + # provide a symlink (linker's going to use SONAME anyway) + # TODO: replace it with proper override one day + ln -f -s "$(python_get_library_path)" "${T}/lib${EPYTHON}$(get_libname)" || die + if tc-is-cross-compiler; then python_configuration="using python : ${EPYTHON#python} : : ${SYSROOT:-${EROOT}}/usr/include/${EPYTHON} : ${SYSROOT:-${EROOT}}/usr/$(get_libdir) ;" else - python_configuration="using python : : ${PYTHON} ;" + # note: we need to provide version explicitly because of + # a bug in the build system: + # https://github.com/boostorg/build/pull/104 + python_configuration="using python : ${EPYTHON#python} : ${PYTHON} : $(python_get_includedir) : ${T} ;" fi fi |