I wonder about the CONF_LIBDIR variable and the implementation of the
dolib* commands in Portage. These commands normally use the ABI and LIBDIR_${ABI} variables from the profile to determine the library
directory (e.g. "lib" or "lib64").
However, if either ABI or LIBDIR_${ABI} happens to be unset, there is a two-stage fallback in place, first to the value of CONF_LIBDIR, then to
literal "lib" [1]:
LIBDIR_VAR="LIBDIR_${ABI}"
if [[ -n ${ABI} && -n ${!LIBDIR_VAR} ]] ; then
CONF_LIBDIR=${!LIBDIR_VAR}
fi
CONF_LIBDIR=${CONF_LIBDIR:-lib}
AFAICS the CONF_LIBDIR variable had been introduced in the 2004.3
profile [2], but was replaced already in 2005 by the present
LIBDIR_${ABI} mechanism [3]. CONF_LIBDIR hasn't been assigned in
profiles ever since.
Presently there are some relics of CONF_LIBDIR in Portage's dolib* (see
above) , but it is not used in its econf or get_libdir functions.
Pkgcore doesn't use CONF_LIBDIR at all. PMS defines dolib in yet another
way [4] with an additional CONF_LIBDIR_OVERRIDE variable, which isn't implemented in either of the two package managers.
Clearly this situation is not ideal, because a) dolib* and get_libdir
are not consistent with each other, and b) PMS, Portage, and Pkgcore
don't agree with each other.
Before we decide on possible ways to proceed with the issue, I want to
ask whether anyone still relies on CONF_LIBDIR for any purpose?
There is also bug 267159 [5] with some more details.
Ulrich
[1]
https://gitweb.gentoo.org/proj/portage.git/tree/bin/ebuild-helpers/dolib?h=portage-3.0.47#n25
[2]
https://gitweb.gentoo.org/archive/repo/gentoo-2.git/commit/?id=1482b856ad2a301c8eb2245a7c7265350af2691d
[3]
https://gitweb.gentoo.org/archive/repo/gentoo-2.git/commit/?id=054e484d8717a18622615e019e7cd62495365192
[4]
https://projects.gentoo.org/pms/8/pms.html#x1-129001r3
[5]
https://bugs.gentoo.org/267159
-----BEGIN PGP SIGNATURE-----
iQFDBAEBCAAtFiEEtDnZ1O9xIP68rzDbUYgzUIhBXi4FAmRStW0PHHVsbUBnZW50 b28ub3JnAAoJEFGIM1CIQV4uahYIALaIGbwMSAJ+CF0kv2ykQMQJ6rGYVID4GxJc 9FeDtDxkV11HXIhYLWVq/kl0t9WC/Mob/h+GYGgZpNCYXwHh0WN+LLvPZAXdnxA7 udaSHQ71O1+m4+kkPns4EGTJlXWs7795g0XJIE4FOFYJGL4M6rEV4PH1QMQW/4a9 rA6qgbNmoIbWvF/oXaflEN/KwmvYasUEVxXCalh1NHiU5Xyd7O5Q0GJ9/7ajG+VJ 4/736XlEDHflXB7SkzWNcuHV1Kfj9RX8NPUyhKJgmg3jsY8tg721aAUx4gqENPTF PPF8UdaYPwF/8ozSgdd7+Hiyzu1tLpntpO7x2kVE08DrGpBi1aA=
=PIsC
-----END PGP SIGNATURE-----
--- SoupGate-Win32 v1.05
* Origin: fsxNet Usenet Gateway (21:1/5)