mirror of
git://git.sv.gnu.org/autoconf
synced 2025-03-19 14:40:24 +08:00
various little patches
This commit is contained in:
parent
52521243f1
commit
0f53fcad1b
23
Makefile.in
23
Makefile.in
@ -90,15 +90,16 @@ all: ${SCRIPTS}
|
||||
|
||||
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 --output=$@
|
||||
$(MAKEINFO) -I$(srcdir) $(srcdir)/autoconf.texi --no-split --output=$@
|
||||
|
||||
INSTALL: install.texi
|
||||
$(MAKEINFO) -I$(srcdir) $(srcdir)/install.texi --output=$@ \
|
||||
--no-headers --no-validate
|
||||
|
||||
standards.info: standards.texi make-stds.texi
|
||||
$(MAKEINFO) -I$(srcdir) $(srcdir)/standards.texi --output=$@
|
||||
$(MAKEINFO) -I$(srcdir) $(srcdir)/standards.texi --no-split --output=$@
|
||||
|
||||
dvi: autoconf.dvi @standards_dvi@
|
||||
|
||||
@ -142,15 +143,17 @@ install: all $(M4FILES) acconfig.h installdirs install-info
|
||||
done; \
|
||||
else :; fi
|
||||
|
||||
# Don't cd, to avoid breaking install-sh references.
|
||||
install-info: info installdirs
|
||||
-test -f autoconf.info || cd $(srcdir); \
|
||||
for i in autoconf.info*; do \
|
||||
$(INSTALL_DATA) $$i $(infodir)/$$i; \
|
||||
done
|
||||
-test -f standards.info || cd $(srcdir); \
|
||||
for i in standards.info*; do \
|
||||
$(INSTALL_DATA) $$i $(infodir)/$$i; \
|
||||
done
|
||||
if test -f autoconf.info; then \
|
||||
for i in *.info*; do \
|
||||
$(INSTALL_DATA) $$i $(infodir)/$$i; \
|
||||
done; \
|
||||
else \
|
||||
for i in $(srcdir)/*.info*; do \
|
||||
$(INSTALL_DATA) $$i $(infodir)/`echo $$i | sed 's|^$(srcdir)/||'`; \
|
||||
done; \
|
||||
fi
|
||||
|
||||
uninstall:
|
||||
for p in $(SCRIPTS); do \
|
||||
|
9
TODO
9
TODO
@ -300,9 +300,8 @@ The problem occurs with the following libc functions in SunOS 5.4:
|
||||
It also occurs with a bunch more libposix4 functions that most people
|
||||
probably aren't worried about yet, e.g. shm_open.
|
||||
|
||||
All of these functions fail with errno set to 59. errno 59 is not
|
||||
documented and is not in /usr/include/sys/errno.h, but perror claims
|
||||
that it means ``Operation not applicable''.
|
||||
All these functions fail with errno set to ENOSYS (89)
|
||||
``Operation not applicable''.
|
||||
|
||||
Perhaps autoconf should have a
|
||||
specific macro for fnmatch, another for glob+globfree, another for
|
||||
@ -315,6 +314,10 @@ From Paul Eggert.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
Make easy macros for checking for X functions and libraries.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
* Test suite: more things to test:
|
||||
** That the shell scripts produce correct output on some simple data.
|
||||
** Configuration header files. That autoheader does the right thing,
|
||||
|
27
acgeneral.m4
27
acgeneral.m4
@ -51,7 +51,7 @@ dnl
|
||||
divert(-1)dnl Throw away output until AC_INIT is called.
|
||||
changequote([, ])
|
||||
|
||||
define(AC_ACVERSION, 2.1.2)
|
||||
define(AC_ACVERSION, 2.1.3)
|
||||
|
||||
dnl Some old m4's don't support m4exit. But they provide
|
||||
dnl equivalent functionality by core dumping because of the
|
||||
@ -889,9 +889,7 @@ fi
|
||||
|
||||
dnl AC_CACHE_SAVE()
|
||||
define(AC_CACHE_SAVE,
|
||||
[if test -w $cache_file; then
|
||||
echo "updating cache $cache_file"
|
||||
cat > $cache_file <<\EOF
|
||||
[cat > $cache_file.$$ <<\EOF
|
||||
# This file is a shell script that caches the results of configure
|
||||
# tests run on this system so they can be shared between configure
|
||||
# scripts and configure runs. It is not useful on other systems.
|
||||
@ -913,11 +911,19 @@ dnl Allow a site initialization script to override cache values.
|
||||
# and sets the high bit in the cache file unless we assign to the vars.
|
||||
(set) 2>&1 |
|
||||
sed -n "s/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=\${\1='\2'}/p" \
|
||||
>> $cache_file
|
||||
>> $cache_file.$$
|
||||
changequote([, ])dnl
|
||||
if cmp -s $cache_file $cache_file.$$; then
|
||||
:
|
||||
else
|
||||
echo "not updating unwritable cache $cache_file"
|
||||
if test -w $cache_file; then
|
||||
echo "updating cache $cache_file"
|
||||
cat $cache_file.$$ > $cache_file
|
||||
else
|
||||
echo "not updating unwritable cache $cache_file"
|
||||
fi
|
||||
fi
|
||||
rm -f $cache_file.$$
|
||||
])
|
||||
|
||||
dnl The name of shell var CACHE-ID must contain `_cv_' in order to get saved.
|
||||
@ -1471,9 +1477,12 @@ AC_DEFUN(AC_CHECK_FUNC,
|
||||
[AC_MSG_CHECKING([for $1])
|
||||
AC_CACHE_VAL(ac_cv_func_$1,
|
||||
[AC_TRY_LINK(
|
||||
[/* This header should be one that does not declare any functions.
|
||||
Such declarations can conflict with char $1(); below. */
|
||||
#include <errno.h> /* Arbitrary system header to define __stub macros. */
|
||||
dnl Don't include <ctype.h> because on OSF/1 3.0 it includes <sys/types.h>
|
||||
dnl which includes <sys/select.h> which contains a prototype for
|
||||
dnl select. Similarly for bzero.
|
||||
[/* System header to define __stub macros and hopefully few prototypes,
|
||||
which can conflict with char $1(); below. */
|
||||
#include <assert.h>
|
||||
/* Override any gcc2 internal prototype to avoid an error. */
|
||||
]ifelse(AC_LANG, CPLUSPLUS, [#ifdef __cplusplus
|
||||
extern "C"
|
||||
|
@ -400,6 +400,9 @@ AC_CACHE_VAL(ac_cv_path_install,
|
||||
done
|
||||
IFS="$ac_save_ifs"
|
||||
# As a last resort, use the slow shell script.
|
||||
dnl FIXME We probably shouldn't cache a path within a source directory,
|
||||
dnl because that will break other packages using the cache if
|
||||
dnl that directory is removed.
|
||||
test -z "$ac_cv_path_install" && ac_cv_path_install="$ac_install_sh"])dnl
|
||||
INSTALL="$ac_cv_path_install"
|
||||
fi
|
||||
@ -925,19 +928,17 @@ AC_DEFUN(AC_FUNC_VFORK,
|
||||
AC_CHECK_HEADER(vfork.h, AC_DEFINE(HAVE_VFORK_H))
|
||||
AC_MSG_CHECKING(for working vfork)
|
||||
AC_CACHE_VAL(ac_cv_func_vfork,
|
||||
[AC_REQUIRE([AC_TYPE_SIGNAL])
|
||||
AC_TRY_RUN([/* Thanks to Paul Eggert for this test. */
|
||||
[AC_TRY_RUN([/* Thanks to Paul Eggert for this test. */
|
||||
#include <stdio.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <signal.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#ifdef HAVE_VFORK_H
|
||||
#include <vfork.h>
|
||||
#endif
|
||||
/* On sparc systems, changes by the child to local and incoming
|
||||
/* On some sparc systems, changes by the child to local and incoming
|
||||
argument registers are propagated back to the parent.
|
||||
The compiler is told about this with #include <vfork.h>,
|
||||
but some compilers (e.g. gcc -O) don't grok <vfork.h>.
|
||||
@ -962,16 +963,12 @@ sparc_address_test (arg) int arg;
|
||||
}
|
||||
}
|
||||
}
|
||||
static int signalled;
|
||||
static RETSIGTYPE catch (s) int s; { signalled = 1; }
|
||||
main() {
|
||||
pid_t parent = getpid ();
|
||||
pid_t child;
|
||||
|
||||
sparc_address_test ();
|
||||
|
||||
signal (SIGINT, catch);
|
||||
|
||||
child = vfork ();
|
||||
|
||||
if (child == 0) {
|
||||
@ -979,7 +976,7 @@ main() {
|
||||
This test uses lots of local variables, at least
|
||||
as many local variables as main has allocated so far
|
||||
including compiler temporaries. 4 locals are enough for
|
||||
gcc 1.40.3 on a sparc, but we use 8 to be safe.
|
||||
gcc 1.40.3 on a Solaris 4.1.3 sparc, but we use 8 to be safe.
|
||||
A buggy compiler should reuse the register of parent
|
||||
for one of the local variables, since it will think that
|
||||
parent can't possibly be used any more in this routine.
|
||||
@ -994,12 +991,6 @@ main() {
|
||||
|| p != p5 || p != p6 || p != p7)
|
||||
_exit(1);
|
||||
|
||||
/* On some systems (e.g. SunOS 5.2), if the parent is catching
|
||||
a signal, the child ignores the signal before execing,
|
||||
and the parent later receives that signal, the parent dumps core.
|
||||
Test for this by ignoring SIGINT in the child. */
|
||||
signal (SIGINT, SIG_IGN);
|
||||
|
||||
/* On some systems (e.g. IRIX 3.3),
|
||||
vfork doesn't separate parent from child file descriptors.
|
||||
If the child closes a descriptor before it execs or exits,
|
||||
@ -1022,10 +1013,6 @@ main() {
|
||||
/* Did the vfork/compiler bug occur? */
|
||||
|| parent != getpid()
|
||||
|
||||
/* Did the signal handling bug occur? */
|
||||
|| kill(parent, SIGINT) != 0
|
||||
|| signalled != 1
|
||||
|
||||
/* Did the file descriptor bug occur? */
|
||||
|| fstat(fileno(stdout), &st) != 0
|
||||
);
|
||||
|
@ -6,9 +6,9 @@
|
||||
@c @setchapternewpage odd
|
||||
@c %**end of header
|
||||
|
||||
@set EDITION 2.1.2
|
||||
@set VERSION 2.1.2
|
||||
@set UPDATED February 1995
|
||||
@set EDITION 2.1.3
|
||||
@set VERSION 2.1.3
|
||||
@set UPDATED March 1995
|
||||
|
||||
@iftex
|
||||
@finalout
|
||||
@ -240,7 +240,7 @@ Site Configuration
|
||||
|
||||
Transforming Program Names When Installing
|
||||
|
||||
* Transformation Options:: @code{configure} options to transforme names.
|
||||
* Transformation Options:: @code{configure} options to transform names.
|
||||
* Transformation Examples:: Sample uses of transforming names.
|
||||
* Transformation Rules:: @file{Makefile} uses of transforming names.
|
||||
|
||||
@ -1040,7 +1040,8 @@ recompilation. You should include the file @file{stamp-h.in} your
|
||||
package's distribution, so @code{make} will consider @file{config.h.in}
|
||||
up to date. On some old BSD systems, @code{touch} or any command that
|
||||
results in an empty file does not update the timestamps, so use a
|
||||
command like @code{date} as a workaround.
|
||||
command like @code{echo} as a workaround.
|
||||
@c Using @code{date} would cause needless CVS conflicts.
|
||||
|
||||
@example
|
||||
@group
|
||||
@ -1052,7 +1053,7 @@ $@{srcdir@}/config.h.in: stamp-h.in
|
||||
$@{srcdir@}/stamp-h.in: configure.in aclocal.m4 acconfig.h \
|
||||
config.h.top config.h.bot
|
||||
cd $@{srcdir@} && autoheader
|
||||
date > $@{srcdir@}/stamp-h.in
|
||||
echo timestamp > $@{srcdir@}/stamp-h.in
|
||||
|
||||
config.h: stamp-h
|
||||
stamp-h: config.h.in config.status
|
||||
@ -1066,10 +1067,10 @@ config.status: configure
|
||||
@end group
|
||||
@end example
|
||||
|
||||
In addition, you should pass @samp{date > stamp-h} in the @var{extra-cmds}
|
||||
argument to @code{AC_OUTPUT}, so @file{config.status} will ensure that
|
||||
@file{config.h} is considered up to date. @xref{Output}, for more
|
||||
information about @code{AC_OUTPUT}.
|
||||
In addition, you should pass @samp{echo timestamp > stamp-h} in the
|
||||
@var{extra-cmds} argument to @code{AC_OUTPUT}, so @file{config.status}
|
||||
will ensure that @file{config.h} is considered up to date.
|
||||
@xref{Output}, for more information about @code{AC_OUTPUT}.
|
||||
|
||||
@xref{Invoking config.status}, for more examples of handling
|
||||
configuration-related dependencies.
|
||||
@ -1873,7 +1874,9 @@ If @file{vfork.h} is found, define @code{HAVE_VFORK_H}. If a working
|
||||
@code{vfork} is not found, define @code{vfork} to be @code{fork}. This
|
||||
macro checks for several known errors in implementations of @code{vfork}
|
||||
and considers the system to not have a working @code{vfork} if it
|
||||
detects any of them.
|
||||
detects any of them. It is not considered to be an implementation error
|
||||
if a child's invocation of @code{signal} modifies the parent's signal
|
||||
handler, since child processes rarely change their signal handlers.
|
||||
@end defmac
|
||||
|
||||
@defmac AC_FUNC_VPRINTF
|
||||
@ -2517,16 +2520,21 @@ otherwise set it to the empty string.
|
||||
@ovindex X_LIBS
|
||||
@ovindex X_EXTRA_LIBS
|
||||
@ovindex X_PRE_LIBS
|
||||
An enhanced version of @code{AC_PATH_X}. Add the C compiler flags that
|
||||
An enhanced version of @code{AC_PATH_X}. It adds the C compiler flags that
|
||||
X needs to output variable @code{X_CFLAGS}, and the X linker flags to
|
||||
@code{X_LIBS}. If X is not available, add @samp{-DX_DISPLAY_MISSING} to
|
||||
@code{X_LIBS}. If X is not available, adds @samp{-DX_DISPLAY_MISSING} to
|
||||
@code{X_CFLAGS}.
|
||||
|
||||
Also check for special libraries that some systems need in order to
|
||||
compile X programs. Add any that the system needs to output variable
|
||||
@code{X_EXTRA_LIBS}. And check for special X11R6 libraries that need to
|
||||
be linked with before @samp{-lX11}, and add any found to the output
|
||||
variable @code{X_PRE_LIBS}.
|
||||
This macro also checks for special libraries that some systems need in
|
||||
order to compile X programs. It adds any that the system needs to
|
||||
output variable @code{X_EXTRA_LIBS}. And it checks for special X11R6
|
||||
libraries that need to be linked with before @samp{-lX11}, and adds any
|
||||
found to the output variable @code{X_PRE_LIBS}.
|
||||
|
||||
@c This is an incomplete kludge. Make a real way to do it.
|
||||
@c If you need to check for other X functions or libraries yourself, then
|
||||
@c after calling this macro, add the contents of @code{X_EXTRA_LIBS} to
|
||||
@c @code{LIBS} temporarily, like this:
|
||||
@end defmac
|
||||
|
||||
@defmac AC_SYS_LONG_FILE_NAMES
|
||||
@ -4044,7 +4052,7 @@ is used as a prefix. Otherwise, no program name transformation is done.
|
||||
@end defmac
|
||||
|
||||
@menu
|
||||
* Transformation Options:: @code{configure} options to transforme names.
|
||||
* Transformation Options:: @code{configure} options to transform names.
|
||||
* Transformation Examples:: Sample uses of transforming names.
|
||||
* Transformation Rules:: @file{Makefile} uses of transforming names.
|
||||
@end menu
|
||||
@ -4456,7 +4464,7 @@ might wrongly assume that all source files are in one big directory
|
||||
tree, or the Imake configuration might assume one compiler whereas the
|
||||
package or the installer needs to use another, or there might be a
|
||||
version mismatch between the Imake expected by the package and the Imake
|
||||
suported by the host. These problems are much rarer with Autoconf,
|
||||
supported by the host. These problems are much rarer with Autoconf,
|
||||
where each package comes with its own independent configuration
|
||||
processor.
|
||||
|
||||
@ -4524,7 +4532,7 @@ in a particular package's source directory), you must rename it to
|
||||
@file{acsite.m4}. @xref{Invoking autoconf}.
|
||||
|
||||
If you distribute @file{install.sh} with your package, rename it to
|
||||
@file{install-sh} so @code{make} builtin rules won't inadvertantly
|
||||
@file{install-sh} so @code{make} builtin rules won't inadvertently
|
||||
create a file called @file{install} from it. @code{AC_PROG_INSTALL}
|
||||
looks for the script under both names, but it is best to use the new name.
|
||||
|
||||
|
@ -90,15 +90,16 @@ all: ${SCRIPTS}
|
||||
|
||||
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 --output=$@
|
||||
$(MAKEINFO) -I$(srcdir) $(srcdir)/autoconf.texi --no-split --output=$@
|
||||
|
||||
INSTALL: install.texi
|
||||
$(MAKEINFO) -I$(srcdir) $(srcdir)/install.texi --output=$@ \
|
||||
--no-headers --no-validate
|
||||
|
||||
standards.info: standards.texi make-stds.texi
|
||||
$(MAKEINFO) -I$(srcdir) $(srcdir)/standards.texi --output=$@
|
||||
$(MAKEINFO) -I$(srcdir) $(srcdir)/standards.texi --no-split --output=$@
|
||||
|
||||
dvi: autoconf.dvi @standards_dvi@
|
||||
|
||||
@ -142,15 +143,17 @@ install: all $(M4FILES) acconfig.h installdirs install-info
|
||||
done; \
|
||||
else :; fi
|
||||
|
||||
# Don't cd, to avoid breaking install-sh references.
|
||||
install-info: info installdirs
|
||||
-test -f autoconf.info || cd $(srcdir); \
|
||||
for i in autoconf.info*; do \
|
||||
$(INSTALL_DATA) $$i $(infodir)/$$i; \
|
||||
done
|
||||
-test -f standards.info || cd $(srcdir); \
|
||||
for i in standards.info*; do \
|
||||
$(INSTALL_DATA) $$i $(infodir)/$$i; \
|
||||
done
|
||||
if test -f autoconf.info; then \
|
||||
for i in *.info*; do \
|
||||
$(INSTALL_DATA) $$i $(infodir)/$$i; \
|
||||
done; \
|
||||
else \
|
||||
for i in $(srcdir)/*.info*; do \
|
||||
$(INSTALL_DATA) $$i $(infodir)/`echo $$i | sed 's|^$(srcdir)/||'`; \
|
||||
done; \
|
||||
fi
|
||||
|
||||
uninstall:
|
||||
for p in $(SCRIPTS); do \
|
||||
|
@ -6,9 +6,9 @@
|
||||
@c @setchapternewpage odd
|
||||
@c %**end of header
|
||||
|
||||
@set EDITION 2.1.2
|
||||
@set VERSION 2.1.2
|
||||
@set UPDATED February 1995
|
||||
@set EDITION 2.1.3
|
||||
@set VERSION 2.1.3
|
||||
@set UPDATED March 1995
|
||||
|
||||
@iftex
|
||||
@finalout
|
||||
@ -240,7 +240,7 @@ Site Configuration
|
||||
|
||||
Transforming Program Names When Installing
|
||||
|
||||
* Transformation Options:: @code{configure} options to transforme names.
|
||||
* Transformation Options:: @code{configure} options to transform names.
|
||||
* Transformation Examples:: Sample uses of transforming names.
|
||||
* Transformation Rules:: @file{Makefile} uses of transforming names.
|
||||
|
||||
@ -1040,7 +1040,8 @@ recompilation. You should include the file @file{stamp-h.in} your
|
||||
package's distribution, so @code{make} will consider @file{config.h.in}
|
||||
up to date. On some old BSD systems, @code{touch} or any command that
|
||||
results in an empty file does not update the timestamps, so use a
|
||||
command like @code{date} as a workaround.
|
||||
command like @code{echo} as a workaround.
|
||||
@c Using @code{date} would cause needless CVS conflicts.
|
||||
|
||||
@example
|
||||
@group
|
||||
@ -1052,7 +1053,7 @@ $@{srcdir@}/config.h.in: stamp-h.in
|
||||
$@{srcdir@}/stamp-h.in: configure.in aclocal.m4 acconfig.h \
|
||||
config.h.top config.h.bot
|
||||
cd $@{srcdir@} && autoheader
|
||||
date > $@{srcdir@}/stamp-h.in
|
||||
echo timestamp > $@{srcdir@}/stamp-h.in
|
||||
|
||||
config.h: stamp-h
|
||||
stamp-h: config.h.in config.status
|
||||
@ -1066,10 +1067,10 @@ config.status: configure
|
||||
@end group
|
||||
@end example
|
||||
|
||||
In addition, you should pass @samp{date > stamp-h} in the @var{extra-cmds}
|
||||
argument to @code{AC_OUTPUT}, so @file{config.status} will ensure that
|
||||
@file{config.h} is considered up to date. @xref{Output}, for more
|
||||
information about @code{AC_OUTPUT}.
|
||||
In addition, you should pass @samp{echo timestamp > stamp-h} in the
|
||||
@var{extra-cmds} argument to @code{AC_OUTPUT}, so @file{config.status}
|
||||
will ensure that @file{config.h} is considered up to date.
|
||||
@xref{Output}, for more information about @code{AC_OUTPUT}.
|
||||
|
||||
@xref{Invoking config.status}, for more examples of handling
|
||||
configuration-related dependencies.
|
||||
@ -1873,7 +1874,9 @@ If @file{vfork.h} is found, define @code{HAVE_VFORK_H}. If a working
|
||||
@code{vfork} is not found, define @code{vfork} to be @code{fork}. This
|
||||
macro checks for several known errors in implementations of @code{vfork}
|
||||
and considers the system to not have a working @code{vfork} if it
|
||||
detects any of them.
|
||||
detects any of them. It is not considered to be an implementation error
|
||||
if a child's invocation of @code{signal} modifies the parent's signal
|
||||
handler, since child processes rarely change their signal handlers.
|
||||
@end defmac
|
||||
|
||||
@defmac AC_FUNC_VPRINTF
|
||||
@ -2517,16 +2520,21 @@ otherwise set it to the empty string.
|
||||
@ovindex X_LIBS
|
||||
@ovindex X_EXTRA_LIBS
|
||||
@ovindex X_PRE_LIBS
|
||||
An enhanced version of @code{AC_PATH_X}. Add the C compiler flags that
|
||||
An enhanced version of @code{AC_PATH_X}. It adds the C compiler flags that
|
||||
X needs to output variable @code{X_CFLAGS}, and the X linker flags to
|
||||
@code{X_LIBS}. If X is not available, add @samp{-DX_DISPLAY_MISSING} to
|
||||
@code{X_LIBS}. If X is not available, adds @samp{-DX_DISPLAY_MISSING} to
|
||||
@code{X_CFLAGS}.
|
||||
|
||||
Also check for special libraries that some systems need in order to
|
||||
compile X programs. Add any that the system needs to output variable
|
||||
@code{X_EXTRA_LIBS}. And check for special X11R6 libraries that need to
|
||||
be linked with before @samp{-lX11}, and add any found to the output
|
||||
variable @code{X_PRE_LIBS}.
|
||||
This macro also checks for special libraries that some systems need in
|
||||
order to compile X programs. It adds any that the system needs to
|
||||
output variable @code{X_EXTRA_LIBS}. And it checks for special X11R6
|
||||
libraries that need to be linked with before @samp{-lX11}, and adds any
|
||||
found to the output variable @code{X_PRE_LIBS}.
|
||||
|
||||
@c This is an incomplete kludge. Make a real way to do it.
|
||||
@c If you need to check for other X functions or libraries yourself, then
|
||||
@c after calling this macro, add the contents of @code{X_EXTRA_LIBS} to
|
||||
@c @code{LIBS} temporarily, like this:
|
||||
@end defmac
|
||||
|
||||
@defmac AC_SYS_LONG_FILE_NAMES
|
||||
@ -4044,7 +4052,7 @@ is used as a prefix. Otherwise, no program name transformation is done.
|
||||
@end defmac
|
||||
|
||||
@menu
|
||||
* Transformation Options:: @code{configure} options to transforme names.
|
||||
* Transformation Options:: @code{configure} options to transform names.
|
||||
* Transformation Examples:: Sample uses of transforming names.
|
||||
* Transformation Rules:: @file{Makefile} uses of transforming names.
|
||||
@end menu
|
||||
@ -4456,7 +4464,7 @@ might wrongly assume that all source files are in one big directory
|
||||
tree, or the Imake configuration might assume one compiler whereas the
|
||||
package or the installer needs to use another, or there might be a
|
||||
version mismatch between the Imake expected by the package and the Imake
|
||||
suported by the host. These problems are much rarer with Autoconf,
|
||||
supported by the host. These problems are much rarer with Autoconf,
|
||||
where each package comes with its own independent configuration
|
||||
processor.
|
||||
|
||||
@ -4524,7 +4532,7 @@ in a particular package's source directory), you must rename it to
|
||||
@file{acsite.m4}. @xref{Invoking autoconf}.
|
||||
|
||||
If you distribute @file{install.sh} with your package, rename it to
|
||||
@file{install-sh} so @code{make} builtin rules won't inadvertantly
|
||||
@file{install-sh} so @code{make} builtin rules won't inadvertently
|
||||
create a file called @file{install} from it. @code{AC_PROG_INSTALL}
|
||||
looks for the script under both names, but it is best to use the new name.
|
||||
|
||||
|
@ -51,7 +51,7 @@ dnl
|
||||
divert(-1)dnl Throw away output until AC_INIT is called.
|
||||
changequote([, ])
|
||||
|
||||
define(AC_ACVERSION, 2.1.2)
|
||||
define(AC_ACVERSION, 2.1.3)
|
||||
|
||||
dnl Some old m4's don't support m4exit. But they provide
|
||||
dnl equivalent functionality by core dumping because of the
|
||||
@ -889,9 +889,7 @@ fi
|
||||
|
||||
dnl AC_CACHE_SAVE()
|
||||
define(AC_CACHE_SAVE,
|
||||
[if test -w $cache_file; then
|
||||
echo "updating cache $cache_file"
|
||||
cat > $cache_file <<\EOF
|
||||
[cat > $cache_file.$$ <<\EOF
|
||||
# This file is a shell script that caches the results of configure
|
||||
# tests run on this system so they can be shared between configure
|
||||
# scripts and configure runs. It is not useful on other systems.
|
||||
@ -913,11 +911,19 @@ dnl Allow a site initialization script to override cache values.
|
||||
# and sets the high bit in the cache file unless we assign to the vars.
|
||||
(set) 2>&1 |
|
||||
sed -n "s/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=\${\1='\2'}/p" \
|
||||
>> $cache_file
|
||||
>> $cache_file.$$
|
||||
changequote([, ])dnl
|
||||
if cmp -s $cache_file $cache_file.$$; then
|
||||
:
|
||||
else
|
||||
echo "not updating unwritable cache $cache_file"
|
||||
if test -w $cache_file; then
|
||||
echo "updating cache $cache_file"
|
||||
cat $cache_file.$$ > $cache_file
|
||||
else
|
||||
echo "not updating unwritable cache $cache_file"
|
||||
fi
|
||||
fi
|
||||
rm -f $cache_file.$$
|
||||
])
|
||||
|
||||
dnl The name of shell var CACHE-ID must contain `_cv_' in order to get saved.
|
||||
@ -1471,9 +1477,12 @@ AC_DEFUN(AC_CHECK_FUNC,
|
||||
[AC_MSG_CHECKING([for $1])
|
||||
AC_CACHE_VAL(ac_cv_func_$1,
|
||||
[AC_TRY_LINK(
|
||||
[/* This header should be one that does not declare any functions.
|
||||
Such declarations can conflict with char $1(); below. */
|
||||
#include <errno.h> /* Arbitrary system header to define __stub macros. */
|
||||
dnl Don't include <ctype.h> because on OSF/1 3.0 it includes <sys/types.h>
|
||||
dnl which includes <sys/select.h> which contains a prototype for
|
||||
dnl select. Similarly for bzero.
|
||||
[/* System header to define __stub macros and hopefully few prototypes,
|
||||
which can conflict with char $1(); below. */
|
||||
#include <assert.h>
|
||||
/* Override any gcc2 internal prototype to avoid an error. */
|
||||
]ifelse(AC_LANG, CPLUSPLUS, [#ifdef __cplusplus
|
||||
extern "C"
|
||||
|
@ -400,6 +400,9 @@ AC_CACHE_VAL(ac_cv_path_install,
|
||||
done
|
||||
IFS="$ac_save_ifs"
|
||||
# As a last resort, use the slow shell script.
|
||||
dnl FIXME We probably shouldn't cache a path within a source directory,
|
||||
dnl because that will break other packages using the cache if
|
||||
dnl that directory is removed.
|
||||
test -z "$ac_cv_path_install" && ac_cv_path_install="$ac_install_sh"])dnl
|
||||
INSTALL="$ac_cv_path_install"
|
||||
fi
|
||||
@ -925,19 +928,17 @@ AC_DEFUN(AC_FUNC_VFORK,
|
||||
AC_CHECK_HEADER(vfork.h, AC_DEFINE(HAVE_VFORK_H))
|
||||
AC_MSG_CHECKING(for working vfork)
|
||||
AC_CACHE_VAL(ac_cv_func_vfork,
|
||||
[AC_REQUIRE([AC_TYPE_SIGNAL])
|
||||
AC_TRY_RUN([/* Thanks to Paul Eggert for this test. */
|
||||
[AC_TRY_RUN([/* Thanks to Paul Eggert for this test. */
|
||||
#include <stdio.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <signal.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#ifdef HAVE_VFORK_H
|
||||
#include <vfork.h>
|
||||
#endif
|
||||
/* On sparc systems, changes by the child to local and incoming
|
||||
/* On some sparc systems, changes by the child to local and incoming
|
||||
argument registers are propagated back to the parent.
|
||||
The compiler is told about this with #include <vfork.h>,
|
||||
but some compilers (e.g. gcc -O) don't grok <vfork.h>.
|
||||
@ -962,16 +963,12 @@ sparc_address_test (arg) int arg;
|
||||
}
|
||||
}
|
||||
}
|
||||
static int signalled;
|
||||
static RETSIGTYPE catch (s) int s; { signalled = 1; }
|
||||
main() {
|
||||
pid_t parent = getpid ();
|
||||
pid_t child;
|
||||
|
||||
sparc_address_test ();
|
||||
|
||||
signal (SIGINT, catch);
|
||||
|
||||
child = vfork ();
|
||||
|
||||
if (child == 0) {
|
||||
@ -979,7 +976,7 @@ main() {
|
||||
This test uses lots of local variables, at least
|
||||
as many local variables as main has allocated so far
|
||||
including compiler temporaries. 4 locals are enough for
|
||||
gcc 1.40.3 on a sparc, but we use 8 to be safe.
|
||||
gcc 1.40.3 on a Solaris 4.1.3 sparc, but we use 8 to be safe.
|
||||
A buggy compiler should reuse the register of parent
|
||||
for one of the local variables, since it will think that
|
||||
parent can't possibly be used any more in this routine.
|
||||
@ -994,12 +991,6 @@ main() {
|
||||
|| p != p5 || p != p6 || p != p7)
|
||||
_exit(1);
|
||||
|
||||
/* On some systems (e.g. SunOS 5.2), if the parent is catching
|
||||
a signal, the child ignores the signal before execing,
|
||||
and the parent later receives that signal, the parent dumps core.
|
||||
Test for this by ignoring SIGINT in the child. */
|
||||
signal (SIGINT, SIG_IGN);
|
||||
|
||||
/* On some systems (e.g. IRIX 3.3),
|
||||
vfork doesn't separate parent from child file descriptors.
|
||||
If the child closes a descriptor before it execs or exits,
|
||||
@ -1022,10 +1013,6 @@ main() {
|
||||
/* Did the vfork/compiler bug occur? */
|
||||
|| parent != getpid()
|
||||
|
||||
/* Did the signal handling bug occur? */
|
||||
|| kill(parent, SIGINT) != 0
|
||||
|| signalled != 1
|
||||
|
||||
/* Did the file descriptor bug occur? */
|
||||
|| fstat(fileno(stdout), &st) != 0
|
||||
);
|
||||
|
Loading…
x
Reference in New Issue
Block a user