Fix copying libraries

This commit is contained in:
Daniel Winzen
2022-07-17 11:20:11 +02:00
parent e0bbda7182
commit cdc6feab4c

View File

@ -20,24 +20,12 @@ function CHROOT_BINARY() {
LDD_FILES="$(ldd $BINARY 2>&1 | grep -v 'not a dynamic executable' | grep 'ld-linux' | awk '{ print $1; }' || echo)" LDD_FILES="$(ldd $BINARY 2>&1 | grep -v 'not a dynamic executable' | grep 'ld-linux' | awk '{ print $1; }' || echo)"
if [ "$LIB_FILES" != "" ]; then if [ "$LIB_FILES" != "" ]; then
for LIB_FILE in $LIB_FILES; do for LIB_FILE in $LIB_FILES; do
LIB_DIRECTORY="$(dirname $LIB_FILE)" ADD_LIB $LIB_FILE
if [[ ! "${ALL_LIB_DIRECTORIES[@]}" =~ "$LIB_DIRECTORY" ]]; then
ALL_LIB_DIRECTORIES=(${ALL_LIB_DIRECTORIES[@]} "$LIB_DIRECTORY")
fi
if [[ ! "${ALL_LIB_FILES[@]}" =~ "$LIB_FILE" ]]; then
ALL_LIB_FILES=(${ALL_LIB_FILES[@]} "$LIB_FILE")
fi
done done
fi fi
if [ "$LDD_FILES" != "" ]; then if [ "$LDD_FILES" != "" ]; then
for LDD_FILE in $LDD_FILES; do for LDD_FILE in $LDD_FILES; do
LDD_DIRECTORY="$(dirname $LDD_FILE)" ADD_LIB $LDD_FILE
if [[ ! "${ALL_LIB_DIRECTORIES[@]}" =~ "$LDD_DIRECTORY" ]]; then
ALL_LIB_DIRECTORIES=(${ALL_LIB_DIRECTORIES[@]} "$LDD_DIRECTORY")
fi
if [[ ! "${ALL_LIB_FILES[@]}" =~ "$LDD_DIRECTORY" ]]; then
ALL_LIB_FILES=(${ALL_LIB_FILES[@]} "$LDD_FILE")
fi
done done
fi fi
BINARY_DIRECTORY="$(dirname $BINARY)" BINARY_DIRECTORY="$(dirname $BINARY)"
@ -46,6 +34,16 @@ function CHROOT_BINARY() {
chmod 0555 $CHROOT_DIRECTORY$BINARY chmod 0555 $CHROOT_DIRECTORY$BINARY
} }
function ADD_LIB() {
LIB_DIRECTORY="$(dirname $1)"
if [[ ! "${ALL_LIB_DIRECTORIES[@]}" =~ "$LIB_DIRECTORY" ]]; then
ALL_LIB_DIRECTORIES=(${ALL_LIB_DIRECTORIES[@]} "$LIB_DIRECTORY")
fi
if [[ ! "${ALL_LIB_FILES[@]}" =~ "$1" ]]; then
ALL_LIB_FILES=(${ALL_LIB_FILES[@]} "$1")
fi
}
function CHROOT_LIBRARIES() { function CHROOT_LIBRARIES() {
for DIRECTORY in ${ALL_LIB_DIRECTORIES[@]}; do for DIRECTORY in ${ALL_LIB_DIRECTORIES[@]}; do
mkdir -pm 0555 $CHROOT_DIRECTORY$DIRECTORY mkdir -pm 0555 $CHROOT_DIRECTORY$DIRECTORY
@ -324,12 +322,12 @@ for BINARY in `find /usr/lib/git-core -type f`; do
CHROOT_BINARY $BINARY CHROOT_BINARY $BINARY
done done
# networking # networking
for BINARY in /lib/*/libnss_*; do for LIB in /lib/*/libnss_*; do
CHROOT_BINARY $BINARY ADD_LIB $LIB
done done
# php # php
for BINARY in /usr/lib/php/*/*.so; do for LIB in /usr/lib/php/*/*.so; do
CHROOT_BINARY $BINARY ADD_LIB $LIB
done done
CHROOT_LIBRARIES CHROOT_LIBRARIES
ldconfig -r $CHROOT_DIRECTORY ldconfig -r $CHROOT_DIRECTORY