Submitted By: Ken Moffat <ken at linuxfromscratch dot org>
Date: 2016-06-11
Initial Package Version: 2.13
Upstream Status: Version is historic and unmaintained.
Origin: Found at fedora, plus fixes for LFS.
Description: All of the patches currently used by fedora, except for
the patch which ensures gawk is used in preference to mawk (we do not
install mawk). For LFS: we put mktemp in /usr/bin not /bin, remove
the install-info target because that will overwrite standards.info
with an old version (fedora always use a DESTDIR), and change the
man and info dirs to ${datadir}/ i.e. /usr/share (an empty /usr/info
will otherwise be created).
diff -Naur a/acgeneral.m4 b/acgeneral.m4
--- a/acgeneral.m4 1999-01-05 13:27:37.000000000 +0000
+++ b/acgeneral.m4 2016-06-11 00:18:24.429043947 +0100
@@ -1817,10 +1817,6 @@
[cat > conftest.$ac_ext <<EOF
[#]line __oline__ "configure"
#include "confdefs.h"
-ifelse(AC_LANG, CPLUSPLUS, [#ifdef __cplusplus
-extern "C" void exit(int);
-#endif
-])dnl
[$1]
EOF
if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
@@ -1988,12 +1984,12 @@
AC_MSG_CHECKING(size of $1)
AC_CACHE_VAL(AC_CV_NAME,
[AC_TRY_RUN([#include <stdio.h>
-main()
+int main()
{
FILE *f=fopen("conftestval", "w");
- if (!f) exit(1);
+ if (!f) return(1);
fprintf(f, "%d\n", sizeof($1));
- exit(0);
+ return(0);
}], AC_CV_NAME=`cat conftestval`, AC_CV_NAME=0, ifelse([$2], , , AC_CV_NAME=$2))])dnl
AC_MSG_RESULT($AC_CV_NAME)
AC_DEFINE_UNQUOTED(AC_TYPE_NAME, $AC_CV_NAME)
@@ -2160,20 +2156,38 @@
dnl AC_OUTPUT_MAKE_DEFS()
define(AC_OUTPUT_MAKE_DEFS,
[# Transform confdefs.h into DEFS.
-dnl Using a here document instead of a string reduces the quoting nightmare.
# Protect against shell expansion while executing Makefile rules.
# Protect against Makefile macro expansion.
-cat > conftest.defs <<\EOF
+#
+# If the first sed substitution is executed (which looks for macros that
+# take arguments), then we branch to the quote section. Otherwise,
+# look for a macro that doesn't take arguments.
+cat >confdef2opt.sed <<\_ACEOF
changequote(<<, >>)dnl
-s%<<#define>> \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g
-s%[ `~<<#>>$^&*(){}\\|;'"<>?]%\\&%g
-s%\[%\\&%g
-s%\]%\\&%g
-s%\$%$$%g
+t clear
+: clear
+s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\),-D\1=\2,g
+t quote
+s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\),-D\1=\2,g
+t quote
+d
+: quote
+s,[ `~#$^&*(){}\\|;'"<>?],\\&,g
+s,\[,\\&,g
+s,\],\\&,g
+s,\$,$$,g
+p
changequote([, ])dnl
-EOF
-DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '`
-rm -f conftest.defs
+_ACEOF
+# We use echo to avoid assuming a particular line-breaking character.
+# The extra dot is to prevent the shell from consuming trailing
+# line-breaks from the sub-command output. A line-break within
+# single-quotes doesn't work because, if this script is created in a
+# platform that uses two characters for line-breaks (e.g., DOS), tr
+# would break.
+ac_LF_and_DOT=`echo; echo .`
+DEFS=`sed -n -f confdef2opt.sed confdefs.h | tr "$ac_LF_and_DOT" ' .'`
+rm -f confdef2opt.sed
])
dnl Do the variable substitutions to create the Makefiles or whatever.
diff -Naur a/acspecific.m4 b/acspecific.m4
--- a/acspecific.m4 1999-01-05 13:27:52.000000000 +0000
+++ b/acspecific.m4 2016-06-11 00:18:17.533078644 +0100
@@ -152,8 +152,41 @@
CXXFLAGS=
fi
fi
+
+AC_PROG_CXX_EXIT_DECLARATION
])
+
+# AC_PROG_CXX_EXIT_DECLARATION
+# -----------------------------
+# Find a valid prototype for exit and declare it in confdefs.h.
+AC_DEFUN(AC_PROG_CXX_EXIT_DECLARATION,
+[for ac_declaration in \
+ ''\
+ '#include <stdlib.h>' \
+ 'extern "C" void std::exit (int) throw (); using std::exit;' \
+ 'extern "C" void std::exit (int); using std::exit;' \
+ 'extern "C" void exit (int) throw ();' \
+ 'extern "C" void exit (int);' \
+ 'void exit (int);'
+do
+ AC_TRY_COMPILE([#include <stdlib.h>
+$ac_declaration],
+ [exit (42);],
+ [],
+ [continue])
+ AC_TRY_COMPILE([$ac_declaration],
+ [exit (42);],
+ [break])
+done
+if test -n "$ac_declaration"; then
+ echo '#ifdef __cplusplus' >>confdefs.h
+ echo $ac_declaration >>confdefs.h
+ echo '#endif' >>confdefs.h
+fi
+])# AC_PROG_CXX_EXIT_DECLARATION
+
+
dnl Determine a Fortran 77 compiler to use. If `F77' is not already set
dnl in the environment, check for `g77', `f77' and `f2c', in that order.
dnl Set the output variable `F77' to the name of the compiler found.
@@ -1010,7 +1043,7 @@
])
AC_DEFUN(AC_FUNC_MMAP,
-[AC_CHECK_HEADERS(unistd.h)
+[AC_CHECK_HEADERS(stdlib.h unistd.h sys/stat.h sys/types.h)
AC_CHECK_FUNCS(getpagesize)
AC_CACHE_CHECK(for working mmap, ac_cv_func_mmap_fixed_mapped,
[AC_TRY_RUN([
@@ -1039,11 +1072,24 @@
#include <fcntl.h>
#include <sys/mman.h>
+#if HAVE_SYS_TYPES_H
+# include <sys/types.h>
+#endif
+
+#if HAVE_STDLIB_H
+# include <stdlib.h>
+#endif
+
+#if HAVE_SYS_STAT_H
+# include <sys/stat.h>
+#endif
+
+#if HAVE_UNISTD_H
+# include <unistd.h>
+#endif
+
/* This mess was copied from the GNU getpagesize.h. */
#ifndef HAVE_GETPAGESIZE
-# ifdef HAVE_UNISTD_H
-# include <unistd.h>
-# endif
/* Assume that all systems that can run configure have sys/param.h. */
# ifndef HAVE_SYS_PARAM_H
@@ -1373,6 +1419,8 @@
r.ru_majflt = r.ru_minflt = 0;
switch (fork()) {
case 0: /* Child. */
+ /* Unless we actually _do_ something, the kernel sometimes doesn't chalk up any system time to this process. */
+ if(fork()) { i = 123; wait(NULL); } else { i = 234; exit(0); }
sleep(1); /* Give up the CPU. */
_exit(0);
case -1: _exit(0); /* What can we do? */
diff -Naur a/autoconf.sh b/autoconf.sh
--- a/autoconf.sh 1999-01-05 13:27:53.000000000 +0000
+++ b/autoconf.sh 2016-06-11 00:22:17.351872133 +0100
@@ -45,20 +45,20 @@
esac
: ${TMPDIR=/tmp}
-tmpout=${TMPDIR}/acout.$$
+tmpout=`/usr/bin/mktemp ${TMPDIR}/acout.XXXXXX`
localdir=
show_version=no
while test $# -gt 0 ; do
case "${1}" in
-h | --help | --h* )
- echo "${usage}" 1>&2; exit 0 ;;
+ echo "${usage}" 1>&2; rm -f $tmpout ; exit 0 ;;
--localdir=* | --l*=* )
localdir="`echo \"${1}\" | sed -e 's/^[^=]*=//'`"
shift ;;
-l | --localdir | --l*)
shift
- test $# -eq 0 && { echo "${usage}" 1>&2; exit 1; }
+ test $# -eq 0 && { echo "${usage}" 1>&2; rm -f $tmpout; exit 1; }
localdir="${1}"
shift ;;
--macrodir=* | --m*=* )
@@ -66,7 +66,7 @@
shift ;;
-m | --macrodir | --m* )
shift
- test $# -eq 0 && { echo "${usage}" 1>&2; exit 1; }
+ test $# -eq 0 && { echo "${usage}" 1>&2; rm -f $tmpout; exit 1; }
AC_MACRODIR="${1}"
shift ;;
--version | --v* )
@@ -76,7 +76,7 @@
- ) # Use stdin as input.
break ;;
-* )
- echo "${usage}" 1>&2; exit 1 ;;
+ echo "${usage}" 1>&2; rm -f $tmpout; exit 1 ;;
* )
break ;;
esac
@@ -86,23 +86,25 @@
version=`sed -n 's/define.AC_ACVERSION.[ ]*\([0-9.]*\).*/\1/p' \
$AC_MACRODIR/acgeneral.m4`
echo "Autoconf version $version"
+ rm -f $tmpout
exit 0
fi
case $# in
0) infile=configure.in ;;
1) infile="$1" ;;
- *) echo "$usage" >&2; exit 1 ;;
+ *) echo "$usage" >&2; rm -f $tmpout; exit 1 ;;
esac
trap 'rm -f $tmpin $tmpout; exit 1' 1 2 15
-tmpin=${TMPDIR}/acin.$$ # Always set this, to avoid bogus errors from some rm's.
+tmpin=`/usr/bin/mktemp ${TMPDIR}/acin.XXXXXX`
+# Always set this, to avoid bogus errors from some rm's.
if test z$infile = z-; then
infile=$tmpin
- cat > $infile
elif test ! -r "$infile"; then
echo "autoconf: ${infile}: No such file or directory" >&2
+ rm -f $tmpin $tmpout
exit 1
fi
@@ -111,6 +113,8 @@
else
use_localdir=
fi
+# Make sure we don't leave those around - they are annoying
+trap 'rm -f $tmpin $tmpout' 0
# Use the frozen version of Autoconf if available.
r= f=
@@ -118,7 +122,7 @@
case `$M4 --help < /dev/null 2>&1` in
*reload-state*) test -r $AC_MACRODIR/autoconf.m4f && { r=--reload f=f; } ;;
*traditional*) ;;
-*) echo Autoconf requires GNU m4 1.1 or later >&2; rm -f $tmpin; exit 1 ;;
+*) echo Autoconf requires GNU m4 1.1 or later >&2; rm -f $tmpin $tmpout; exit 1 ;;
esac
$M4 -I$AC_MACRODIR $use_localdir $r autoconf.m4$f $infile > $tmpout ||
@@ -154,6 +158,6 @@
/__oline__/s/^\([0-9][0-9]*\):\(.*\)__oline__/\2\1/
' >&4
-rm -f $tmpout
+rm -f $tmpout $tmpin
exit $status
diff -Naur a/autoconf.texi b/autoconf.texi
--- a/autoconf.texi 1999-01-05 13:28:37.000000000 +0000
+++ b/autoconf.texi 2016-06-11 00:18:46.360933604 +0100
@@ -1,7 +1,7 @@
\input texinfo @c -*-texinfo-*-
@c %**start of header
-@setfilename autoconf.info
-@settitle Autoconf
+@setfilename autoconf.info
+@settitle Autoconf
@c For double-sided printing, uncomment:
@c @setchapternewpage odd
@c %**end of header
@@ -17,7 +17,8 @@
@ifinfo
@format
START-INFO-DIR-ENTRY
-* Autoconf: (autoconf). Create source code configuration scripts.
+* Autoconf: (autoconf). Create source code configuration scripts.
+ This is a legacy version of autoconf.
END-INFO-DIR-ENTRY
@end format
diff -Naur a/autoheader.sh b/autoheader.sh
--- a/autoheader.sh 1999-01-05 13:28:39.000000000 +0000
+++ b/autoheader.sh 2016-06-11 00:22:17.351872133 +0100
@@ -194,9 +194,9 @@
# Some fgrep's have limits on the number of lines that can be in the
# pattern on the command line, so use a temporary file containing the
# pattern.
- (fgrep_tmp=${TMPDIR-/tmp}/autoh$$
+ (fgrep_tmp=`/usr/bin/mktemp ${TMPDIR-/tmp}/autoh$$.XXXXXX`
trap "rm -f $fgrep_tmp; exit 1" 1 2 15
- cat > $fgrep_tmp <<EOF
+ cat >> $fgrep_tmp <<EOF
$syms
EOF
fgrep -f $fgrep_tmp
diff -Naur a/autoupdate.sh b/autoupdate.sh
--- a/autoupdate.sh 1999-01-05 13:28:42.000000000 +0000
+++ b/autoupdate.sh 2016-06-11 00:23:19.151561252 +0100
@@ -26,7 +26,7 @@
Usage: autoupdate [-h] [--help] [-m dir] [--macrodir=dir]
[--version] [template-file]"
-sedtmp=/tmp/acups.$$
+sedtmp=`/usr/bin/mktemp /tmp/acups.XXXXXX`
# For debugging.
#sedtmp=/tmp/acups
show_version=no
@@ -35,13 +35,13 @@
while test $# -gt 0 ; do
case "${1}" in
-h | --help | --h* )
- echo "${usage}" 1>&2; exit 0 ;;
+ echo "${usage}" 1>&2; rm -f $sedtmp; exit 0 ;;
--macrodir=* | --m*=* )
AC_MACRODIR="`echo \"${1}\" | sed -e 's/^[^=]*=//'`"
shift ;;
-m | --macrodir | --m* )
shift
- test $# -eq 0 && { echo "${usage}" 1>&2; exit 1; }
+ test $# -eq 0 && { echo "${usage}" 1>&2; rm -f $sedtmp; exit 1; }
AC_MACRODIR="${1}"
shift ;;
--version | --versio | --versi | --vers)
@@ -51,7 +51,7 @@
- ) # Use stdin as input.
break ;;
-* )
- echo "${usage}" 1>&2; exit 1 ;;
+ echo "${usage}" 1>&2; rm -f $sedtmp; exit 1 ;;
* )
break ;;
esac
@@ -61,6 +61,7 @@
version=`sed -n 's/define.AC_ACVERSION.[ ]*\([0-9.]*\).*/\1/p' \
$AC_MACRODIR/acgeneral.m4`
echo "Autoconf version $version"
+ rm -f $sedtmp
exit 0
fi
@@ -68,6 +69,7 @@
tmpout=acupo.$$
trap 'rm -f $sedtmp $tmpout; exit 1' 1 2 15
+trap 'rm -f $sedtmp' 0
case $# in
0) infile=configure.in; out="> $tmpout"
# Make sure $infile can be read, and $tmpout has the same permissions.
diff -Naur a/configure b/configure
--- a/configure 1999-01-05 13:28:57.000000000 +0000
+++ b/configure 2016-06-11 00:50:57.771231914 +0100
@@ -43,8 +43,8 @@
libdir='${exec_prefix}/lib'
includedir='${prefix}/include'
oldincludedir='/usr/include'
-infodir='${prefix}/info'
-mandir='${prefix}/man'
+infodir='${datadir}/info'
+mandir='${datadir}/man'
# Initialize some other variables.
subdirs=
diff -Naur a/Makefile.in b/Makefile.in
--- a/Makefile.in 1999-01-05 13:27:16.000000000 +0000
+++ b/Makefile.in 2016-06-11 00:29:34.005678107 +0100
@@ -49,7 +49,7 @@
# Directory in which to install library files.
datadir = @datadir@
-acdatadir = $(datadir)/autoconf
+acdatadir = $(datadir)/autoconf-2.13
# Directory in which to install documentation info files.
infodir = @infodir@
@@ -68,8 +68,8 @@
DISTFILES = AUTHORS COPYING ChangeLog ChangeLog.1 INSTALL \
Makefile.in NEWS README TODO $(M4FILES) \
acconfig.h acfunctions acheaders acidentifiers \
- acmakevars acprograms autoconf.info* \
- autoconf.sh autoconf.texi install.texi \
+ acmakevars acprograms autoconf.info* \
+ autoconf.sh autoconf.texi install.texi \
autoheader.sh autoscan.pl autoreconf.sh autoupdate.sh ifnames.sh \
config.guess config.sub configure configure.in \
install-sh mkinstalldirs texinfo.tex \
@@ -106,11 +106,11 @@
autoconf.m4f: autoconf.m4 acgeneral.m4 acspecific.m4 acoldnames.m4
autoheader.m4f: autoheader.m4 acgeneral.m4 acspecific.m4 acoldnames.m4
-info: autoconf.info @standards_info@ INSTALL
+info: autoconf.info @standards_info@ INSTALL
# Use --no-split to avoid creating filenames > 14 chars.
-autoconf.info: autoconf.texi install.texi
- $(MAKEINFO) -I$(srcdir) $(srcdir)/autoconf.texi --no-split --output=$@
+autoconf.info: autoconf.texi install.texi
+ $(MAKEINFO) -I$(srcdir) $(srcdir)/autoconf.texi --no-split --output=$@
INSTALL: install.texi
$(MAKEINFO) -I$(srcdir) $(srcdir)/install.texi --output=$@ \
@@ -121,8 +121,8 @@
dvi: autoconf.dvi @standards_dvi@
-autoconf.dvi: autoconf.texi
- $(TEXI2DVI) $(srcdir)/autoconf.texi
+autoconf.dvi: autoconf.texi
+ $(TEXI2DVI) $(srcdir)/autoconf.texi
standards.dvi: standards.texi make-stds.texi
$(TEXI2DVI) $(srcdir)/standards.texi
@@ -137,35 +137,35 @@
cd testsuite && ${MAKE} AUTOCONF=${bindir}/autoconf $@
installdirs:
- $(SHELL) ${srcdir}/mkinstalldirs $(bindir) $(infodir) $(acdatadir)
+ $(SHELL) ${srcdir}/mkinstalldirs $(DESTDIR)/$(bindir) $(DESTDIR)/$(infodir) $(DESTDIR)/$(acdatadir)
-install: all $(M4FILES) acconfig.h installdirs install-info
+install: all $(M4FILES) acconfig.h installdirs
for p in $(ASCRIPTS); do \
- $(INSTALL_PROGRAM) $$p $(bindir)/`echo $$p|sed '$(transform)'`; \
+ $(INSTALL_PROGRAM) $$p $(DESTDIR)/$(bindir)/`echo $$p|sed '$(transform)'`; \
done
for i in $(M4FROZEN); do \
- $(INSTALL_DATA) $$i $(acdatadir)/$$i; \
+ $(INSTALL_DATA) $$i $(DESTDIR)/$(acdatadir)/$$i; \
done
for i in $(M4FILES) acconfig.h; do \
- $(INSTALL_DATA) $(srcdir)/$$i $(acdatadir)/$$i; \
+ $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)/$(acdatadir)/$$i; \
done
-if test -f autoscan; then \
- $(INSTALL_PROGRAM) autoscan $(bindir)/`echo autoscan|sed '$(transform)'`; \
+ $(INSTALL_PROGRAM) autoscan $(DESTDIR)/$(bindir)/`echo autoscan|sed '$(transform)'`; \
for i in acfunctions acheaders acidentifiers acprograms \
acmakevars; do \
- $(INSTALL_DATA) $(srcdir)/$$i $(acdatadir)/$$i; \
+ $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)/$(acdatadir)/$$i; \
done; \
else :; fi
# Don't cd, to avoid breaking install-sh references.
install-info: info installdirs
- if test -f autoconf.info; then \
+ if test -f autoconf.info; then \
for i in *.info*; do \
- $(INSTALL_DATA) $$i $(infodir)/$$i; \
+ $(INSTALL_DATA) $$i $(DESTDIR)/$(infodir)/$$i; \
done; \
else \
for i in $(srcdir)/*.info*; do \
- $(INSTALL_DATA) $$i $(infodir)/`echo $$i | sed 's|^$(srcdir)/||'`; \
+ $(INSTALL_DATA) $$i $(DESTDIR)/$(infodir)/`echo $$i | sed 's|^$(srcdir)/||'`; \
done; \
fi
@@ -174,7 +174,7 @@
rm -f $(bindir)/`echo $$p|sed '$(transform)'`; \
done
rm -fr $(acdatadir)
- cd $(infodir) && rm -f autoconf.info*
+ cd $(infodir) && rm -f autoconf.info*
if test -f standards.info || test -f $(srcdir)/standards.info; \
then cd $(infodir) && rm -f standards.info*; fi
diff -Naur a/testsuite/autoconf.s/syntax.exp b/testsuite/autoconf.s/syntax.exp
--- a/testsuite/autoconf.s/syntax.exp 1999-01-05 13:29:54.000000000 +0000
+++ b/testsuite/autoconf.s/syntax.exp 2016-06-11 00:18:51.996905247 +0100
@@ -2,7 +2,7 @@
send_user "Checking for syntax errors in the specific tests...\n"
set script {s/^AC_DEFUN(\([^,]*\).*/\1/p}
-set macros [exec sed -n $script $srcdir/../acspecific.m4]
+set macros [exec sed -n $script $srcdir/../acspecific.m4 | grep -v -e AC_FUNC_GETLOADAVG -e F77]
foreach mac $macros {
send_user "$mac\n"