Gentoo Archives: gentoo-dev

From: Samuli Suominen <ssuominen@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] RFC: LD_AS_NEEDED="1" in profiles/targets/developer/make.defaults?
Date: Sun, 04 Oct 2009 10:13:12
Message-Id: 4AC8754A.60408@gentoo.org
In Reply to: Re: [gentoo-dev] RFC: LD_AS_NEEDED="1" in profiles/targets/developer/make.defaults? by Fabian Groffen
1 Fabian Groffen wrote:
2 >>> Perhaps we could add a new function to the flag-o-matic that does the
3 >>> CHOST check, and appends the flag, so the check code wouldn't have to be
4 >>> duplicated in ebuilds? It should be rather trivial.
5 >>
6 >> ok, chost check would be cheap. how about,
7 >> usage: append-ldflags $(no-as-needed)
8 >
9 > that would work fine for me, and all possible future cases I can think
10 > of
11
12 +# @FUNCTION: no-as-needed
13 +# @RETURN: Flag to disable asneeded behavior for use with append-ldflags.
14 +no-as-needed() {
15 + case $($(tc-getLD) -v 2>&1 </dev/null) in
16 + *GNU*) # GNU ld
17 + echo "-Wl,--no-as-needed" ;;
18 + esac
19 +}
20
21 It's committed.
22
23 To avoid the already caused trouble for you (prefix), these should be
24 converted:
25
26 (It's a ugly grep -r from gentoo-x86. I will handle this also in a QA
27 bug, opening one later today.)
28
29 app-admin/apache-tools/apache-tools-2.2.11.ebuild: # Instead of
30 filtering --as-needed (bug #128505), append --no-as-needed
31 app-admin/apache-tools/apache-tools-2.2.11.ebuild: append-ldflags
32 -Wl,--no-as-needed
33 app-admin/apache-tools/apache-tools-2.2.13.ebuild: # Instead of
34 filtering --as-needed (bug #128505), append --no-as-needed
35 app-admin/apache-tools/apache-tools-2.2.13.ebuild: append-ldflags
36 -Wl,--no-as-needed
37 app-admin/apache-tools/apache-tools-2.2.12.ebuild: # Instead of
38 filtering --as-needed (bug #128505), append --no-as-needed
39 app-admin/apache-tools/apache-tools-2.2.12.ebuild: append-ldflags
40 -Wl,--no-as-needed
41 app-editors/mlview/mlview-0.8-r1.ebuild: append-ldflags
42 -Wl,--no-as-needed
43 dev-games/ogre/files/ogre-1.4.9-as-needed.patch:+ ,-Xlinker
44 --no-as-needed -lstdc++)
45 dev-lang/gdl/gdl-0.9_rc2.ebuild: use imagemagick &&
46 append-ldflags -Wl,--no-as-needed
47 dev-libs/yaz++/yaz++-1.1.0.ebuild: append-ldflags
48 -Wl,--no-as-needed # FIXME.
49 dev-libs/dvmysql/dvmysql-1.0.2.ebuild: append-ldflags -Wl,--no-as-needed
50 dev-libs/dvutil/dvutil-0.15.5.ebuild: append-ldflags -Wl,--no-as-needed
51 dev-libs/dvutil/dvutil-1.0.5.ebuild: append-ldflags -Wl,--no-as-needed
52 dev-lisp/sbcl/sbcl-1.0.19.ebuild: append-ldflags
53 -Wl,--no-as-needed # see Bug #132992
54 dev-lisp/sbcl/sbcl-1.0.31.ebuild: append-ldflags
55 -Wl,--no-as-needed # see Bug #132992
56 dev-lisp/sbcl/sbcl-1.0.27-r10.ebuild: append-ldflags
57 -Wl,--no-as-needed # see Bug #132992
58 dev-lisp/sbcl/sbcl-1.0.26-r10.ebuild: append-ldflags
59 -Wl,--no-as-needed # see Bug #132992
60 dev-lisp/sbcl/sbcl-1.0.28.ebuild: append-ldflags
61 -Wl,--no-as-needed # see Bug #132992
62 eclass/apache-2.eclass: # Instead of filtering --as-needed (bug
63 #128505), append --no-as-needed
64 eclass/apache-2.eclass: append-ldflags -Wl,--no-as-needed
65 media-libs/SoQt/SoQt-1.4.1.ebuild: append-ldflags -Wl,--no-as-needed
66 media-sound/pulseaudio/pulseaudio-0.9.15-r2.ebuild: append-ldflags
67 -Wl,--no-as-needed
68 media-sound/pulseaudio/pulseaudio-0.9.18-r50.ebuild: append-ldflags
69 -Wl,--no-as-needed
70 media-sound/pulseaudio/pulseaudio-0.9.19.ebuild: append-ldflags
71 -Wl,--no-as-needed
72 media-sound/pulseaudio/pulseaudio-0.9.19-r50.ebuild: append-ldflags
73 -Wl,--no-as-needed
74 media-sound/pulseaudio/pulseaudio-0.9.18.ebuild: append-ldflags
75 -Wl,--no-as-needed
76 net-firewall/ebtables/ebtables-2.0.9.1.ebuild: append-ldflags
77 -Wl,--no-as-needed
78 net-firewall/ebtables/ebtables-2.0.8.2-r2.ebuild: append-ldflags
79 -Wl,--no-as-needed
80 net-libs/rb_libtorrent/rb_libtorrent-0.13-r1.ebuild: append-ldflags
81 -Wl,--no-as-needed
82 net-mail/email/email-3.0.5.ebuild: append-ldflags -Wl,--no-as-needed
83 sci-libs/mkl/mkl-10.0.2.018-r2.ebuild: Libs: -Wl,--no-as-needed
84 -L\${libdir} ${2} ${3} -lmkl_core ${4} -lpthread
85 sci-libs/mkl/mkl-10.0.2.018-r2.ebuild: Libs: -Wl,--no-as-needed
86 -L\${libdir} ${2} ${3} -lmkl_core ${4} -lpthread
87 sci-libs/mkl/mkl-10.0.2.018-r2.ebuild: Libs: -Wl,--no-as-needed
88 -L\${libdir} ${2} ${3} -lmkl_core -lmkl_lapack ${4} -lpthread
89 sci-libs/mkl/mkl-10.0.5.025.ebuild: Libs: -Wl,--no-as-needed
90 -L\${libdir} ${2} ${3} -lmkl_core ${4} -lpthread
91 sci-libs/mkl/mkl-10.0.5.025.ebuild: Libs: -Wl,--no-as-needed
92 -L\${libdir} ${2} ${3} -lmkl_core ${4} -lpthread
93 sci-libs/mkl/mkl-10.0.5.025.ebuild: Libs: -Wl,--no-as-needed
94 -L\${libdir} ${2} ${3} -lmkl_core -lmkl_lapack ${4} -lpthread
95 sys-devel/libtool/libtool-2.2.6a.ebuild: append-ldflags
96 -Wl,--no-as-needed
97 sys-libs/gwenhywfar/gwenhywfar-3.7.2.ebuild:append-ldflags
98 -Wl,--no-as-needed
99 sys-libs/gwenhywfar/gwenhywfar-3.8.0.ebuild:append-ldflags
100 -Wl,--no-as-needed
101 x11-wm/matchbox/matchbox-0.7.1.ebuild: append-ldflags -Wl,--no-as-needed

Replies