summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2021-11-18 01:06:04 +0000
committerSam James <sam@gentoo.org>2021-11-19 03:02:42 +0000
commit06610095bb404e85cbfcac2d8dda452f7b4a3f37 (patch)
tree9f9c28667ab92667718d7b9a14d9cec1bcf07d47 /sys-libs
parentsys-libs/musl: additional ROOT fixes for ldconfig (diff)
downloadgentoo-06610095bb404e85cbfcac2d8dda452f7b4a3f37.tar.gz
gentoo-06610095bb404e85cbfcac2d8dda452f7b4a3f37.tar.bz2
gentoo-06610095bb404e85cbfcac2d8dda452f7b4a3f37.zip
sys-libs/musl: use ebuild-like Bash style in ldconfig
Signed-off-by: Sam James <sam@gentoo.org> Closes: https://github.com/gentoo/gentoo/pull/22984 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'sys-libs')
-rw-r--r--sys-libs/musl/files/ldconfig.in-r190
-rw-r--r--sys-libs/musl/musl-9999.ebuild2
2 files changed, 46 insertions, 46 deletions
diff --git a/sys-libs/musl/files/ldconfig.in-r1 b/sys-libs/musl/files/ldconfig.in-r1
index 14aa7c3466b8..1b565baf9eed 100644
--- a/sys-libs/musl/files/ldconfig.in-r1
+++ b/sys-libs/musl/files/ldconfig.in-r1
@@ -17,38 +17,38 @@ get_options() {
VERBOSE=1
;;
r)
- ROOT=$OPTARG
- LDSO_CONF=$ROOT$LDSO_CONF
- LDSO_CONF_DIR=$(dirname $LDSO_CONF)
+ ROOT=${OPTARG}
+ LDSO_CONF=${ROOT}${LDSO_CONF}
+ LDSO_CONF_DIR=$(dirname ${LDSO_CONF})
;;
f)
- LDSO_CONF=$OPTARG
+ LDSO_CONF=${OPTARG}
;;
X)
UPDATE_LINKS=0
;;
\?)
- echo "Invalid option: -$opt" >&2
+ echo "Invalid option: -${opt}" >&2
exit 1
;;
n|N|C|p)
- echo "Unimplemented option: -$opt" >&2
+ echo "Unimplemented option: -${opt}" >&2
exit 1
;;
esac
done
- if [[ $UPDATE_LINKS == 1 ]]; then
+ if [[ ${UPDATE_LINKS} == 1 ]]; then
echo "Updating links is not implemented."
fi
}
repeated() {
- local l=$1
+ local l=${1}
local drs="${@:2}"
- for m in $drs; do
- [[ $m == $l ]] && return 0
+ for m in ${drs}; do
+ [[ ${m} == ${l} ]] && return 0
done
return 1
}
@@ -56,24 +56,24 @@ repeated() {
expand() {
# We are assuming the ld.so.conf's 'include' is not recursive
local f line l
- local glob="$LDSO_CONF_DIR/$1"
+ local glob="${LDSO_CONF_DIR}/${1}"
local drs="${@:2} "
- for f in $glob; do
- [[ ! -f $f ]] && continue
+ for f in ${glob}; do
+ [[ ! -f ${f} ]] && continue
while read line; do
line=${line%%#*}
line=${line//:/ }
line=${line//,/ }
- for l in $line; do
- #We must add this whether or not the directory exists
- repeated $l $drs && continue
- drs+=" $l "
+ for l in ${line}; do
+ # We must add this whether or not the directory exists
+ repeated ${l} ${drs} && continue
+ drs+=" ${l} "
done
- done < $f
+ done < ${f}
done
- echo $drs
+ echo ${drs}
}
read_ldso_conf() {
@@ -88,60 +88,60 @@ read_ldso_conf() {
line=${line//,/ } # Change comma delimiter to space
next=0
- for l in $line; do
- if [[ $next == 1 ]]; then
+ for l in ${line}; do
+ if [[ ${next} == 1 ]]; then
next=0
- drs=$(expand $l $drs)
- elif [[ $l == "include" ]]; then
+ drs=$(expand ${l} ${drs})
+ elif [[ ${l} == "include" ]]; then
next=1
else
# glibc's ldconfig silently skips non directories
- if [[ -d $l ]]; then
- repeated $l $drs && continue
- drs+=" $l "
+ if [[ -d ${l} ]]; then
+ repeated ${l} ${drs} && continue
+ drs+=" ${l} "
fi
fi
done
- done < $1
+ done < ${1}
- echo $drs
+ echo ${drs}
}
sanitize() {
local drs=$@
- repeated "/lib" $drs || drs="/lib $drs"
- repeated "/usr/lib" $drs || drs="/usr/lib $drs"
+ repeated "/lib" ${drs} || drs="/lib ${drs}"
+ repeated "/usr/lib" ${drs} || drs="/usr/lib ${drs}"
- echo $drs
+ echo ${drs}
}
get_options "$@"
-if [[ ! -e $LDSO_CONF ]]; then
- echo "$LDSO_CONF not found" >&2
+if [[ ! -e ${LDSO_CONF} ]]; then
+ echo "${LDSO_CONF} not found" >&2
exit 1
fi
-LDSO_CONF_DIR=$(dirname $LDSO_CONF)
+LDSO_CONF_DIR=$(dirname ${LDSO_CONF})
-drs=$(read_ldso_conf "$LDSO_CONF")
-drs=$(sanitize $drs)
+drs=$(read_ldso_conf "${LDSO_CONF}")
+drs=$(sanitize ${drs})
ARCH=@@ARCH@@
-LDSO_PATH="$ROOT/lib/ld-musl-${ARCH}.so.1"
-if [[ ! -e $LDSO_PATH ]]; then
- echo "$LDSO_PATH not found" >&2
+LDSO_PATH="${ROOT}/lib/ld-musl-${ARCH}.so.1"
+if [[ ! -e ${LDSO_PATH} ]]; then
+ echo "${LDSO_PATH} not found" >&2
exit 1
fi
-LDSO_ARCH=$(basename $LDSO_PATH)
+LDSO_ARCH=$(basename ${LDSO_PATH})
LDSO_NAME=${LDSO_ARCH%.so.1}
-ETC_LDSO_PATH="$ROOT/etc/${LDSO_NAME}.path"
+ETC_LDSO_PATH="${ROOT}/etc/${LDSO_NAME}.path"
X=$(mktemp -p /tmp ${LDSO_NAME}.XXXXXX)
-for d in $drs; do
- echo $d >> $X
+for d in ${drs}; do
+ echo ${d} >> ${X}
done
-chmod 644 $X
-mv $X $ETC_LDSO_PATH
+chmod 644 ${X}
+mv ${X} ${ETC_LDSO_PATH}
diff --git a/sys-libs/musl/musl-9999.ebuild b/sys-libs/musl/musl-9999.ebuild
index 0d528e720587..6a5e2688dd5a 100644
--- a/sys-libs/musl/musl-9999.ebuild
+++ b/sys-libs/musl/musl-9999.ebuild
@@ -137,7 +137,7 @@ src_install() {
[[ -e "${ED}"/lib/ld-musl-${arch}.so.1 ]] || die
fi
- cp "${FILESDIR}"/ldconfig.in "${T}"/ldconfig.in || die
+ cp "${FILESDIR}"/ldconfig.in-r1 "${T}"/ldconfig.in || die
sed -e "s|@@ARCH@@|${arch}|" "${T}"/ldconfig.in > "${T}"/ldconfig || die
into /
dosbin "${T}"/ldconfig