diff options
author | Bruno Haible <bruno@clisp.org> | 2009-01-17 09:46:08 +0100 |
---|---|---|
committer | Bruno Haible <bruno@clisp.org> | 2009-01-17 09:46:08 +0100 |
commit | b8462c05181331456c9136877d2539b4f43a01cb (patch) | |
tree | a122a2af1f1c16865ea8be3164a75f7869410418 /build-aux/install-reloc | |
parent | 165dbf16133deaaa2ce85a9284d49a14181e299a (diff) | |
download | gnulib-b8462c05181331456c9136877d2539b4f43a01cb.tar.gz |
Support for stripping executables in --enable-relocatable.
Diffstat (limited to 'build-aux/install-reloc')
-rwxr-xr-x | build-aux/install-reloc | 29 |
1 files changed, 21 insertions, 8 deletions
diff --git a/build-aux/install-reloc b/build-aux/install-reloc index 81aff878ca..4d02cc1373 100755 --- a/build-aux/install-reloc +++ b/build-aux/install-reloc @@ -18,7 +18,8 @@ # Usage: # install-reloc library_path_var library_path_value prefix destdir \ -# compile_command srcdir config_h_dir exeext \ +# compile_command srcdir builddir config_h_dir exeext \ +# strip_command \ # install_command... destprog # where # - library_path_var is the platform dependent runtime library path variable @@ -34,7 +35,9 @@ # alloca.h and stdbool.h) # - config_h_dir is the directory where to find config.h # - exeext is platform dependent suffix of executables -# - install-command is the install command line, excluding the final destprog +# - strip_command is the command for stripping executables, or : if no +# stripping is desired +# - install_command is the install command line, excluding the final destprog # - destprog is the destination program name # install-reloc renames destprog to destprog.bin and installs a relocating # wrapper in the place of destprog. @@ -52,33 +55,37 @@ if test $# -eq 2; then builddir=$RELOC_BUILDDIR config_h_dir=$RELOC_CONFIG_H_DIR exeext=$RELOC_EXEEXT + strip_prog=$RELOC_STRIP_PROG install_prog=$RELOC_INSTALL_PROG # including the "-c" option else - if test $# -ge 10; then + if test $# -ge 11; then # Get fixed position arguments. library_path_var=$1 library_path_value=$2 prefix=$3 destdir=$4 - compile_command=$5 - srcdir=$6 - builddir=$7 - config_h_dir=$8 - exeext=$9 shift shift shift shift + compile_command=$1 + srcdir=$2 + builddir=$3 + config_h_dir=$4 + exeext=$5 shift shift shift shift shift + strip_prog=$1 + shift install_prog=$1 # maybe not including the "-c" option shift else echo "Usage: $0 library_path_var library_path_value prefix destdir" \ "compile_command srcdir builddir config_h_dir exeext" \ + "strip_command" \ "install_command... destprog" 1>&2 exit 1 fi @@ -107,6 +114,9 @@ func_verbose () # Run install_command. func_verbose $install_prog "$@" || exit $? +# Run strip_command. +test "$strip_prog" = ':' || func_verbose "$strip_prog" "$destprog$exeext" || exit $? + # If the platform doesn't support LD_LIBRARY_PATH or similar, we cannot build # a wrapper. test -n "$library_path_var" || exit 0 @@ -173,6 +183,9 @@ test $rc = 0 || exit $? rm -rf "$destprog.wrapper$exeext.dSYM" test $rc = 0 || exit $? +# Strip wrapper. +test "$strip_prog" = ':' || func_verbose "$strip_prog" "$destprog.wrapper$exeext" || exit $? + # Rename $destprog.wrapper -> $destprog -> $destprog.bin. ln -f "$destprog$exeext" "$destprog.bin$exeext" \ || { rm -f "$destprog.bin$exeext" \ |