1 | # Copyright 1999-2004 Gentoo Foundation |
1 | # Copyright 1999-2004 Gentoo Foundation |
2 | # Distributed under the terms of the GNU General Public License v2 |
2 | # Distributed under the terms of the GNU General Public License v2 |
3 | # $Header: /var/cvsroot/gentoo-x86/eclass/eutils.eclass,v 1.96 2004/08/24 11:51:28 lv Exp $ |
3 | # $Header: /var/cvsroot/gentoo-x86/eclass/eutils.eclass,v 1.97 2004/08/31 09:05:24 lv Exp $ |
4 | # |
4 | # |
5 | # Author: Martin Schlemmer <azarah@gentoo.org> |
5 | # Author: Martin Schlemmer <azarah@gentoo.org> |
6 | # |
6 | # |
7 | # This eclass is for general purpose functions that most ebuilds |
7 | # This eclass is for general purpose functions that most ebuilds |
8 | # have to implement themselves. |
8 | # have to implement themselves. |
… | |
… | |
22 | # to assume all libraries will end up in lib. Replace any (sane) instances |
22 | # to assume all libraries will end up in lib. Replace any (sane) instances |
23 | # where lib is named directly with $(get_libdir) if possible. |
23 | # where lib is named directly with $(get_libdir) if possible. |
24 | # |
24 | # |
25 | # Travis Tilley <lv@gentoo.org> (24 Aug 2004) |
25 | # Travis Tilley <lv@gentoo.org> (24 Aug 2004) |
26 | get_libdir() { |
26 | get_libdir() { |
27 | # CONF_LIBDIR wasnt supported until 2.0.51_pre18, so for all versions of |
27 | if [ ! -z "${CONF_LIBDIR_OVERRIDE}" ] ; then |
28 | # portage prior to that lib would need to be used even if CONF_LIBDIR is |
28 | # if there is an override, we want to use that... always. |
29 | # set. dolib and friends will ignore CONF_LIBDIR in <2.0.51_pre20 |
29 | CONF_LIBDIR="${CONF_LIBDIR_OVERRIDE}" |
30 | portageq has_version / '<sys-apps/portage-2.0.51_pre20' && CONF_LIBDIR="lib" |
30 | elif portageq has_version / '<sys-apps/portage-2.0.51_pre20' ; then |
|
|
31 | # and if there isnt an override, and we're using a version of |
|
|
32 | # portage without CONF_LIBDIR support, force the use of lib. dolib |
|
|
33 | # and friends from portage 2.0.50 wont be too happy otherwise. |
|
|
34 | CONF_LIBDIR="lib" |
|
|
35 | fi |
31 | # and of course, we need to default to lib when CONF_LIBDIR isnt set |
36 | # and of course, default to lib if CONF_LIBDIR isnt set |
32 | echo ${CONF_LIBDIR:=lib} |
37 | echo ${CONF_LIBDIR:=lib} |
|
|
38 | } |
|
|
39 | |
|
|
40 | # Sometimes you need to override the value returned by get_libdir. A good |
|
|
41 | # example of this is xorg-x11, where lib32 isnt a supported configuration, |
|
|
42 | # and where lib64 -must- be used on amd64 (for applications that need lib |
|
|
43 | # to be 32bit, such as adobe acrobat). Note that this override also bypasses |
|
|
44 | # portage version sanity checking. |
|
|
45 | # get_libdir_override expects one argument, the result get_libdir should |
|
|
46 | # return: |
|
|
47 | # |
|
|
48 | # get_libdir_override lib64 |
|
|
49 | # |
|
|
50 | # Travis Tilley <lv@gentoo.org> (31 Aug 2004) |
|
|
51 | get_libdir_override() { |
|
|
52 | CONF_LIBDIR="$1" |
|
|
53 | CONF_LIBDIR_OVERRIDE="$1" |
33 | } |
54 | } |
34 | |
55 | |
35 | # This function generate linker scripts in /usr/lib for dynamic |
56 | # This function generate linker scripts in /usr/lib for dynamic |
36 | # libs in /lib. This is to fix linking problems when you have |
57 | # libs in /lib. This is to fix linking problems when you have |
37 | # the .so in /lib, and the .a in /usr/lib. What happens is that |
58 | # the .so in /lib, and the .a in /usr/lib. What happens is that |