commit:     71d449ab84cacc518b6a11c891feed86367c8244
Author:     Michael Orlitzky <mjo <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 22 01:47:16 2016 +0000
Commit:     Michael Orlitzky <mjo <AT> gentoo <DOT> org>
CommitDate: Fri Jan 22 01:47:16 2016 +0000
URL:        https://gitweb.gentoo.org/proj/eselect-php.git/commit/?id=71d449ab

Replace get_libdirs() and get_active_libdir() with autotools magic.

The get_libdirs() function is a heuristic to determine which libdirs
are available on the system. The get_active_libdir() function then
chose the first one as the "active" libdir. In a few places we either
chose the "active" libdir, or looped through all of them to find some
other thing of interest (like the valid targets).

Now that we compute @libdir@ at build time, we can replace all of that
with the one correct value of @libdir@. The functions get_libdirs()
and get_active_libdir() are removed entirely.

 src/php.eselect.in.in | 47 +++++++++++++----------------------------------
 1 file changed, 13 insertions(+), 34 deletions(-)

diff --git a/src/php.eselect.in.in b/src/php.eselect.in.in
index 689b1db..0c83de7 100644
--- a/src/php.eselect.in.in
+++ b/src/php.eselect.in.in
@@ -88,7 +88,7 @@ sapi_active_link_target_dir() {
        local sapi="${1}"
        local target="${2}"
 
-       local link_target_dir="${EROOT}$(get_active_libdir)/${target}/bin"
+       local link_target_dir="@libdir@/${target}/bin"
        if [[ "${sapi}" == "apache2" ]] ; then
                link_target_dir+="/../apache2"
        fi
@@ -116,7 +116,7 @@ sapi_active_link_dir() {
        local sapi="${1}"
 
        case "${sapi}" in
-               apache2) echo "${EROOT}$(get_active_libdir)/apache2/modules" ;;
+               apache2) echo "@libdir@/apache2/modules" ;;
                cli)     echo "@bindir@" ;;
                fpm)     echo "@bindir@" ;;
                cgi)     echo "@bindir@" ;;
@@ -198,7 +198,7 @@ cleanup_sapi() {
        fi
 
        if [[ "${sapi}" == "apache2" ]] ; then
-               rm -f 
"${EROOT}$(get_active_libdir)"/apache2/modules/libphp[57].so \
+               rm -f "@libdir@"/apache2/modules/libphp[57].so \
                   || die "failed to remove old libphp.so symlink"
        fi
 
@@ -214,35 +214,15 @@ update_sapi() {
        set_$sapi $target
 }
 
-get_libdirs() {
-       local dir libdirs
-       for dir in $(list_libdirs); do
-               [[ -L ${EROOT}/usr/${dir} ]] && continue
-               ls "${EROOT}"/usr/${dir}/php*.* > /dev/null 2>&1 || continue
-
-               libdirs+=' '/usr/${dir}
-       done
-       echo ${libdirs:-/usr/lib}
-}
+find_targets() {
+       local dirs
 
-get_active_libdir() {
-       local dir
-       for dir in $(get_libdirs); do
-               echo ${dir}
-               return
+       for dir in "@libdir@"/php*.*; do
+               t=$(basename $dir)
+               has $t $dirs || dirs="${dirs} $t"
        done
-       echo /usr/lib
-}
 
-find_targets() {
-       local dir dirs libdir
-       for libdir in $(get_libdirs); do
-               for dir in "${EROOT}"${libdir}/php*.*; do
-                       t=$(basename $dir)
-                       has $t $dirs || dirs="${dirs} $t"
-               done
-       done
-  echo $dirs
+       echo $dirs
 }
 
 # List all valid targets for the given SAPI. The list is obtained by
@@ -276,11 +256,10 @@ find_sapi_targets() {
        esac
 
        for target in $(find_targets); do
-               for libdir in $(get_libdirs); do
-                       local 
pattern="${EROOT}${libdir}/${target}/${pattern_suffix}"
-                       for file in $pattern; do
-                               [[ -f "${file}" ]] && echo "${target}"
-                       done
+               local pattern="@libdir@/${target}/${pattern_suffix}"
+
+               for file in $pattern; do
+                       [[ -f "${file}" ]] && echo "${target}"
                done
        done | @SORT@ | @UNIQ@
 }

Reply via email to