configure: strip debug symbols on install by default

This commit is contained in:
Matthew Flatt 2013-04-18 10:25:45 -06:00
parent 7a33712603
commit d44ed9ab53
4 changed files with 142 additions and 8 deletions

126
src/configure vendored
View File

@ -672,6 +672,7 @@ EXEEXT
OBJEXT OBJEXT
CPP CPP
RANLIB RANLIB
STRIP
GREP GREP
EGREP EGREP
PREFLAGS PREFLAGS
@ -1368,6 +1369,7 @@ Optional Features:
--enable-bigendian assume "big" if endianness cannot be determined --enable-bigendian assume "big" if endianness cannot be determined
--enable-gprof compile for profiling with gprof (gcc only) --enable-gprof compile for profiling with gprof (gcc only)
--enable-gcov compile to gather gcov statistics (gcc3 only) --enable-gcov compile to gather gcov statistics (gcc3 only)
--enable-strip strip debug on install (usually enabled by default)
--enable-noopt drop -O C flags (useful for low-level debugging) --enable-noopt drop -O C flags (useful for low-level debugging)
Some influential environment variables: Some influential environment variables:
@ -2154,6 +2156,11 @@ if test "${enable_gcov+set}" = set; then
fi fi
# Check whether --enable-noopt was given.
if test "${enable_noopt+set}" = set; then
enableval=$enable_noopt;
fi
# Check whether --enable-noopt was given. # Check whether --enable-noopt was given.
if test "${enable_noopt+set}" = set; then if test "${enable_noopt+set}" = set; then
enableval=$enable_noopt; enableval=$enable_noopt;
@ -2376,6 +2383,8 @@ show_explicitly_enabled "${enable_gprof}" "gprof"
show_explicitly_enabled "${enable_gcov}" "gcov" show_explicitly_enabled "${enable_gcov}" "gcov"
show_explicitly_enabled "${enable_noopt}" "No-optimization" "Note that this mode is intended only for debugging purposes" show_explicitly_enabled "${enable_noopt}" "No-optimization" "Note that this mode is intended only for debugging purposes"
show_explicitly_enabled "${enable_strip}" "Debug-symbol stripping"
show_explicitly_disabled "${enable_strip}" "Debug-symbol stripping"
show_explicitly_disabled "${enable_mac64}" "64-bit Mac OS X" show_explicitly_disabled "${enable_mac64}" "64-bit Mac OS X"
@ -2461,6 +2470,7 @@ MAIN_VARIANT=3m
INSTALL_SETUP_FLAGS= INSTALL_SETUP_FLAGS=
STRIP_DEBUG=":" STRIP_DEBUG=":"
enable_strip_by_default=yes
use_flag_pthread=yes use_flag_pthread=yes
skip_iconv_check=no skip_iconv_check=no
@ -4049,7 +4059,6 @@ case "$host_os" in
linux*) linux*)
LIBS="$LIBS -ldl -lm -rdynamic" LIBS="$LIBS -ldl -lm -rdynamic"
DYN_CFLAGS="-fPIC" DYN_CFLAGS="-fPIC"
STRIP_DEBUG="strip -S"
try_poll_syscall=yes try_poll_syscall=yes
try_epoll_syscall=yes try_epoll_syscall=yes
case "$host_cpu" in case "$host_cpu" in
@ -4166,8 +4175,6 @@ _ACEOF
PREFLAGS="$PREFLAGS -DOS_X -D_DARWIN_UNLIMITED_SELECT" PREFLAGS="$PREFLAGS -DOS_X -D_DARWIN_UNLIMITED_SELECT"
try_kqueue_syscall=yes try_kqueue_syscall=yes
STRIP_DEBUG="/usr/bin/strip -S"
SO_SUFFIX=.dylib SO_SUFFIX=.dylib
# Force 32-bit build unless mac64 is enabled: # Force 32-bit build unless mac64 is enabled:
@ -4258,6 +4265,114 @@ if test "${enable_sgc}" = "yes" ; then
OPTIONS="$OPTIONS -DUSE_SENORA_GC" OPTIONS="$OPTIONS -DUSE_SENORA_GC"
fi fi
############## Strip tool ################
if test "${enable_strip}" = "" ; then
if test "${enable_strip_by_default}" = "yes" ; then
enable_strip=yes
fi
fi
if test "${enable_strip}" = "yes" ; then
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
set dummy ${ac_tool_prefix}strip; ac_word=$2
{ echo "$as_me:$LINENO: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
if test "${ac_cv_prog_STRIP+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
if test -n "$STRIP"; then
ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
else
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_STRIP="${ac_tool_prefix}strip"
echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
done
IFS=$as_save_IFS
fi
fi
STRIP=$ac_cv_prog_STRIP
if test -n "$STRIP"; then
{ echo "$as_me:$LINENO: result: $STRIP" >&5
echo "${ECHO_T}$STRIP" >&6; }
else
{ echo "$as_me:$LINENO: result: no" >&5
echo "${ECHO_T}no" >&6; }
fi
fi
if test -z "$ac_cv_prog_STRIP"; then
ac_ct_STRIP=$STRIP
# Extract the first word of "strip", so it can be a program name with args.
set dummy strip; ac_word=$2
{ echo "$as_me:$LINENO: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
if test -n "$ac_ct_STRIP"; then
ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
else
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_ac_ct_STRIP="strip"
echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
done
IFS=$as_save_IFS
fi
fi
ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
if test -n "$ac_ct_STRIP"; then
{ echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5
echo "${ECHO_T}$ac_ct_STRIP" >&6; }
else
{ echo "$as_me:$LINENO: result: no" >&5
echo "${ECHO_T}no" >&6; }
fi
if test "x$ac_ct_STRIP" = x; then
STRIP=""
else
case $cross_compiling:$ac_tool_warned in
yes:)
{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools
whose name does not start with the host triplet. If you think this
configuration is useful to you, please write to autoconf@gnu.org." >&5
echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools
whose name does not start with the host triplet. If you think this
configuration is useful to you, please write to autoconf@gnu.org." >&2;}
ac_tool_warned=yes ;;
esac
STRIP=$ac_ct_STRIP
fi
else
STRIP="$ac_cv_prog_STRIP"
fi
STRIP_DEBUG="$STRIP -S"
fi
############## C flags ################ ############## C flags ################
ac_ext=c ac_ext=c
@ -9770,6 +9885,7 @@ EXEEXT!$EXEEXT$ac_delim
OBJEXT!$OBJEXT$ac_delim OBJEXT!$OBJEXT$ac_delim
CPP!$CPP$ac_delim CPP!$CPP$ac_delim
RANLIB!$RANLIB$ac_delim RANLIB!$RANLIB$ac_delim
STRIP!$STRIP$ac_delim
GREP!$GREP$ac_delim GREP!$GREP$ac_delim
EGREP!$EGREP$ac_delim EGREP!$EGREP$ac_delim
PREFLAGS!$PREFLAGS$ac_delim PREFLAGS!$PREFLAGS$ac_delim
@ -9808,7 +9924,6 @@ OSX!$OSX$ac_delim
NOT_OSX!$NOT_OSX$ac_delim NOT_OSX!$NOT_OSX$ac_delim
MINGW!$MINGW$ac_delim MINGW!$MINGW$ac_delim
NOT_MINGW!$NOT_MINGW$ac_delim NOT_MINGW!$NOT_MINGW$ac_delim
FRAMEWORK_INSTALL_DIR!$FRAMEWORK_INSTALL_DIR$ac_delim
_ACEOF _ACEOF
if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then
@ -9850,6 +9965,7 @@ _ACEOF
ac_delim='%!_!# ' ac_delim='%!_!# '
for ac_last_try in false false false false false :; do for ac_last_try in false false false false false :; do
cat >conf$$subs.sed <<_ACEOF cat >conf$$subs.sed <<_ACEOF
FRAMEWORK_INSTALL_DIR!$FRAMEWORK_INSTALL_DIR$ac_delim
FRAMEWORK_REL_INSTALL!$FRAMEWORK_REL_INSTALL$ac_delim FRAMEWORK_REL_INSTALL!$FRAMEWORK_REL_INSTALL$ac_delim
FRAMEWORK_PREFIX!$FRAMEWORK_PREFIX$ac_delim FRAMEWORK_PREFIX!$FRAMEWORK_PREFIX$ac_delim
INSTALL_ORIG_TREE!$INSTALL_ORIG_TREE$ac_delim INSTALL_ORIG_TREE!$INSTALL_ORIG_TREE$ac_delim
@ -9906,7 +10022,7 @@ LIBOBJS!$LIBOBJS$ac_delim
LTLIBOBJS!$LTLIBOBJS$ac_delim LTLIBOBJS!$LTLIBOBJS$ac_delim
_ACEOF _ACEOF
if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 54; then if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 55; then
break break
elif $ac_last_try; then elif $ac_last_try; then
{ { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5

View File

@ -196,6 +196,7 @@ install-lib-cgc-wx_xt:
install-wx_xt-cgc: install-wx_xt-cgc:
$(MAKE) @MRLIBINSTALL@-cgc-wx_xt $(MAKE) @MRLIBINSTALL@-cgc-wx_xt
cd ..; $(ICP) gracket/gracket@CGC@ "$(DESTDIR)@MZINSTALLBINDIR@/gracket@CGC_INSTALLED@" cd ..; $(ICP) gracket/gracket@CGC@ "$(DESTDIR)@MZINSTALLBINDIR@/gracket@CGC_INSTALLED@"
cd ..; @STRIP_DEBUG@ "$(DESTDIR)@MZINSTALLBINDIR@/gracket@CGC_INSTALLED@"
@RUN_RACKET_CGC@ -cu "$(srcdir)/../racket/collects-path.rkt" @DIRCVTPRE@"$(DESTDIR)@MZINSTALLBINDIR@/gracket@CGC_INSTALLED@@EXE_SUFFIX@"@DIRCVTPOST@ @COLLECTS_PATH@ @RUN_RACKET_CGC@ -cu "$(srcdir)/../racket/collects-path.rkt" @DIRCVTPRE@"$(DESTDIR)@MZINSTALLBINDIR@/gracket@CGC_INSTALLED@@EXE_SUFFIX@"@DIRCVTPOST@ @COLLECTS_PATH@
install-wx_xt-cgc-final: install-wx_xt-cgc-final:
@ -210,6 +211,7 @@ install-lib-3m-wx_xt:
install-wx_xt-3m: install-wx_xt-3m:
$(MAKE) @MRLIBINSTALL@-3m-wx_xt $(MAKE) @MRLIBINSTALL@-3m-wx_xt
cd ..; $(ICP) gracket/gracket@MMM@ "$(DESTDIR)@MZINSTALLBINDIR@/gracket@MMM_INSTALLED@" cd ..; $(ICP) gracket/gracket@MMM@ "$(DESTDIR)@MZINSTALLBINDIR@/gracket@MMM_INSTALLED@"
cd ..; @STRIP_DEBUG@ "$(DESTDIR)@MZINSTALLBINDIR@/gracket@MMM_INSTALLED@"
@RUN_RACKET_MMM@ -cu "$(srcdir)/../racket/collects-path.rkt" @DIRCVTPRE@"$(DESTDIR)@MZINSTALLBINDIR@/gracket@MMM_INSTALLED@@EXE_SUFFIX@"@DIRCVTPOST@ @COLLECTS_PATH@ @RUN_RACKET_MMM@ -cu "$(srcdir)/../racket/collects-path.rkt" @DIRCVTPRE@"$(DESTDIR)@MZINSTALLBINDIR@/gracket@MMM_INSTALLED@@EXE_SUFFIX@"@DIRCVTPOST@ @COLLECTS_PATH@
install-wx_xt-3m-final: install-wx_xt-3m-final:

View File

@ -341,6 +341,7 @@ unix-install-cgc:
cd ..; $(ICP) racket/libmzgc.@LIBSFX@ "$(DESTDIR)$(libdir)/libmzgc.@LIBSFX@" cd ..; $(ICP) racket/libmzgc.@LIBSFX@ "$(DESTDIR)$(libdir)/libmzgc.@LIBSFX@"
cd ..; $(ICP) racket/libracket.@LIBSFX@ "$(DESTDIR)$(libdir)/libracket.@LIBSFX@" cd ..; $(ICP) racket/libracket.@LIBSFX@ "$(DESTDIR)$(libdir)/libracket.@LIBSFX@"
cd ..; $(ICP) racket/racket@CGC@ "$(DESTDIR)$(bindir)/racket@CGC_INSTALLED@" cd ..; $(ICP) racket/racket@CGC@ "$(DESTDIR)$(bindir)/racket@CGC_INSTALLED@"
cd ..; $(STRIP_DEBUG) "$(DESTDIR)$(bindir)/racket@CGC_INSTALLED@"
cd ..; cp racket/mzdyn.o "$(DESTDIR)$(libpltdir)/mzdyn.o" cd ..; cp racket/mzdyn.o "$(DESTDIR)$(libpltdir)/mzdyn.o"
@RUN_RACKET_CGC@ -cu "$(srcdir)/collects-path.rkt" "$(DESTDIR)$(bindir)/racket@CGC_INSTALLED@@EXE_SUFFIX@" @COLLECTS_PATH@ @RUN_RACKET_CGC@ -cu "$(srcdir)/collects-path.rkt" "$(DESTDIR)$(bindir)/racket@CGC_INSTALLED@@EXE_SUFFIX@" @COLLECTS_PATH@
@ -349,6 +350,7 @@ unix-install-cgc-final:
unix-install-3m: unix-install-3m:
cd ..; $(ICP) racket/racket@MMM@ "$(DESTDIR)$(bindir)/racket@MMM_INSTALLED@" cd ..; $(ICP) racket/racket@MMM@ "$(DESTDIR)$(bindir)/racket@MMM_INSTALLED@"
cd ..; $(STRIP_DEBUG) "$(DESTDIR)$(bindir)/racket@MMM_INSTALLED@"
cd ..; $(ICP) racket/libracket3m.@LIBSFX@ "$(DESTDIR)$(libdir)/libracket3m.@LIBSFX@" cd ..; $(ICP) racket/libracket3m.@LIBSFX@ "$(DESTDIR)$(libdir)/libracket3m.@LIBSFX@"
cd ..; $(ICP) racket/mzdyn3m.o "$(DESTDIR)$(libpltdir)/mzdyn3m.o" cd ..; $(ICP) racket/mzdyn3m.o "$(DESTDIR)$(libpltdir)/mzdyn3m.o"
@RUN_RACKET_MMM@ -cu "$(srcdir)/collects-path.rkt" "$(DESTDIR)$(bindir)/racket@MMM_INSTALLED@@EXE_SUFFIX@" @COLLECTS_PATH@ @RUN_RACKET_MMM@ -cu "$(srcdir)/collects-path.rkt" "$(DESTDIR)$(bindir)/racket@MMM_INSTALLED@@EXE_SUFFIX@" @COLLECTS_PATH@

View File

@ -70,6 +70,7 @@ AC_ARG_ENABLE(bigendian, [ --enable-bigendian assume "big" if endianness c
AC_ARG_ENABLE(gprof, [ --enable-gprof compile for profiling with gprof (gcc only)]) AC_ARG_ENABLE(gprof, [ --enable-gprof compile for profiling with gprof (gcc only)])
AC_ARG_ENABLE(gcov, [ --enable-gcov compile to gather gcov statistics (gcc3 only)]) AC_ARG_ENABLE(gcov, [ --enable-gcov compile to gather gcov statistics (gcc3 only)])
AC_ARG_ENABLE(noopt, [ --enable-strip strip debug on install (usually enabled by default)])
AC_ARG_ENABLE(noopt, [ --enable-noopt drop -O C flags (useful for low-level debugging)]) AC_ARG_ENABLE(noopt, [ --enable-noopt drop -O C flags (useful for low-level debugging)])
###### Some flags imply other flags ####### ###### Some flags imply other flags #######
@ -288,6 +289,8 @@ show_explicitly_enabled "${enable_gprof}" "gprof"
show_explicitly_enabled "${enable_gcov}" "gcov" show_explicitly_enabled "${enable_gcov}" "gcov"
show_explicitly_enabled "${enable_noopt}" "No-optimization" "Note that this mode is intended only for debugging purposes" show_explicitly_enabled "${enable_noopt}" "No-optimization" "Note that this mode is intended only for debugging purposes"
show_explicitly_enabled "${enable_strip}" "Debug-symbol stripping"
show_explicitly_disabled "${enable_strip}" "Debug-symbol stripping"
show_explicitly_disabled "${enable_mac64}" "64-bit Mac OS X" show_explicitly_disabled "${enable_mac64}" "64-bit Mac OS X"
@ -373,6 +376,7 @@ MAIN_VARIANT=3m
INSTALL_SETUP_FLAGS= INSTALL_SETUP_FLAGS=
STRIP_DEBUG=":" STRIP_DEBUG=":"
enable_strip_by_default=yes
use_flag_pthread=yes use_flag_pthread=yes
skip_iconv_check=no skip_iconv_check=no
@ -562,7 +566,6 @@ case "$host_os" in
linux*) linux*)
LIBS="$LIBS -ldl -lm -rdynamic" LIBS="$LIBS -ldl -lm -rdynamic"
DYN_CFLAGS="-fPIC" DYN_CFLAGS="-fPIC"
STRIP_DEBUG="strip -S"
try_poll_syscall=yes try_poll_syscall=yes
try_epoll_syscall=yes try_epoll_syscall=yes
case "$host_cpu" in case "$host_cpu" in
@ -675,8 +678,6 @@ case "$host_os" in
PREFLAGS="$PREFLAGS -DOS_X -D_DARWIN_UNLIMITED_SELECT" PREFLAGS="$PREFLAGS -DOS_X -D_DARWIN_UNLIMITED_SELECT"
try_kqueue_syscall=yes try_kqueue_syscall=yes
STRIP_DEBUG="/usr/bin/strip -S"
SO_SUFFIX=.dylib SO_SUFFIX=.dylib
# Force 32-bit build unless mac64 is enabled: # Force 32-bit build unless mac64 is enabled:
@ -767,6 +768,19 @@ if test "${enable_sgc}" = "yes" ; then
OPTIONS="$OPTIONS -DUSE_SENORA_GC" OPTIONS="$OPTIONS -DUSE_SENORA_GC"
fi fi
############## Strip tool ################
if test "${enable_strip}" = "" ; then
if test "${enable_strip_by_default}" = "yes" ; then
enable_strip=yes
fi
fi
if test "${enable_strip}" = "yes" ; then
AC_CHECK_TOOL([STRIP], [strip])
STRIP_DEBUG="$STRIP -S"
fi
############## C flags ################ ############## C flags ################
AC_LANG_C AC_LANG_C