auto-detect when strip -S
works for archives
Otherwise, don't try to strip archives such as "libracket3m.a".
This commit is contained in:
parent
b37c07a280
commit
1d5b34f48b
38
racket/src/configure
vendored
38
racket/src/configure
vendored
|
@ -712,6 +712,7 @@ PLAIN_CC
|
|||
MZLINKER
|
||||
REZ
|
||||
CC_FOR_BUILD
|
||||
STRIP_LIB_DEBUG
|
||||
STRIP_DEBUG
|
||||
ARFLAGS
|
||||
STATIC_AR
|
||||
|
@ -3177,6 +3178,7 @@ INSTALL_SETUP_RACKET_FLAGS=
|
|||
INSTALL_LIBS_ENABLE=no-install
|
||||
|
||||
STRIP_DEBUG=":"
|
||||
STRIP_LIB_DEBUG=":"
|
||||
strip_debug_flags=""
|
||||
enable_strip_by_default=yes
|
||||
|
||||
|
@ -4743,9 +4745,6 @@ $as_echo "#define HAVE_STDINT_H 1" >>confdefs.h
|
|||
PREFLAGS="$PREFLAGS -DOS_X -D_DARWIN_UNLIMITED_SELECT"
|
||||
try_kqueue_syscall=yes
|
||||
|
||||
# Needed when stripping ".a"s:
|
||||
strip_debug_flags=" -S"
|
||||
|
||||
# ".a" is typically not useful, since we always build a ".dylib":
|
||||
if test "${enable_libs}" == "" ; then
|
||||
INSTALL_LIBS_ENABLE=no-install
|
||||
|
@ -4855,6 +4854,11 @@ if test "${enable_strip}" = "" ; then
|
|||
fi
|
||||
fi
|
||||
|
||||
try_archive_conftest()
|
||||
{
|
||||
$AR $ARFLAGS conftest.a conftest.$OBJEXT > /dev/null 2>&1
|
||||
}
|
||||
|
||||
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.
|
||||
|
@ -4949,7 +4953,32 @@ else
|
|||
fi
|
||||
|
||||
# Used to add -S flag, but not all `strip' variants support it:
|
||||
STRIP_DEBUG="${STRIP}${strip_debug_flags}"
|
||||
STRIP_DEBUG="${STRIP}"
|
||||
if test "${INSTALL_LIBS_ENABLE}" = "install" ; then
|
||||
# Can only support library stripping if something like "-S" is available:
|
||||
msg="for strip -S"
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $msg" >&5
|
||||
$as_echo_n "checking $msg... " >&6; }
|
||||
set_strip_lib=no
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
int f() { return 0; }
|
||||
_ACEOF
|
||||
if ac_fn_c_try_compile "$LINENO"; then :
|
||||
try_archive_conftest
|
||||
else
|
||||
set_strip_lib=no
|
||||
fi
|
||||
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||||
if test conftest.a ; then
|
||||
if "${STRIP_DEBUG}" -S conftest.a > /dev/null 2>&1 ; then
|
||||
STRIP_LIB_DEBUG="${STRIP_DEBUG} -S"
|
||||
set_strip_lib=yes
|
||||
fi
|
||||
fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $set_strip_lib" >&5
|
||||
$as_echo "$set_strip_lib" >&6; }
|
||||
fi
|
||||
fi
|
||||
|
||||
############## C flags ################
|
||||
|
@ -6880,6 +6909,7 @@ LIBS="$LIBS $EXTRALIBS"
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
mk_needed_dir()
|
||||
|
|
|
@ -37,6 +37,7 @@ ARFLAGS = @ARFLAGS@
|
|||
RANLIB = @RANLIB@
|
||||
|
||||
STRIP_DEBUG = @STRIP_DEBUG@
|
||||
STRIP_LIB_DEBUG = @STRIP_LIB_DEBUG@
|
||||
|
||||
ARLIBFLAGS = @LDFLAGS@ @LIBS@
|
||||
|
||||
|
@ -406,8 +407,8 @@ unix-install-cgc:
|
|||
unix-install-libs-cgc:
|
||||
cd ..; $(ICP) racket/libmzgc.@LIBSFX@ "$(DESTDIR)$(libdir)/libmzgc.@LIBSFX@"
|
||||
cd ..; $(ICP) racket/libracket.@LIBSFX@ "$(DESTDIR)$(libdir)/libracket.@LIBSFX@"
|
||||
cd ..; $(STRIP_DEBUG) "$(DESTDIR)$(libdir)/libmzgc.@LIBSFX@"
|
||||
cd ..; $(STRIP_DEBUG) "$(DESTDIR)$(libdir)/libracket.@LIBSFX@"
|
||||
cd ..; $(STRIP_LIB_DEBUG) "$(DESTDIR)$(libdir)/libmzgc.@LIBSFX@"
|
||||
cd ..; $(STRIP_LIB_DEBUG) "$(DESTDIR)$(libdir)/libracket.@LIBSFX@"
|
||||
|
||||
unix-no-install-libs-cgc:
|
||||
$(NOOP)
|
||||
|
@ -424,7 +425,7 @@ unix-install-3m:
|
|||
|
||||
unix-install-libs-3m:
|
||||
cd ..; $(ICP) racket/libracket3m.@LIBSFX@ "$(DESTDIR)$(libdir)/libracket3m.@LIBSFX@"
|
||||
cd ..; $(STRIP_DEBUG) "$(DESTDIR)$(libdir)/libracket3m.@LIBSFX@"
|
||||
cd ..; $(STRIP_LIB_DEBUG) "$(DESTDIR)$(libdir)/libracket3m.@LIBSFX@"
|
||||
|
||||
unix-no-install-libs-3m:
|
||||
$(NOOP)
|
||||
|
|
|
@ -450,6 +450,7 @@ INSTALL_SETUP_RACKET_FLAGS=
|
|||
INSTALL_LIBS_ENABLE=no-install
|
||||
|
||||
STRIP_DEBUG=":"
|
||||
STRIP_LIB_DEBUG=":"
|
||||
strip_debug_flags=""
|
||||
enable_strip_by_default=yes
|
||||
|
||||
|
@ -867,9 +868,6 @@ case "$host_os" in
|
|||
PREFLAGS="$PREFLAGS -DOS_X -D_DARWIN_UNLIMITED_SELECT"
|
||||
try_kqueue_syscall=yes
|
||||
|
||||
# Needed when stripping ".a"s:
|
||||
strip_debug_flags=" -S"
|
||||
|
||||
# ".a" is typically not useful, since we always build a ".dylib":
|
||||
if test "${enable_libs}" == "" ; then
|
||||
INSTALL_LIBS_ENABLE=no-install
|
||||
|
@ -979,10 +977,29 @@ if test "${enable_strip}" = "" ; then
|
|||
fi
|
||||
fi
|
||||
|
||||
try_archive_conftest()
|
||||
{
|
||||
$AR $ARFLAGS conftest.a conftest.$OBJEXT > /dev/null 2>&1
|
||||
}
|
||||
|
||||
if test "${enable_strip}" = "yes" ; then
|
||||
AC_CHECK_TOOL([STRIP], [strip])
|
||||
# Used to add -S flag, but not all `strip' variants support it:
|
||||
STRIP_DEBUG="${STRIP}${strip_debug_flags}"
|
||||
STRIP_DEBUG="${STRIP}"
|
||||
if test "${INSTALL_LIBS_ENABLE}" = "install" ; then
|
||||
# Can only support library stripping if something like "-S" is available:
|
||||
[ msg="for strip -S" ]
|
||||
AC_MSG_CHECKING($msg)
|
||||
set_strip_lib=no
|
||||
AC_COMPILE_IFELSE([AC_LANG_SOURCE([int f() { return 0; }])], try_archive_conftest, set_strip_lib=no )
|
||||
if test conftest.a ; then
|
||||
if "${STRIP_DEBUG}" -S conftest.a > /dev/null 2>&1 ; then
|
||||
STRIP_LIB_DEBUG="${STRIP_DEBUG} -S"
|
||||
set_strip_lib=yes
|
||||
fi
|
||||
fi
|
||||
AC_MSG_RESULT($set_strip_lib)
|
||||
fi
|
||||
fi
|
||||
|
||||
############## C flags ################
|
||||
|
@ -1692,6 +1709,7 @@ AC_SUBST(AR)
|
|||
AC_SUBST(STATIC_AR)
|
||||
AC_SUBST(ARFLAGS)
|
||||
AC_SUBST(STRIP_DEBUG)
|
||||
AC_SUBST(STRIP_LIB_DEBUG)
|
||||
AC_SUBST(CC_FOR_BUILD)
|
||||
AC_SUBST(REZ)
|
||||
AC_SUBST(MZLINKER)
|
||||
|
|
Loading…
Reference in New Issue
Block a user