Fabian Groffen wrote: >>> Perhaps we could add a new function to the flag-o-matic that does the >>> CHOST check, and appends the flag, so the check code wouldn't have to be >>> duplicated in ebuilds? It should be rather trivial. >> >> ok, chost check would be cheap. how about, >> usage: append-ldflags $(no-as-needed) > > that would work fine for me, and all possible future cases I can think > of
+# @FUNCTION: no-as-needed +# @RETURN: Flag to disable asneeded behavior for use with append-ldflags. +no-as-needed() { + case $($(tc-getLD) -v 2>&1 </dev/null) in + *GNU*) # GNU ld + echo "-Wl,--no-as-needed" ;; + esac +} It's committed. To avoid the already caused trouble for you (prefix), these should be converted: (It's a ugly grep -r from gentoo-x86. I will handle this also in a QA bug, opening one later today.) app-admin/apache-tools/apache-tools-2.2.11.ebuild: # Instead of filtering --as-needed (bug #128505), append --no-as-needed app-admin/apache-tools/apache-tools-2.2.11.ebuild: append-ldflags -Wl,--no-as-needed app-admin/apache-tools/apache-tools-2.2.13.ebuild: # Instead of filtering --as-needed (bug #128505), append --no-as-needed app-admin/apache-tools/apache-tools-2.2.13.ebuild: append-ldflags -Wl,--no-as-needed app-admin/apache-tools/apache-tools-2.2.12.ebuild: # Instead of filtering --as-needed (bug #128505), append --no-as-needed app-admin/apache-tools/apache-tools-2.2.12.ebuild: append-ldflags -Wl,--no-as-needed app-editors/mlview/mlview-0.8-r1.ebuild: append-ldflags -Wl,--no-as-needed dev-games/ogre/files/ogre-1.4.9-as-needed.patch:+ ,-Xlinker --no-as-needed -lstdc++) dev-lang/gdl/gdl-0.9_rc2.ebuild: use imagemagick && append-ldflags -Wl,--no-as-needed dev-libs/yaz++/yaz++-1.1.0.ebuild: append-ldflags -Wl,--no-as-needed # FIXME. dev-libs/dvmysql/dvmysql-1.0.2.ebuild: append-ldflags -Wl,--no-as-needed dev-libs/dvutil/dvutil-0.15.5.ebuild: append-ldflags -Wl,--no-as-needed dev-libs/dvutil/dvutil-1.0.5.ebuild: append-ldflags -Wl,--no-as-needed dev-lisp/sbcl/sbcl-1.0.19.ebuild: append-ldflags -Wl,--no-as-needed # see Bug #132992 dev-lisp/sbcl/sbcl-1.0.31.ebuild: append-ldflags -Wl,--no-as-needed # see Bug #132992 dev-lisp/sbcl/sbcl-1.0.27-r10.ebuild: append-ldflags -Wl,--no-as-needed # see Bug #132992 dev-lisp/sbcl/sbcl-1.0.26-r10.ebuild: append-ldflags -Wl,--no-as-needed # see Bug #132992 dev-lisp/sbcl/sbcl-1.0.28.ebuild: append-ldflags -Wl,--no-as-needed # see Bug #132992 eclass/apache-2.eclass: # Instead of filtering --as-needed (bug #128505), append --no-as-needed eclass/apache-2.eclass: append-ldflags -Wl,--no-as-needed media-libs/SoQt/SoQt-1.4.1.ebuild: append-ldflags -Wl,--no-as-needed media-sound/pulseaudio/pulseaudio-0.9.15-r2.ebuild: append-ldflags -Wl,--no-as-needed media-sound/pulseaudio/pulseaudio-0.9.18-r50.ebuild: append-ldflags -Wl,--no-as-needed media-sound/pulseaudio/pulseaudio-0.9.19.ebuild: append-ldflags -Wl,--no-as-needed media-sound/pulseaudio/pulseaudio-0.9.19-r50.ebuild: append-ldflags -Wl,--no-as-needed media-sound/pulseaudio/pulseaudio-0.9.18.ebuild: append-ldflags -Wl,--no-as-needed net-firewall/ebtables/ebtables-2.0.9.1.ebuild: append-ldflags -Wl,--no-as-needed net-firewall/ebtables/ebtables-2.0.8.2-r2.ebuild: append-ldflags -Wl,--no-as-needed net-libs/rb_libtorrent/rb_libtorrent-0.13-r1.ebuild: append-ldflags -Wl,--no-as-needed net-mail/email/email-3.0.5.ebuild: append-ldflags -Wl,--no-as-needed sci-libs/mkl/mkl-10.0.2.018-r2.ebuild: Libs: -Wl,--no-as-needed -L\${libdir} ${2} ${3} -lmkl_core ${4} -lpthread sci-libs/mkl/mkl-10.0.2.018-r2.ebuild: Libs: -Wl,--no-as-needed -L\${libdir} ${2} ${3} -lmkl_core ${4} -lpthread sci-libs/mkl/mkl-10.0.2.018-r2.ebuild: Libs: -Wl,--no-as-needed -L\${libdir} ${2} ${3} -lmkl_core -lmkl_lapack ${4} -lpthread sci-libs/mkl/mkl-10.0.5.025.ebuild: Libs: -Wl,--no-as-needed -L\${libdir} ${2} ${3} -lmkl_core ${4} -lpthread sci-libs/mkl/mkl-10.0.5.025.ebuild: Libs: -Wl,--no-as-needed -L\${libdir} ${2} ${3} -lmkl_core ${4} -lpthread sci-libs/mkl/mkl-10.0.5.025.ebuild: Libs: -Wl,--no-as-needed -L\${libdir} ${2} ${3} -lmkl_core -lmkl_lapack ${4} -lpthread sys-devel/libtool/libtool-2.2.6a.ebuild: append-ldflags -Wl,--no-as-needed sys-libs/gwenhywfar/gwenhywfar-3.7.2.ebuild:append-ldflags -Wl,--no-as-needed sys-libs/gwenhywfar/gwenhywfar-3.8.0.ebuild:append-ldflags -Wl,--no-as-needed x11-wm/matchbox/matchbox-0.7.1.ebuild: append-ldflags -Wl,--no-as-needed