summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Trofimovich <slyfox@gentoo.org>2020-08-24 09:44:20 +0100
committerSergei Trofimovich <slyfox@gentoo.org>2020-08-24 10:14:42 +0100
commit8c1d94226bc344629e44ff7d13a19b4e2631a249 (patch)
tree6e457d1c55b1888a4cd1c51f2531bb9e8bc6f8a8 /eclass/toolchain.eclass
parentapp-text/zathura-pdf-mupdf: fix mupdf-1.17.0 compat (diff)
downloadgentoo-8c1d94226bc344629e44ff7d13a19b4e2631a249.tar.gz
gentoo-8c1d94226bc344629e44ff7d13a19b4e2631a249.tar.bz2
gentoo-8c1d94226bc344629e44ff7d13a19b4e2631a249.zip
toolchain.eclass: fix relocation of libgccjit
Before the change libgccjit.so was installed to /usr/lib. Relocation code in toolchain.eclass:gcc_movelibs() only handles /usr/$(get_libdir) -> $LIBDIR location. As a result gcc did not relocate libraries to version-speciifc firectory: caused collisions and installed library into wrong LIBDIR. The change handles libgccjit special case by relocating it explicitly. Reported-by: Michał Górny Bug: https://bugs.gentoo.org/583010 Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
Diffstat (limited to 'eclass/toolchain.eclass')
-rw-r--r--eclass/toolchain.eclass6
1 files changed, 6 insertions, 0 deletions
diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index a3c948a93526..5bbf46ecd3d5 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1882,6 +1882,12 @@ gcc_movelibs() {
dodir "${HOSTLIBPATH#${EPREFIX}}"
mv "${ED}"/usr/$(get_libdir)/libcc1* "${D}${HOSTLIBPATH}" || die
fi
+ # libgccjit gets installed to /usr/lib, not /usr/$(get_libdir). Probably
+ # due to a bug in gcc build system.
+ if is_jit ; then
+ dodir "${LIBPATH#${EPREFIX}}"
+ mv "${ED}"/usr/lib/libgccjit* "${D}${LIBPATH}" || die
+ fi
# For all the libs that are built for CTARGET, move them into the
# compiler-specific CTARGET internal dir.