commit:     983850f43b4354be3890f00556f884111ade5874
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Mon Jul 15 17:16:13 2019 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Thu Jul 18 15:13:14 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=983850f4

usr-ldscript.eclass: avoid duplicate slashes in file paths

Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 eclass/usr-ldscript.eclass | 32 ++++++++++++++++----------------
 1 file changed, 16 insertions(+), 16 deletions(-)

diff --git a/eclass/usr-ldscript.eclass b/eclass/usr-ldscript.eclass
index 4d503e7d6db..7e406267b64 100644
--- a/eclass/usr-ldscript.eclass
+++ b/eclass/usr-ldscript.eclass
@@ -84,27 +84,27 @@ gen_usr_ldscript() {
                        # Ensure /lib/${lib} exists to avoid dangling 
scripts/symlinks.
                        # This especially is for AIX where $(get_libname) can 
return ".a",
                        # so /lib/${lib} might be moved to /usr/lib/${lib} (by 
accident).
-                       [[ -r ${ED}/${libdir}/${lib} ]] || continue
+                       [[ -r ${ED%/}/${libdir}/${lib} ]] || continue
                        #TODO: better die here?
                fi
 
                case ${CTARGET:-${CHOST}} in
                *-darwin*)
                        if ${auto} ; then
-                               tlib=$(scanmacho -qF'%S#F' 
"${ED}"/usr/${libdir}/${lib})
+                               tlib=$(scanmacho -qF'%S#F' 
"${ED%/}"/usr/${libdir}/${lib})
                        else
-                               tlib=$(scanmacho -qF'%S#F' 
"${ED}"/${libdir}/${lib})
+                               tlib=$(scanmacho -qF'%S#F' 
"${ED%/}"/${libdir}/${lib})
                        fi
                        [[ -z ${tlib} ]] && die "unable to read install_name 
from ${lib}"
                        tlib=${tlib##*/}
 
                        if ${auto} ; then
-                               mv 
"${ED}"/usr/${libdir}/${lib%${suffix}}.*${suffix#.} "${ED}"/${libdir}/ || die
+                               mv 
"${ED%/}"/usr/${libdir}/${lib%${suffix}}.*${suffix#.} "${ED%/}"/${libdir}/ || 
die
                                # some install_names are funky: they encode a 
version
                                if [[ ${tlib} != ${lib%${suffix}}.*${suffix#.} 
]] ; then
-                                       mv 
"${ED}"/usr/${libdir}/${tlib%${suffix}}.*${suffix#.} "${ED}"/${libdir}/ || die
+                                       mv 
"${ED%/}"/usr/${libdir}/${tlib%${suffix}}.*${suffix#.} "${ED%/}"/${libdir}/ || 
die
                                fi
-                               rm -f "${ED}"/${libdir}/${lib}
+                               rm -f "${ED%/}"/${libdir}/${lib}
                        fi
 
                        # Mach-O files have an id, which is like a soname, it 
tells how
@@ -114,34 +114,34 @@ gen_usr_ldscript() {
                        # libdir=/lib because that messes up libtool files.
                        # Make sure we don't lose the specific version, so just 
modify the
                        # existing install_name
-                       if [[ ! -w "${ED}/${libdir}/${tlib}" ]] ; then
-                               chmod u+w "${ED}${libdir}/${tlib}" # needed to 
write to it
+                       if [[ ! -w "${ED%/}/${libdir}/${tlib}" ]] ; then
+                               chmod u+w "${ED%/}/${libdir}/${tlib}" # needed 
to write to it
                                local nowrite=yes
                        fi
                        install_name_tool \
                                -id "${EPREFIX}"/${libdir}/${tlib} \
-                               "${ED}"/${libdir}/${tlib} || die 
"install_name_tool failed"
-                       [[ -n ${nowrite} ]] && chmod u-w 
"${ED}${libdir}/${tlib}"
+                               "${ED%/}"/${libdir}/${tlib} || die 
"install_name_tool failed"
+                       [[ -n ${nowrite} ]] && chmod u-w 
"${ED%/}/${libdir}/${tlib}"
                        # Now as we don't use GNU binutils and our linker 
doesn't
                        # understand linker scripts, just create a symlink.
-                       pushd "${ED}/usr/${libdir}" > /dev/null
+                       pushd "${ED%/}/usr/${libdir}" > /dev/null
                        ln -snf "../../${libdir}/${tlib}" "${lib}"
                        popd > /dev/null
                        ;;
                *)
                        if ${auto} ; then
-                               tlib=$(scanelf -qF'%S#F' 
"${ED}"/usr/${libdir}/${lib})
+                               tlib=$(scanelf -qF'%S#F' 
"${ED%/}"/usr/${libdir}/${lib})
                                [[ -z ${tlib} ]] && die "unable to read SONAME 
from ${lib}"
-                               mv "${ED}"/usr/${libdir}/${lib}* 
"${ED}"/${libdir}/ || die
+                               mv "${ED%/}"/usr/${libdir}/${lib}* 
"${ED%/}"/${libdir}/ || die
                                # some SONAMEs are funky: they encode a version 
before the .so
                                if [[ ${tlib} != ${lib}* ]] ; then
-                                       mv "${ED}"/usr/${libdir}/${tlib}* 
"${ED}"/${libdir}/ || die
+                                       mv "${ED%/}"/usr/${libdir}/${tlib}* 
"${ED%/}"/${libdir}/ || die
                                fi
-                               rm -f "${ED}"/${libdir}/${lib}
+                               rm -f "${ED%/}"/${libdir}/${lib}
                        else
                                tlib=${lib}
                        fi
-                       cat > "${ED}/usr/${libdir}/${lib}" <<-END_LDSCRIPT
+                       cat > "${ED%/}/usr/${libdir}/${lib}" <<-END_LDSCRIPT
                        /* GNU ld script
                           Since Gentoo has critical dynamic libraries in /lib, 
and the static versions
                           in /usr/lib, we need to have a "fake" dynamic lib in 
/usr/lib, otherwise we

Reply via email to