mirror of git://gcc.gnu.org/git/gcc.git
* libtool.m4: Update AC_LIBTOOL_SYS_MAX_CMD_LEN bits from upstream.
From-SVN: r97808
This commit is contained in:
parent
085e30b7b0
commit
b937d91625
|
|
@ -1,3 +1,7 @@
|
||||||
|
2005-04-07 Mike Stump <mrs@apple.com>
|
||||||
|
|
||||||
|
* libtool.m4: Update AC_LIBTOOL_SYS_MAX_CMD_LEN bits from upstream.
|
||||||
|
|
||||||
2005-04-04 Thomas Koenig <Thomas.Koenig@online.de>
|
2005-04-04 Thomas Koenig <Thomas.Koenig@online.de>
|
||||||
|
|
||||||
* MAINTAINERS (Write After Approval): Add myself.
|
* MAINTAINERS (Write After Approval): Add myself.
|
||||||
|
|
|
||||||
|
|
@ -103,6 +103,8 @@ AC_REQUIRE([AC_OBJEXT])dnl
|
||||||
AC_REQUIRE([AC_EXEEXT])dnl
|
AC_REQUIRE([AC_EXEEXT])dnl
|
||||||
dnl
|
dnl
|
||||||
|
|
||||||
|
AC_LIBTOOL_SYS_MAX_CMD_LEN
|
||||||
|
|
||||||
# Only perform the check for file, if the check method requires it
|
# Only perform the check for file, if the check method requires it
|
||||||
case $deplibs_check_method in
|
case $deplibs_check_method in
|
||||||
file_magic*)
|
file_magic*)
|
||||||
|
|
@ -279,6 +281,85 @@ ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
|
||||||
esac
|
esac
|
||||||
])
|
])
|
||||||
|
|
||||||
|
|
||||||
|
# AC_LIBTOOL_SYS_MAX_CMD_LEN
|
||||||
|
# --------------------------
|
||||||
|
AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN],
|
||||||
|
[# find the maximum length of command line arguments
|
||||||
|
AC_MSG_CHECKING([the maximum length of command line arguments])
|
||||||
|
AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
|
||||||
|
i=0
|
||||||
|
teststring="ABCD"
|
||||||
|
|
||||||
|
case $build_os in
|
||||||
|
msdosdjgpp*)
|
||||||
|
# On DJGPP, this test can blow up pretty badly due to problems in libc
|
||||||
|
# (any single argument exceeding 2000 bytes causes a buffer overrun
|
||||||
|
# during glob expansion). Even if it were fixed, the result of this
|
||||||
|
# check would be larger than it should be.
|
||||||
|
lt_cv_sys_max_cmd_len=12288; # 12K is about right
|
||||||
|
;;
|
||||||
|
|
||||||
|
cygwin* | mingw*)
|
||||||
|
# On Win9x/ME, this test blows up -- it succeeds, but takes
|
||||||
|
# about 5 minutes as the teststring grows exponentially.
|
||||||
|
# Worse, since 9x/ME are not pre-emptively multitasking,
|
||||||
|
# you end up with a "frozen" computer, even though with patience
|
||||||
|
# the test eventually succeeds (with a max line length of 256k).
|
||||||
|
# Instead, let's just punt: use the minimum linelength reported by
|
||||||
|
# all of the supported platforms: 8192 (on NT/2K/XP).
|
||||||
|
lt_cv_sys_max_cmd_len=8192;
|
||||||
|
;;
|
||||||
|
|
||||||
|
amigaos*)
|
||||||
|
# On AmigaOS with pdksh, this test takes hours, literally.
|
||||||
|
# So we just punt and use a minimum line length of 8192.
|
||||||
|
lt_cv_sys_max_cmd_len=8192;
|
||||||
|
;;
|
||||||
|
|
||||||
|
netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
|
||||||
|
# This has been around since 386BSD, at least. Likely further.
|
||||||
|
if test -x /sbin/sysctl; then
|
||||||
|
lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
|
||||||
|
elif test -x /usr/sbin/sysctl; then
|
||||||
|
lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
|
||||||
|
else
|
||||||
|
lt_cv_sys_max_cmd_len=65536 # usable default for *BSD
|
||||||
|
fi
|
||||||
|
# And add a safety zone
|
||||||
|
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
|
||||||
|
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
# If test is not a shell built-in, we'll probably end up computing a
|
||||||
|
# maximum length that is only half of the actual maximum length, but
|
||||||
|
# we can't tell.
|
||||||
|
SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
|
||||||
|
while (test "X"`$SHELL [$]0 --fallback-echo "X$teststring" 2>/dev/null` \
|
||||||
|
= "XX$teststring") >/dev/null 2>&1 &&
|
||||||
|
new_result=`expr "X$teststring" : ".*" 2>&1` &&
|
||||||
|
lt_cv_sys_max_cmd_len=$new_result &&
|
||||||
|
test $i != 17 # 1/2 MB should be enough
|
||||||
|
do
|
||||||
|
i=`expr $i + 1`
|
||||||
|
teststring=$teststring$teststring
|
||||||
|
done
|
||||||
|
teststring=
|
||||||
|
# Add a significant safety factor because C++ compilers can tack on massive
|
||||||
|
# amounts of additional arguments before passing them to the linker.
|
||||||
|
# It appears as though 1/2 is a usable value.
|
||||||
|
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
])
|
||||||
|
if test -n $lt_cv_sys_max_cmd_len ; then
|
||||||
|
AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
|
||||||
|
else
|
||||||
|
AC_MSG_RESULT(none)
|
||||||
|
fi
|
||||||
|
])# AC_LIBTOOL_SYS_MAX_CMD_LEN
|
||||||
|
|
||||||
|
|
||||||
# AC_LIBTOOL_DLOPEN - enable checks for dlopen support
|
# AC_LIBTOOL_DLOPEN - enable checks for dlopen support
|
||||||
AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
|
AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue