Run autogen.sh after bootstrap-clean, to avoid bzr pull issues.
* INSTALL, README: Document autogen.sh.
* Makefile.in (Makefile): Mark it as precious, since it's updated
atomically.
(MAKE_CONFIG_STATUS): New macro.
(config.status, bootstrap): Use it. This causes 'make bootstrap'
to run config.status with the --recheck option, which is more
appropriate for a bootstrap.
(bootstrap): Run autogen.sh right after cleaning. Don't worry
about failures due to missing tools.
* autogen.sh: Exit with status 101 when failing due to missing tools.
* make-dist: Distribute autogen.sh.
Fixes: debbugs:12376
* make-dist [update]: Let autoreconf figure out what needs updating.
Use `make info-real'. leim/leim-list.el should always exist.
Check cd return value.
This script isn't used by Emacs, and I can't imagine anyone else is
using it any more either... From the commentary:
"This script is intended to be used to convert files with an
old-Emacs-style version history for use with VC (the Emacs 19
version-control interface), which likes to use RCS as its back end."
* lib-src/rcs-checkin: Remove file.
* lib-src/Makefile.in (INSTALLABLE_SCRIPTS, STAMP_INST_SCRIPTS):
Remove rcs-checkin.
(stamp-rcs-checkin): Remove.
* INSTALL, make-dist: Remove rcs-checkin.
* admin/quick-install-emacs (PUBLIC_LIBSRC_SCRIPTS): Remove rcs-checkin.
* doc/man/rcs-checkin.1: Remove.
* configure.in: Remove all mention of src/m/*.
(machine, machfile, M_FILE, config_machfile, and_machfile): Remove.
All uses removed.
(BITS_PER_CHAR, BITS_PER_SHORT, BITS_PER_INT, BITS_PER_LONG)
(BITS_PER_LONG_LONG): Move to src/lisp.h.
* lib/makefile.w32-in: Remove dependencies on
$(EMACS_ROOT)/src/m/intel386.h.
* make-dist: Don't make links to src/m.
* admin/CPP-DEFINES: Do not mention src/m/*.h.
(BITS_PER_EMACS_INT, BITS_PER_LONG, BITS_PER_CHAR)
(BITS_PER_SHORT, BITS_PER_INT): Remove.
* admin/MAINTAINERS: Remove src/m/.
* lib-src/makefile.w32-in: Remove dependencies on
$(EMACS_ROOT)/src/m/intel386.h.
* msdos/mainmake.v2 (TAGS tags): Don't look at $(CURDIR)/src/m/intel386.h.
* nt/config.nt: Do not include "m/intel386.h"; file was removed.
(BITS_PER_CHAR, BITS_PER_SHORT, BITS_PER_INT, BITS_PER_LONG):
Move to src/lisp.h.
(EMACS_INT_MAX): New macro.
This directory predates autoconf and is no longer needed nowadays.
Move its few remaining bits of functionality to where they're needed.
* src/m/README, src/m/alpha.h, src/m/amdx86-64.h, src/m/ia64.h, src/m/ibmrs6000.h:
* src/m/ibms390x.h, src/m/intel386.h, src/m/m68k.h, src/m/macppc.h:
* src/m/sparc.h, src/m/template.h: Remove.
* src/Makefile.in (M_FILE): Remove. All uses removed.
* src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS):
* src/lisp.h (USE_LSB_TAG):
* src/mem-limits.h (EXCEEDS_LISP_PTR):
Use VAL_MAX, not VALBITS, in #if.
* src/lisp.h (EMACS_INT_MAX): New macro, useful in #if.
(EMACS_UINT): Define unconditionally now.
(BITS_PER_CHAR, BITS_PER_SHORT, BITS_PER_INT, BITS_PER_LONG)
(BITS_PER_EMACS_INT): New constants, replacing
what used to be in config.h, but not useful in #if.
(GCTYPEBITS, VALBITS): Define unconditionally, since m/* files don't
define them any more.
(VAL_MAX): New macro.
(VALMASK): Use it.
* src/puresize.h (PURESIZE_RATIO): Use EMACS_INT_MAX, not
BITS_PER_EMACS_INT, in #if.
* src/s/aix4-2.h (BROKEN_FIONREAD, BROKEN_SIGAIO, BROKEN_SIGPTY)
(BROKEN_SIGPOLL): Move here from m/ibmrs6000.h, which was removed.
* src/s/gnu-linux.h (ULIMIT_BREAK_VALUE) [__i386__]:
* src/s/ms-w32.h (DATA_START):
Move here from removed file m/intel386.h.
* src/s/gnu.h (NLIST_STRUCT): Remove undef; 'configure' does this.
* src/s/irix6-5.h (_LP64): Remove; lisp.h no longer needs this.
make-dist (tempdir): Create `autogen'.
(msdos): Add depfiles.bat and inttypes.h.
(autogen): Put README, config.in, and Makefile.in ionto the
distribution, they are needed for the MS-DOS build.
msdos/sed3v2.inp (insrcdir): Comment out definition.
$(insrcdir): Edit into MS-DOS existence test.
* m4/largefile.m4: New file, so that Emacs does not mess up when
accessing files with large inode numbers in MacOS X 10.5 and later.
* m4/nocrash.m4: New file, to avoid triggering background debugger
and/or create core dumps during 'configure'.
* build-aux/move-if-change: Renamed from move-if-change.
* build-aux/snippet/arg-nonnull.h: Renamed from arg-nonnull.h.
* build-aux/snippet/c++defs.h: Renamed from c++defs.h.
* build-aux/snippet/warn-on-use.h: Renamed from warn-on-use.h.
* build-aux/snippet/_Noreturn.h: New file, for draft C1X _Noreturn.
* .bzrignore: The autogenerated files compile, config.guess,
config.sub, depcomp, install-sh, and missing are now in build-aux.
* Makefile.in (epaths-force, sync-from-gnulib):
move-if-change is now in build-aux.
(GNULIB_TOOL_FLAGS): Avoid threadlib; this is now a prerequisite
of gnulib's pthread_sigmask module, but Emacs doesn't need it.
(mkdir): install-sh is now in build-aux.
* config.bat: c++defs.h is now in build-aux/snippets.
* configure.in: Specify AC_CONFIG_AUX_DIR with build-aux (the
usual parameter).
* lib/gnulib.mk, m4/gl-comp.m4: Regenerate.
* lib/makefile.w32-in (ARG_NONNULL_H): arg-nonnull.h moved
to build-aux/snippet.
* lib/pthread_sigmask.c, lib/stdlib.in.h, m4/extensions.m4:
* m4/getopt.m4, m4/gnulib-common.m4, m4/pthread_sigmask.m4:
Merge from gnuilib. This fixes porting bugs on Cygwin, Irix, and
Solaris, enables MacOS extensions, and enables nocrash during
'configure'.
* make-dist: Adjust to new build-aux and build-aux/snippit dirs.
* admin/notes/copyright: The files compile, config.guess, config.sub,
depcomp, install-sh, missing, and move-if-change are now in the
new build-aux subdirectory. The files arg-nonnull.h, c++defs.h,
and warn-on-use.h are now in build-aux/snippets. New file
build-aux/snippets/_Noreturn.h.
* leim/Makefile.in (install): install-sh is now in build-aux.
* lib-src/Makefile.in ($(DESTDIR)${archlibdir}): install-sh moved
to build-aux.
* msdos/sedlibmk.inp (CONFIG_CLEAN_VPATH_FILES): Adjust to snippet moves
from top level to build-aux/snippet.
* src/Makefile.in (gl-stamp): move-if-change is now in build-aux.
* make-dist: Don't distribute test/.
* configure.in (OPT_MAKEFILES_IN): New output variable.
(AC_CONFIG_FILES): Conditionally include test/automated/Makefile.
* Makefile.in (OPT_MAKEFILES_IN): New, set by configure.
(SUBDIR_MAKEFILES_IN): Use $OPT_MAKEFILES_IN.
(check): Give an explicit error if test/ is not present.
Distribute every file under test/ that is under version control,
using patterns like *.el to capture files that are added later.
Without this change, "configure" would fail, because it would
attempt to build from a Makefile.in that was not distributed.
* nextstep/README: Move historical information to new file ../etc/NEXTSTEP.
* nextstep/AUTHORS: Merge into ./etc/NEXTSTEP and remove file.
* etc/NEXTSTEP: New file, extracted from ../nextstep/{AUTHORS,README}.
* make-dist: No more nextstep/AUTHORS.
* make-dist: Remove --compress. Check for the appropriate
gzip-like executable, and if not found, don't compress.
Check version number in README, don't change it.
Use find for nt/inc/*.h.
Eg: there are no symlinks in the tree for a long time
Check for version in emacsver.texi.
Clean up *~ etc files using a find at the end.
Add etc/srecode.
* doc/misc/Makefile.in (emacsdir): New variable.
($(infodir)/efaq): Pass -I $(emacsdir) to makeinfo.
* doc/misc/faq.texi (VER): Replace with EMACSVER from emacsver.texi.
* doc/lispref/Makefile.in (emacsdir): New variable.
(MAKEINFO): Add -I $emacsdir.
(dist): Copy emacsver.texi.
* doc/lispref/book-spine.texinfo, doc/lispref/elisp.texi:
* doc/lispref/vol2.texi, doc/lispref/vol1.texi:
Set EMACSVER by including emacsver.texi.
* doc/emacs/emacsver.texi.in: New file.
* doc/emacs/emacs.texi: Set EMACSVER by including emacsver.texi.
* doc/emacs/Makefile.in (distclean): Delete emacsver.texi.
(dist): Copy emacsver.texi.
* admin/admin.el (set-version): No need to act on doc/ files any more.
* configure.in (AC_OUTPUT): Add doc/emacs/emacsver.texi.
* make-dist: Include doc/emacs/*.texi.in.
* 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.
* 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 ':'.
(lisp): There are no *.dat or image files here any more.
(src): There are no *.s files here any more.
(etc/images, etc/images/*): Link to most regular files.
variable now defaults to Emacs's absolute file name, instead of
to "t".
* etc/PROBLEMS: Adjust tcsh advice for this.
* make-dist (EMACS): Exit and fail if the EMACS environment
variable is set to something other than an absolute file name.
* lisp/comint.el (comint-exec-1): Set EMACS to the full name of Emacs,
not to "t".
* lisp/progmodes/compile.el (compilation-start): Likewise.
* lisp/progmodes/idlwave.el (idlwave-rescan-asynchronously):
Don't use expand-file-name on invocation-directory, since this
might mishandle special characters in invocation-directory.
* man/faq.texi (Escape sequences in shell output): EMACS is now set
to Emacs's absolute file name, not to "t".
(^M in the shell buffer): Likewise.
* man/misc.texi (Interactive Shell): Likewise.
lisp/toolbar/tool-bar to lisp and "deleted" lisp/toolbar. The low
resolution images were placed in their own directory (low-color).
Replaced underscore (_) in filenames with dash (-) per convention
* make-dist: Create and populate etc/images/low-color.
* admin/FOR-RELEASE (DOCUMENTATION): Removed lisp/toolbar from list
since it's gone. Also marked mh-e as done.
* lisp/toolbar/attach.*, lisp/toolbar/cancel.*, lisp/toolbar/close.*:
* lisp/toolbar/copy.*, lisp/toolbar/cut.*, lisp/toolbar/diropen.*:
* lisp/toolbar/exit.*, lisp/toolbar/help.*, lisp/toolbar/home.*:
* lisp/toolbar/index.*, lisp/toolbar/info.*, lisp/toolbar/mail.*:
* lisp/toolbar/new.*, lisp/toolbar/open.*, lisp/toolbar/paste.*, *
* lisp/toolbar/preferences.*, lisp/toolbar/print.*, lisp/toolbar/save.*:
* lisp/toolbar/saveas.*, lisp/toolbar/search.*:
* lisp/toolbar/search-replace.*: lisp/toolbar/spell.*:
* lisp/toolbar/undo.*: Moved to etc/images.
* lisp/toolbar/lc-copy.*: Moved to etc/images/low-color/copy.*.
* lisp/toolbar/lc-cut.*: Moved to etc/images/low-color/cut.*.
* lisp/toolbar/lc-help.*: Moved to etc/images/low-color/help.*.
* lisp/toolbar/lc-home.*: Moved to etc/images/low-color/home.*.
* lisp/toolbar/lc-index.*: Moved to etc/images/low-color/index.*.
* lisp/toolbar/lc-new.*: Moved to etc/images/low-color/new.*.
* lisp/toolbar/lc-open.*: Moved to etc/images/low-color/open.*.
* lisp/toolbar/lc-paste.*: Moved to etc/images/low-color/paste.*.
* lisp/toolbar/lc-preferences.*: Moved to etc/images/low-color/preferences.*.
* lisp/toolbar/lc-print.*: Moved to etc/images/low-color/print.*.
* lisp/toolbar/lc-save.*: Moved to etc/images/low-color/save.*.
* lisp/toolbar/lc-saveas.*: Moved to etc/images/low-color/saveas.*.
* lisp/toolbar/lc-search.*: Moved to etc/images/low-color/search.*.
* lisp/toolbar/lc-spell.*: Moved to etc/images/low-color/spell.*.
* lisp/toolbar/lc-undo.*: Moved to etc/images/low-color/undo.*.
To conform with convention, the underscore (_) in the following image
names were replaced with dash (-) or (/) as appropriate.
* lisp/toolbar/back_arrow.*: Moved to etc/images/back-arrow.*.
* lisp/toolbar/fld_open.*: Moved to etc/images/fld-open.*.
* lisp/toolbar/fwd_arrow.*: Moved to etc/images/fwd-arrow.*.
* lisp/toolbar/jump_to.*: Moved to etc/images/jump-to.*.
* lisp/toolbar/left_arrow.*: Moved to etc/images/left-arrow.*.
* lisp/toolbar/right_arrow.*: Moved to etc/images/right-arrow.*.
* lisp/toolbar/up_arrow.*: Moved to etc/images/up-arrow.*.
* lisp/toolbar/lc-back_arrow.*.: Moved to etc/images/low-color/back-arrow.*.
* lisp/toolbar/lc-fwd_arrow.*.: Moved to etc/images/low-color/fwd-arrow.*.
* lisp/toolbar/lc-jump_to.*: Moved to etc/images/low-color/jump-to.*.
* lisp/toolbar/lc-left_arrow.*.: Moved to etc/images/low-color/left-arrow.*.
* lisp/toolbar/lc-right_arrow.*.: Moved to etc/images/low-color/right-arrow.*.
* lisp/toolbar/lc-up_arrow.*: Moved to etc/images/low-color/up-arrow.*.
* lisp/toolbar/mail_compose.*.: Moved to etc/images/mail/compose.*.
* lisp/toolbar/mail_send.*: Moved to etc/images/mail/send.*.
* lisp/info.el (info-tool-bar-map): Replaced underscores in image
names with dashes.
* lisp/makefile.w32-in (WINS): Removed toolbar.
* lisp/menu-bar.el: Replaced toolbar/tool-bar.el with tool-bar.el in
comment.
* lisp/tool-bar.el: Moved to lisp from lisp/toolbar. Now that
lisp/toolbar is empty, it should be deleted when folks run "cvs up
-P".
* etc/images/README: Incorporated the content of lisp/toolbar/README
now that all of the images are here.
* Makefile.in (AUTOCONF_INPUTS): New macro.
($(srcdir)/configure, $(srcdir)/src/stamp-h.in): Depend on it,
so that these files also depend on m4/getopt.m4.
* configure.in: Configure getopt by including m4/getopt.m4,
and configuring a getopt replacement if necessary.
* make-dist: Add m4 subdirectory. Unlink lib-src/getopt.h.
* m4/getopt.m4: New file.
* lib-src/Makefile.in (mostlyclean): Remove getopt.h, getopt.h-t.
(GETOPT_H): New macro, from gnulib.
(getopt.h): New rule, from gnulib.
(GETOPTOBJS): Now autoconfigured.
(GETOPTDEPS): getopt.h is now autoconfigured.
(getopt.o, getopt1.o): Depend on $(GETOPT_H), not ${srcdir}/getopt.h.
(getopt.o): Depend on ${srcdir}/gettext.h.
(movemail.o): Depend on $(GETOPT_H).
* lib-src/getopt.c, lib-src/getopt1.c: Sync from gnulib.
* lib-src/getopt_.h, lib-src/getopt_int.h, lib-src/gettext.h:
New files, from gnulib.
* lib-src/getopt.h: Removed (now is getopt_.h).
* nt/inc/gettext.h: Remove; no longer needed now that
lib-src/gettext.h exists.
* src/s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is
now part of lib-src.