diff options
author | Jo-Philipp Wich <jow@openwrt.org> | 2013-01-28 15:54:27 +0000 |
---|---|---|
committer | Jo-Philipp Wich <jow@openwrt.org> | 2013-01-28 15:54:27 +0000 |
commit | 509f39a10a4295c85d2a6f63573bb0698a067241 (patch) | |
tree | 28a8faf8c9a3e508a91a4a6c2e56c86acda8fc5c /scripts/bundle-libraries.sh | |
parent | 839f3ab0e72df77d6264349801cd7f512b567fe5 (diff) | |
download | upstream-509f39a10a4295c85d2a6f63573bb0698a067241.tar.gz upstream-509f39a10a4295c85d2a6f63573bb0698a067241.tar.bz2 upstream-509f39a10a4295c85d2a6f63573bb0698a067241.zip |
scripts: bundle-libraries.sh: support mixing 32bit and 64bit binaries
SVN-Revision: 35349
Diffstat (limited to 'scripts/bundle-libraries.sh')
-rwxr-xr-x | scripts/bundle-libraries.sh | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/scripts/bundle-libraries.sh b/scripts/bundle-libraries.sh index 08b52b9906..869286bdba 100755 --- a/scripts/bundle-libraries.sh +++ b/scripts/bundle-libraries.sh @@ -1,9 +1,8 @@ #!/usr/bin/env bash # # Script to install host system binaries along with required libraries. -# Refer to the --help output for more information. # -# Copyright (C) 2012 Jo-Philipp Wich <jow@openwrt.org> +# Copyright (C) 2012-2013 Jo-Philipp Wich <jow@openwrt.org> # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -90,17 +89,19 @@ for BIN in "$@"; do if [ -n "$LDSO" ]; then _cp "$BIN" "$DIR/bundled/${BIN##*/}" - [ -x "$DIR/bundled/run.sh" ] || { - cat <<-EOF > "$DIR/bundled/run.sh" + RUN="${LDSO#ld-}"; RUN="run-${RUN%%.so*}.sh" + + [ -x "$DIR/bundled/$RUN" ] || { + cat <<-EOF > "$DIR/bundled/$RUN" #!/usr/bin/env bash dir="\$(dirname "\$0")" bin="\$(basename "\$0")" exec -a "\$0" "\$dir/bundled/lib/$LDSO" --library-path "\$dir/bundled/lib" "\$dir/bundled/\$bin" "\$@" EOF - chmod ${VERBOSE:+-v} 0755 "$DIR/bundled/run.sh" + chmod ${VERBOSE:+-v} 0755 "$DIR/bundled/$RUN" } - _ln "./bundled/run.sh" "$DIR/${BIN##*/}" + _ln "./bundled/$RUN" "$DIR/${BIN##*/}" # is a static executable or non-elf binary else |