2006-05-21 Paul Eggert and Ralf Wildenhues * lib/autoconf/programs.m4 (AC_PROG_SED): Catch script length limits in Solaris 8 /usr/ucb/sed by testing a long script. Index: lib/autoconf/programs.m4 =================================================================== RCS file: /cvsroot/autoconf/autoconf/lib/autoconf/programs.m4,v retrieving revision 1.55 diff -u -r1.55 programs.m4 --- lib/autoconf/programs.m4 22 May 2006 10:37:15 -0000 1.55 +++ lib/autoconf/programs.m4 22 May 2006 10:55:33 -0000 @@ -812,11 +812,20 @@ # as few characters as possible. Prefer GNU sed if found. AC_DEFUN([AC_PROG_SED], [AC_CACHE_CHECK([for a sed that does not truncate output], ac_cv_path_SED, - [_AC_PATH_PROG_FEATURE_CHECK(SED, [sed gsed], + [dnl ac_script should not contain more than 99 commands (for HP-UX sed), + dnl but more than about 7000 bytes, to catch a limit in Solaris 8 /usr/ucb/sed. + ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ + for ac_i in 1 2 3 4 5 6 7; do + ac_script="$ac_script$as_nl$ac_script" + done + echo "$ac_script" | sed 99q >conftest.sed + $as_unset ac_script || ac_script= + _AC_PATH_PROG_FEATURE_CHECK(SED, [sed gsed], [_AC_FEATURE_CHECK_LENGTH([ac_path_SED], [ac_cv_path_SED], - ["$ac_path_SED" -e 's/a$//'])])]) + ["$ac_path_SED" -f conftest.sed])])]) SED="$ac_cv_path_SED" - AC_SUBST([SED]) + AC_SUBST([SED])dnl + rm -f conftest.sed ])# AC_PROG_SED