* configure.in: Do not preprocess src/Makefile.in.
(cpp_undefs, CPP_NEED_TRADITIONAL): Remove.
(AC_EGREP_CPP): Test no longer needed.
* configure: Regenerate.
* config.bat: Do not preprocess src/Makefile.in.
* make-dist: No more Makefile.c files.
* INSTALL, src/README: Makefiles are not preprocessed.
* src/Makefile.in, src/autodeps.mk, src/deps.mk, src/ns.mk:
Convert comments to Makefile format.
* lib-src/Makefile.in (distclean): No more Makefile.c.
* src/Makefile.in (bootstrap-clean): No more Makefile.c.
* admin/notes/cpp: Remove file.
* admin/quick-install-emacs (AVOID): No more Makefile.c files.
* etc/PROBLEMS, etc/MACHINES: Remove details of cpp problems which can
no longer occur.
* configure.in (NS_IMPL_GNUSTEP_INC, NS_IMPL_GNUSTEP_TEMACS_LDFLAGS)
(GNUSTEP_MAKEFILES): Remove.
(LD_SWITCH_SYSTEM_TEMACS): Move NS_IMPL_GNUSTEP_TEMACS_LDFLAGS
stuff to here.
* src/Makefile.in (NS_IMPL_GNUSTEP_INC, NS_IMPL_GNUSTEP_TEMACS_LDFLAGS):
Remove.
(TEMACS_LDFLAGS): Do not use NS_IMPL_GNUSTEP_TEMACS_LDFLAGS.
* msdos/sed1v2.inp (NS_IMPL_GNUSTEP_INC, NS_IMPL_GNUSTEP_TEMACS_LDFLAGS):
No longer present.
Comments:
See http://lists.gnu.org/archive/html/emacs-devel/2010-05/msg00846.html.
Nothing from gui.make was used at all in src/Makefile.in. The only
thing used from base.make was $CONFIG_SYSTEM_LIBS, but because we only
set shared _after_ sourcing base.make, it was always empty. We can
move the remaining flags, set in configure, to the standard variable
LD_SWITCH_SYSTEM_TEMACS.
* configure.in (LD_SWITCH_SYSTEM): Move some gnu-linux stuff...
(LD_SWITCH_SYSTEM_TEMACS): ... to here.
* src/Makefile.in (LD_SWITCH_SYSTEM_TEMACS): Move definition after some
variables it may reference.
* configure.in (LD_SWITCH_SYSTEM_EXTRA): Remove.
(LD_SWITCH_SYSTEM_TEMACS): Put darwin stuff from LD_SWITCH_SYSTEM_EXTRA
here instead.
* src/Makefile.in (LD_SWITCH_SYSTEM_EXTRA): Remove.
(TEMACS_LDFLAGS): Remove LD_SWITCH_SYSTEM_EXTRA.
* msdos/sed1v2.inp (LD_SWITCH_SYSTEM_EXTRA): No longer present.
* configure.in (ns_frag): New output file.
* src/Makefile.in (${ns_appdir}, ${ns_appbindir}Emacs, ns-app):
Move these rules to ns.mk.
* ns.mk: New file. Copyright years based on date of nextstep merge.
* msdos/sed1v2.inp(@ns_frag@): Edit to nothing.
* configure.in (OLDXMENU): Set to "nothing" if !HAVE_X11 || USE_GTK.
(OLDXMENU_TARGET): Set to empty if USE_GTK.
* src/Makefile.in (../src/$(OLDXMENU), $(OLDXMENU)): Always define rules.
* msdos/sed1x.inp (OLDXMENU): Replace any initial value.
* msdos/sed1v2.inp (OLDXMENU): Edit to "nothing".
* configure.in (cannot_dump): New output variable.
* src/Makefile.in (CANNOT_DUMP): New, set by configure.
(emacs${EXEEXT}, bootstrap-emacs${EXEEXT}): Use $CANNOT_DUMP.
* msdos/sed1v2.inp (CANNOT_DUMP): Edit to no.
* make-dist (src): Include *.mk.
* config.bat: Concatenate deps.mk onto the end of src/Makefile.
* configure.in (DEPFLAGS, MKDEPDIR): New output variables.
(deps_frag): New output file.
(AUTO_DEPEND): Remove this definition.
* src/Makefile.in (DEPDIR): New constant.
(DEPFLAGS): Set with configure, not cpp.
(MKDEPDIR): New, set by configure.
(.c.o, .m.o, ecrt0.o): Use $MKDEPDIR.
(clean): Use $DEPDIR.
(deps_frag): Include from configure.
Move static/dynamic dependency stuff to deps.mk/autodeps.mk.
* src/deps.mk, src/autodeps.mk: New files, extracted from Makefile.in.
* msdos/sed1v2.inp (DEPFLAGS, deps_frag): Edit to empty.
(MKDEPDIR): Edit to ':'.
* configure.in (LINKER, YMF_PASS_LDFLAGS): New output variables.
(ORDINARY_LINK): New AC_DEFINE.
(LIB_GCC): No need to set if ORDINARY_LINK.
* src/Makefile.in (LD, YMF_PASS_LDFLAGS): Set with configure, not cpp.
(GNULIB_VAR): Remove.
(LIBES): Use LIB_GCC instead of GNULIB_VAR.
* src/m/ibms390x.h (LINKER):
* src/m/macppc.h (LINKER) [GNU_LINUX]:
* src/s/aix4-2.h (ORDINARY_LINK):
* src/s/cygwin.h (LINKER):
* src/s/darwin.h (ORDINARY_LINK):
* src/s/gnu.h (ORDINARY_LINK):
* src/s/netbsd.h (LINKER):
* src/s/usg5-4.h (ORDINARY_LINK):
Move to configure.
* msdos/sed1v2.inp (LD): Edit to $(CC).
(YMF_PASS_LDFLAGS): Edit to `flags'.
* configure.in (POST_ALLOC_OBJ) [cygwin]: Omit vm-limit.o.
(POST_ALLOC_OBJ) [!cygwin]: Set to empty.
* src/Makefile.in (otherobj): Include $(VMLIMIT_OBJ) separately from
$(POST_ALLOC_OBJ).
* configure.in (REL_ALLOC): Unset on gnu, gnu-linux if DOUG_LEA_MALLOC.
(RALLOC_OBJ): New output variable.
* config.bat (RALLOC_OBJ): Edit to empty if sys_malloc.
* src/Makefile.in (RALLOC_OBJ): New, set by configure.
(rallocobj): Replace with the previous variable.
(otherobj): Use $RALLOC_OBJ.
* src/s/gnu.h (REL_ALLOC) [DOUG_LEA_MALLOC]:
* src/s/gnu-linux.h (REL_ALLOC) [DOUG_LEA_MALLOC]: Move undef to configure.
* msdos/sed1v2.inp (RALLOC_OBJ): Edit to ralloc.o.
* configure.in (GMALLOC_OBJ, VMLIMIT_OBJ): New output variables.
* config.bat (GMALLOC_OBJ, VMLIMIT_OBJ): Edit to empty if sys_malloc.
* src/Makefile.in (GMALLOC_OBJ, VMLIMIT_OBJ): New, set by configure.
(gmallocobj, vmlimitobj): Replace with previous two variables.
(otherobj): Use $GMALLOC_OBJ, $VMLIMIT_OBJ.
* msdos/sed1v2.inp (GMALLOC_OBJ): Edit to gmalloc.o.
(VMLIMIT_OBJ): Edit to vm-limit.o.
* configure.in (TEMACS_LDFLAGS2): New output variable.
* configure: Regenerate.
* msdos/sed1v2.inp (TEMACS_LDFLAGS2): Edit to $(LDFLAGS).
* src/Makefile.in (TEMACS_LDFLAGS2): New, set by configure.
(temacs${EXEEXT}): Combine the NS_IMPL_GNUSTEP case with the default.
* configure.in (NS_IMPL_GNUSTEP_TEMACS_LDFLAGS): New output variable.
(START_FILES): Set to empty if NS_IMPL_GNUSTEP.
(GNUSTEP_SYSTEM_HEADERS, GNUSTEP_SYSTEM_LIBRARIES): Do not output,
nothing uses.
* configure: Regenerate.
* src/Makefile.in (GNUSTEP_SYSTEM_LIBRARIES): Remove, unused.
(NS_IMPL_GNUSTEP_TEMACS_LDFLAGS): New, set by configure.
(LD) [NS_IMPL_GNUSTEP]: Set to $(CC) -rdynamic.
(temacs${EXEEXT}): Remove $LOCALCPP, never defined or referenced.
Make most of the NS_IMPL_GNUSTEP case the same as the default case.
* msdos/sed1v2.inp (GNUSTEP_SYSTEM_LIBRARIES): Remove.
(NS_IMPL_GNUSTEP_TEMACS_LDFLAGS): Edit to empty.
* configure.in (FONT_OBJ): Set to empty if !HAVE_X_WINDOWS.
* src/Makefile.in (FONT_DRIVERS): Remove, replace with $FONT_OBJ.
(obj, SOME_MACHINE_OBJECTS): Use $FONT_OBJ.
* msdos/sed1v2.inp (FONT_OBJ): Edit to empty for non-X case.
* msdos/sed1x.inp (FONT_OBJ): Edit to xfont.o for X case.
* src/emacs.c (emacs_version, emacs_copyright): New string
variables.
(Vemacs_version, Vemacs_copyright): New Lisp_Object variables.
(syms_of_emacs): Defvar them, and initialize them from the C
string variables.
(main): If initialization hasn't been done, print initial version
info from the C strings, instead of starting an interactive session.
* lisp/version.el (emacs-copyright, emacs-version): Don't define
here.
* configure.in: Look for version string in its new place.
* configure.in (GPM_MOUSE_SUPPORT): Remove.
(MOUSE_SUPPORT, TOOLTIP_SUPPORT, WINDOW_SUPPORT): New output variables.
(HAVE_WINDOW_SYSTEM, HAVE_MOUSE): Move out of AC_BOTTOM.
* src/Makefile.in (REAL_MOUSE_SUPPORT): New constant.
(GPM_MOUSE_SUPPORT): Now it's a constant.
(MOUSE_SUPPORT, TOOLTIP_SUPPORT, WINDOW_SUPPORT): Set with configure, not cpp.
* msdos/sed2x.inp (HAVE_WINDOW_SYSTEM): Define.
* msdos/sed1x.inp (TOOLTIP_SUPPORT): Edit to ${lispsource}tooltip.elc.
(WINDOW_SUPPORT): Edit to $(BASE_WINDOW_SUPPORT) $(X_WINDOW_SUPPORT).
* msdos/sed1v2.inp (MOUSE_SUPPORT): Edit to $(REAL_MOUSE_SUPPORT).
(TOOLTIP_SUPPORT, WINDOW_SUPPORT): Edit to empty.
* configure.in (NS_IMPL_GNUSTEP_INC): New output variable.
(GNUSTEP_MAKEFILES): Do not output.
* src/Makefile.in (@NS_IMPL_GNUSTEP_INC@): Use in place of #ifdef.
* msdos/sed1v2.inp (@NS_IMPL_GNUSTEP_INC@): Edit to nil.
* configure.in (OLDXMENU, LIBXMENU): Set to empty if !HAVE_MENUS.
* src/Makefile.in (OLDXMENU, LIBXMENU) [!HAVE_MENUS]:
Let configure set these variables (to empty) in this case as well.
* configure.in (LD_SWITCH_X_SITE, C_SWITCH_X_SITE): Do not define.
* src/Makefile.in (LD_SWITCH_X_SITE): Define as a variable, not via cpp.
(LIBX_BASE): Use $LD_SWITCH_X_SITE.
* nt/config.nt (LD_SWITCH_X_SITE, C_SWITCH_X_SITE): Remove undefs.
* msdos/sed1v2.inp: Comment.
* configure.in: Generate lib-src/Makefile directly, do not run cpp.
* config.bat: Do not run cpp on lib-src/Makefile.in.
* lib-src/Makefile.in: Convert comments to makefile format.
* admin/notes/cpp: lib-src/Makefile not preprocessed.
* configure.in (LIBS_SYSTEM): New output variable, replacing cpp.
* lib-src/Makefile.in (LIBS_SYSTEM) [!MSDOS]: Set with configure, not cpp.
(LIBS_SYSTEM) [MSDOS]: Use MSDOS_LIBS_SYSTEM.
(NOT_C_CODE): Remove, no longer used.
(config.h) [!MSDOS]: No longer include.
(LOADLIBES): Use LIBS_SYSTEM as a variable.
* src/Makefile.in (LIBS_SYSTEM): Set using configure, not cpp.
(LIBS_SYSTEM) [MSDOS]: Reset with MSDOS_LIBS_SYSTEM.
(LIBES): Use LIBS_SYSTEM as a variable.
* src/s/msdos.h (LIBS_SYSTEM): Rename to MSDOS_LIBS_SYSTEM. Always define.
* src/s/aix4-2.h (LIBS_SYSTEM):
* src/s/freebsd.h (LIBS_SYSTEM):
* src/s/hpux10-20.h (LIBS_SYSTEM):
* src/s/sol2-6.h (LIBS_SYSTEM):
* src/s/unixware.h (LIBS_SYSTEM):
Move to configure.
* msdos/sed1v2.inp, msdos/sed3v2.inp (LIBS_SYSTEM): Edit to empty.
* configure.in (HAVE_LIBNCURSES): New local variable.
(TERMINFO, LIBS_TERMCAP, TERMCAP_OBJ): New output variables,
replacing cpp in src/s/*.h and src/Makefile.in.
* src/Makefile.in (LIBS_TERMCAP): Set with configure, not cpp.
(TERMCAP_OBJ): New, set by configure, replacing termcapobj.
(termcapobj): Replace with TERMCAP_OBJ.
(otherobj): Use $TERMCAP_OBJ instead of $termcapobj.
(LIBES): Use LIBS_TERMCAP as a variable.
* src/s/freebsd.h (osreldate.h): No longer include, since this file
does not use __FreeBSD_version any more.
* srs/s/aix4-2.h (TERMINFO):
* srs/s/cygwin.h (TERMINFO):
* srs/s/darwin.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
* srs/s/freebsd.h (TERMINFO, LIBS_TERMCAP):
* srs/s/gnu-linux.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
* srs/s/gnu.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
* srs/s/hpux10-20.h (TERMINFO, LIBS_TERMCAP):
* srs/s/irix6-5.h (TERMINFO):
* srs/s/netbsd.h (LIBS_TERMCAP):
* srs/s/openbsd.h (TERMINFO, LIBS_TERMCAP):
* srs/s/sol2-6.h (LIBS_TERMCAP) [!TERMINFO]:
* srs/s/usg5-4.h (TERMINFO):
Move to configure.
* msdos/sed1v2.inp (LIBS_TERMCAP): Edit to empty.
(TERMCAP_OBJ): Edit to tparam.o.
* admin/CPP-DEFINES (LIBS_TERMCAP, TERMINFO): Remove.
* configure.in (LD_SWITCH_SYSTEM): Set with configure, not cpp.
Merges logic from src/s/* and src/Makefile.in.
(LD_SWITCH_SYSTEM_TEMACS): New output variable.
* src/Makefile.in (LD_SWITCH_SYSTEM): Set with configure, not cpp.
(LD_SWITCH_SYSTEM_EXTRA): New variable, set by configure.
(TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM and $LD_SWITCH_SYSTEM_EXTRA,
move out of cpp section.
* src/s/freebsd.h (LD_SWITCH_SYSTEM):
* src/s/gnu-linux.h (LD_SWITCH_SYSTEM):
* src/s/netbsd.h (LD_SWITCH_SYSTEM):
* admin/CPP-DEFINES: Remove LD_SWITCH_SYSTEM.