be; hopefully noone will again see fit to gratuitously break this and not
make a change log entry. Optimized sed processing of Makefile.in and cpp
output; now preserves comments previously removed from the cpp input.
Eliminated temp file for cpp output.
Generate -U switches to undefine all identifiers that appear in the
directory name ${srcdir}; pass these to cpp.
(i860-*-sysv4): Renamed from i860-*-sysvr4.
(LIBS): Add test for existence of XSetWMProtocols.
(solaris): Set NON_GNU_CPP instead of CPP.
Set it for all solaris versions.
(mips-mips-riscos4*): Set NON_GNU_CC, not CC.
(after checking for GCC): If not GCC, and NON_GNU_CPP is set, set CPP.
Likewise for NON_GNU_CC and CC.
(mips-mips-riscos4*): Assign variable CC.
(checking ${with_gcc}): If "no", don't override CC if already set.
(CC): Initialize it as empty.
(Suns): Set CPP if *-solaris2.3*.
flags to configure. Create all Makefiles at configure time. Edit
special commands into config.status after src/Makefile.in is built
from src/Makefile. Don't AC_SUBST rip_paths or inst_paths.
Add * to end of all configuration alternatives.
(m68*-sony-newsos3*): New alternative.
For --help, use $PAGER if it is set.
(LIB_X11_LIB): Default to -lX11.
(mips-sgi-irix5.*): New alternative.
(m68*-hp-hpux*, hppa*-hp-hpux*): Recognize *.B8.* as hpux version 8.
(m68*-tektronix-bsd*): Fix typo in tek4300.
(AC_HAVE_FUNCS): Add ftime.
LD_SWITCH_X_SITE and assume --with-x11.
Only look for X11 files if we weren't told about a window system
or if we were told to use X11 but not told where.
Search the libraries from the s and/or m files when checking for
functions.
* configure.in: Remove any trailing slashes in prefix and exec_prefix.
* Makefile.in (YACC): New variable.
(lib-src/Makefile.in): Edit YACC into the makefile.
* Makefile.in (YACC): New variable, to be set by top-level Makefile.
the GCC shell variable. Instead, consult the machine and system
files for the values of C_OPTIMIZE_SWITCH and C_DEBUG_SWITCH, and
test __GNUC__ while we're at it.
* configure.in: Check to see if the system has -ldnet.
* Makefile.in: Accept that support.
* configure.in: Use the AC_PROG_INSTALL macro.
* Makefile.in (INSTALL): Variable removed.
(INSTALL_PROGRAM, INSTALL_DATA): Accept these values from configure.
* Makefile.in (SUBDIR_MAKEFILES): Add oldXMenu/Makefile to this
list.
(COPYDIR, COPYDESTS): Install files from both the etc directory in
the source tree and the etc directory in the object tree.
(${SUBDIR}): Pass the prefix variable down to submakes.
(everywhere): Use `sed', not `/bin/sed'. Not all systems have sed
in /bin.
(lib-src/Makefile, src/Makefile, oldXMenu/Makefile): Edit in
values for srcdir and VPATH.
(install): Add `v' flag to tar command. Make sure that `dir'
exists in ${srcdir}/info before copying it. Remember that the man
pages come from the source tree, not the object tree.
* configure.in: Remove remarks saying that the --srcdir option
doesn't work.
Create the etc directory in the object tree.
Recognize configuration names of the form *-sun-solaris*.
Recognize sunos5 and solaris as operating system names.
users to set.
* Makefile.in (CFLAGS): Let configure determine the default value
for this. Don't
have it default to DEFS.
(${SUBDIR}): Pass CFLAGS down to submakes, not DEFS.
(lib-src/Makefile, src/Makefile): Edit the default value for
CFLAGS into these files, not DEFS.
* configure.in (CFLAGS): Choose a default value for this - "-g"
normally, or "-g -O" if we're using GCC. Edit it into the
top-level Makefile.
* configure.in: When scanning the machine and system description
#include files, write their names to conftest.c properly.
* configure.in: In configuration name case for Apallos running
Domainios, set opsys, not opsysfile.
* configure.in: Use the autoconf AC_CONFIG_HEADER macro to produce
src/config.h, instead of AC_OUTPUT; the latter overwrites
src/config.h even when it hasn't changed, puts a makefile-style
comment at the top even though it's C code, and produces a
config.status script which doesn't do the job right.
* configure.in: Add AC_LN_S test, so we can tell whether or not we
can use a symbolic link to get the X Menu library into src.
* Makefile.in (LN_S): New variable.
(src/Makefile): Edit the value of LN_S into this makefile.
variable to scan the machine and system description files.
* configure.in: Use the AC_HAVE_HEADERS to check for sys/timeb.h,
so that getdate.y builds correctly.
* configure.in (tempcname): Change this to "conftest.c", so it will
work properly on systems with short filenames; this is the name
autoconf uses.
* configure.in: Also detect the availability of dup2 and
gethostname.
* configure.in: Use the AC_ALLOCA test.
* Makefile.in (ALLOCA): New variable, to be set by ./configure.
(lib-src/Makefile): Edit the value of ALLOCA into lib-src/Makefile.
* Makefile.in: Add autoconf cookies so that the configure
script can comment out sections of path variable definitions to
choose between the installable configuration and the run-in-place
configuration.
* configure.in: Add new option `--run-in-place', to select the
run-in-place path definitions.
* configure.in: Add a clause to the big configuration name case
for the NeXT machine.
subdirectory of ${x_includes}.
* configure.in: Check for gettimeofday function, for getdate.y.
Change `configure' to a mixture of custom code and autoconf stuff.
autoconf can't derive all the information we need, but we'd really
like to be able to take advantage of some of its tests, and its
file-editing facilities.
* configure.in: Renamed from configure.
Quote the sections of shell script we want copied literally to
the configure script.
(compile): Initialize this to make the autoconf macros' code happy.
Use AC_PROG_CC, AC_CONST, and AC_RETSIGTYPE instead of writing out
code to do their jobs.
Use autoconf to produce Makefile and src/config.h.
Remove the Makefile-style comment that autoconf places at the top
of src/config.h.
(config_h_opts): Removed - no longer necessary.
* Makefile.in (configname): Renamed to configuration.
(CONFIG_CFLAGS): Renamed to DEFS.
(CC, DEFS, C_SWITCH_SYSTEM, version, configuration): Adjusted to
get values via autoload @cookies@.
(libsrc_libs): Get this from autoconf. We used to do nothing
about this.
(${SUBDIR}): Pass DEFS to submakes instead of CONFIG_CFLAGS.
C_SWITCH_SYSTEM from the configuration files.
* configure: Extract C_SWITCH_SYSTEM from the machine and
system-dependent files, and save it in the top-level Makefile.
* Makefile.in (C_SWITCH_SYSTEM): New flag for configure to edit.
(lib-src/Makefile): Edit C_SWITCH_SYSTEM into lib-src/Makefile.
think these are dopey, but no less than three alpha testers, at
large sites, have said they have their X files installed in odd
places. Implement them by setting C_SWITCH_X_SITE and
LD_SWITCH_X_SITE in src/config.h.
* configure: When processing the name of the configure script,
collapse `././' to `./', but leave a single `./' prefix alone.
* configure: Doc fix.
* configure: Handle isc3.0 correctly.
from thinking it's a CSH script. Most systems will just use
/bin/sh to run it, which is what we're expecting; the only other
shells which might try to interpret it themselves are probably
Bourne-compatible.
may want to edit the values of the path variables.
Make path specification conform to GNU coding standards.
* configure (long_usage): Remove all traces of old arguments from
usage messages, and document the options we do accept in more
detail: -with-x... and --srcdir.
(options, boolean_opts): Deleted; we don't have enough options to
make this worthwhile.
(prefix, bindir, lisppath, datadir, libdir, lockdir): Deleted,
along with the code which supported them; these should be set as
arguments to the top-level make.
(config_h_opts): Since this no longer doubles as a list of option
names, make them upper case; this simplifies the code which uses
them to build the sed command to edit src/config.h. Change the
code which sets them.
(cc, g, O): Don't allow the user to set these using options; they
should be specified using `CC=' and `CFLAGS=' arguments to the
top-level make. Just choose reasonable default values for them,
and edit them into Makefile.in's default CC and CONFIG_CFLAGS
values.
(gnu_malloc, rel_alloc): Don't allow the user to set these using
options; use them whenever the configuration files say they're
possible.
Simplify the argument processing loop. Don't accept abbreviations
for option names; these might conflict with other configuration
options in the future.
Add some support for the `--srcdir' option. Check for the sources
in . and .. if `--srcdir' is omitted. If the directories we will
compile in don't exist yet, create them under the current directory.
Note that the rest of the build process doesn't really support
this.
Edit only the top Makefile. That should edit the others. Edit
into the makefile: `version', from lisp/version.el, `configname'
and `srcdir' from the configuration arguments, `CC' and
`CONFIG_CFLAGS' as guessed from the presence or absence of GCC in
the user's path, and LOADLIBES as gleaned from the system
description files.
Simplify the report generated; it doesn't need to include any
description of paths now.
Make `config.status' exec configure instead of just calling it, so
there's no harm in overwriting `config.status'.
* Makefile.in (version, configname): New variables, used to choose
the default values for datadir and libdir.
Path variables rearranged into two clearer groups:
- In the first group are the variables specified by the GNU coding
standards (prefix, bindir, datadir, statedir, libdir, mandir,
manext, infodir, and srcdir).
- In the second are the variables actually used for Emacs's paths
(lispdir, locallisppath, lisppath, buildlisppath, etcdir, lockdir,
archlibdir), which depend on the first category.
datadir and libdir default to directories under
${prefix}/lib/emacs instead of ${prefix}/emacs, by popular
demand.
etcdir and lispdir default to subdirectories of datadir.
archlibdir defaults to libdir.
The new installation tree is a bit deeper than it used to be, so
use the new make-path program in lib-src to build them all.
Always build a new src/paths.h.tmp and then move-if-change it to
src/paths.h, to avoid unnecessary rebuilds while responding to the
right changes.
Remove all mention of arch-lib. Run utility commands from
lib-src, and let the executables be copied into archlibdir when
Emacs is installed.
Add targets for src/Makefile, lib-src/Makefile, and
oldXMenu/Makefile, editing the values of the path variables into
them.
Let lib-src do its own installation.
(datadir): Default to putting data files under
${prefix}/lib/emacs/${version}, not /usr/local/emacs.
(emacsdir): Variable deleted; it would only be confusing to use.
(lispdir, etcdir): Default to ${datadir}/lisp.
(mkdir): Use make-path for this.
(lockdir): Do this in mkdir.
(Makefile): New target.
* configure (usage_message): Rename to long_usage.
Change the usage and help messages.
* configure: Initialize window_system, not indow_system.
* configure: Report which window system, compiler, and signal
handler return type we decide to use.
* configure: When editing parameters into lib-src/Makefile, change
the definition of CONFIG_CFLAGS instead of CFLAGS itself; CFLAGS
needs some other flags too.