commit: 15ae1999d07446d243021983ee77d89f2335f141 Author: Benda Xu <heroxbd <AT> gentoo <DOT> org> AuthorDate: Sat May 28 06:59:33 2016 +0000 Commit: Benda XU <heroxbd <AT> gentoo <DOT> org> CommitDate: Thu Jul 7 02:40:57 2016 +0000 URL: https://gitweb.gentoo.org/repo/proj/prefix.git/commit/?id=15ae1999
scripts/b-p.sh: link /usr/{lib -> lib64} in stage1 on systems get_libdir != lib, python (looks into /usr/lib by default) need to find libffi (installs into /usr/lib64 by default). ugly enumerating all possible libdirs. scripts/bootstrap-prefix.sh | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/scripts/bootstrap-prefix.sh b/scripts/bootstrap-prefix.sh index fd35927..45c2552 100755 --- a/scripts/bootstrap-prefix.sh +++ b/scripts/bootstrap-prefix.sh @@ -1103,6 +1103,23 @@ bootstrap_stage1() { ( chmod 755 "${ROOT}"/tmp/usr/bin/java{,c} ;; esac + # Host compiler can output a variety of libdirs. At stage1, + # they should be the same as lib. Otherwise libffi may not be + # found by python. + if is-rap ; then + [[ -d ${ROOT}/tmp/usr/lib ]] || mkdir -p "${ROOT}"/tmp/usr/lib + local libdir + for libdir in lib64 lib32 libx32; do + if [[ ! -L ${ROOT}/tmp/usr/${libdir} ]] ; then + if [[ -e "${ROOT}"/tmp/usr/${libdir} ]] ; then + echo "${ROOT}"/tmp/usr/${libdir} should be a symlink to lib + return 1 + fi + ln -s lib "${ROOT}"/tmp/usr/${libdir} + fi + done + fi + # important to have our own (non-flawed one) since Python (from # Portage) and binutils use it for zlib in ${ROOT}/tmp/usr/lib/libz.* ; do