Previously the file was named m4/gl-comp.m4 due to DOS 8+3 restrictions,
even though the file's name in gnulib is m4/gnulib-comp.m4.
This had a problem when merging from gnulib, as the code temporarily
renamed it to the full name, causing problems when interrupted.
Now the file has its full name, with the idea that we will find
a solution for MS-DOS that does not affect the rest of Emacs.
* m4/gnulib-comp.m4: Rename from m4/gl-comp.m4.
* admin/merge-gnulib: Leave m4/gnulib-comp.m4's name alone.
* configure.in (LEIM_INSTALLDIR): Rename to leimdir, treat like lispdir.
* leim/Makefile.in (install_prefix): Remove.
(LEIM_INSTALLDIR): Rename to leimdir.
(install): Update for this change.
Putting it in a makefile has some problems with reflection, as
merging from gnulib updates 'configure', which can update the makefile.
Putting it in a standalone script breaks this loop.
* Makefile.in (gnulib_srcdir, $(gnulib_srcdir), DOS_gnulib_comp.m4)
(GNULIB_MODULES, GNULIB_TOOL_FLAGS, sync-from-gnulib):
Remove, moving the actions to the script admin/merge-gnulib.
* admin/merge-gnulib: New script, with actions moved here from
../Makefile.in.
* configure.in (machine): Do not set to 'vax', since src/m/vax.h
is being removed.
(AC_CHECK_FUNCS): Remove ftime.
* admin/CPP-DEFINES (HAVE_FTIME): Remove.
* nt/config.nt (HAVE_FTIME): Remove undef; not needed.
* src/m/vax.h: Remove; no longer needed since HAVE_FTIME is being removed.
* src/s/ms-w32.h (HAVE_FTIME): Remove; not needed.
This predates the use of changed.misc etc to serialize the leim build.
The leim Makefile used to set .NO_PARALLEL/.NOTPARALLEL for the same
reason, but has not done so for many years.
This only affects in-tree builds where you have several versions
emacs-24.1.50.1, .2, etc lying around.
* Makefile.in: (install-arch-indep): Delete etc/DOC*.
(install-doc): No more need to delete etc/DOC.
* configure.in (INSTALL_ARCH_INDEP_EXTRA): New output variable.
* Makefile.in (INSTALL_ARCH_INDEP_EXTRA): New, set by configure.
(install-arch-indep): Don't install-etc for self-contained ns builds.
A separate mkdir rule is not needed, since MKDIR_P is thread-safe.
* Makefile.in (install-arch-dep): Ensure bindir exists.
Drop mkdir dependency.
(install-arch-indep): Ensure docdir, infodir, mandir exist.
(install-leim): Drop mkdir dependency.
(mkdir): Remove most directories, now made in relevant rules.
* configure.in (etcdir): For a self-contained ns build,
set it to the appropriate values.
* Makefile.in (install-arch-dep): No need to move info/ any more.
* configure.in (ns_self_contained): New output variable.
* Makefile.in (ns_self_contained): New, set by configure.
(install-arch-dep): Use $ns_self_contained.
This is rather than installing it in one place then moving it.
* configure.in (archlibdir): Set it for self-contained ns builds.
(libexecdir): Don't expand it now (this is mainly cosmetic).
* Makefile.in (ns_appbindir, ns_appresdir):
Move them before things that may refer to them.
(install-arch-dep): No need to relocate self-contained ns libexec.
* lib-src/Makefile.in (ns_appbindir): New, set by configure.
(CPP_TEST_OPTIONS, NON_GNU_CPP, cc_specified, SPECIFIED_CFLAGS)
(SPECIFED_CPP, CPP, NON_GNU_CC, AC_PROG_CPP): Remove; not needed.
In particular we no longer need to fiddle with CPP, since we don't
use CPP specially any more.
(gl_EARLY): Invoke this after adjusting CC, so that it uses the
adjusted compiler.
(AC_PROG_INSTALL, AC_PROG_MKDIR_P, AC_PROG_RANLIB): Comment out,
since gl_EARLY and/or Autoconf already does these.
Eg, hydra builds have been failing for some time because (?) of this.
In gcc < 4.6, unrecognized -no-fo options just cause a warning.
In 4.6 and later, they cause an error.
* configure.in: (CPP): Do not unconditionally set it on Darwin.
Instead, try to test if -no-cpp-precomp is accepted.
(CPP_TEST_OPTIONS, SPECIFIED_CPP): New.
Fixes: debbugs:9755
* configure.in (AC_PROG_MKDIR_P): Call it, to set MKDIR_P.
(MKDEPDIR): Use $MKDIR_P.
* Makefile.in (MKDIR_P): New, set by configure.
(mkdir): Use $MKDIR_P.
* doc/emacs/Makefile.in (MKDIR_P): New, set by configure.
(mkinfodir): Use $MKDIR_P.
* doc/lispintro/Makefile.in (MKDIR_P): New, set by configure.
(mkinfodir): Use $MKDIR_P.
* doc/lispref/Makefile.in (MKDIR_P): New, set by configure.
(mkinfodir): Use $MKDIR_P.
* doc/misc/Makefile.in (MKDIR_P): New, set by configure.
(mkinfodir): Use $MKDIR_P.
* src/Makefile.in (MKDIR_P): New, set by configure.
* src/ns.mk (${ns_appdir}, ${ns_appbindir}Emacs): Use $MKDIR_P.
./lisp/simpl.ele never exists in the _build_ directory,
the Lisp files are always in the _source_ directory.
Even if they were not, it would be wrong to install just
*.el and *.elc, since there are subdirectories in lisp/.