1. 01 Apr, 2017 1 commit
    • Paul Eggert's avatar
      Simplify test dependency generation · ac2ca82e
      Paul Eggert authored
      Generate default dependencies by using GNU extensions to ‘make’
      rather than via a hacky auxiliary program and script.
      * .gitignore: Remove test/make-test-deps.mk.
      * test/Makefile.in (ELFILES, LOGFILES, TESTS):
      Use :=, not =, to avoid multiple redundant invocations of ‘find’.
      (test_template): Infer dependency directly instead of via
      make-test-deps.mk.
      (check-doit): Prepend ‘@’ to avoid excessively long ‘make’ output.
      (clean): No need to clean make-test-deps.mk.
      (make-test-deps.mk): Remove rule.
      * test/make-test-deps.emacs-lisp: Remove.
      ac2ca82e
  2. 17 Mar, 2017 2 commits
    • Paul Eggert's avatar
      Fixups for GNU Make switchover · 2f893509
      Paul Eggert authored
      This fixes some minor problems introduced in the recent switch to GNU
      Make, discovered by further testing.  Without some of these changes
      'make -j' would sometimes have race conditions caused by missing
      dependencies.  (Bug#26100)
      * .gitignore: Remove src/stamp-h.in, src/stamp-h1.
      * Makefile.in ($(MAKEFILE_NAME)): Depend on configure, not
      src/config.in, since the former's timestamp now represents
      the latter's.
      ($(srcdir)/configure): Use plain ./autogen.sh, for consistency
      with other autogen.sh invocations.
      ($(srcdir)/src/stamp-h.in):
      Remove rule, as this file is no longer created.
      * Makefile.in (top_distclean):
      * src/Makefile.in (bootstrap-clean):
      No need to remove stamp-h1, as that was an Automake byproduct
      and Automake is no longer in use.
      * lib/Makefile.in, src/Makefile.in:
      (AUTOCONF_INPUTS, $(top_srcdir)/configure): Remove.
      (../config.status, Makefile): Simplify by limiting dependencies
      to files we care about and files in the repository, and by
      using just one file to represent the timestamps on multiple
      targets updated by the same rule.
      * autogen.sh: Do not create or use src/stamp-h.in.
      Instead, have 'find' test the two output files directly.
      2f893509
    • Paul Eggert's avatar
      Switch from Automake to GNU Make · 65faa7bc
      Paul Eggert authored
      Emacs assumes GNU Make, and GNU Make has much of the functionality of
      Automake built-in.  The Emacs build process uses Automake primarily
      because Emacs uses some Gnulib code and Gnulib formerly required
      Automake.  Now that Gnulib no longer requires Automake, Emacs can
      stop using Automake and this should simplify Emacs maintenance
      in the future (Bug#26100).  Although this patch may look long, most of
      it is generated automatically: the changes to build-aux/config.guess,
      build-aux/config.sub, build-aux/install-sh, and lib/gnulib.mk.in are
      all done by admin/merge-gnulib.
      * .gitignore: Remove build-aux/ar-lib, build-aux/compile,
      build-aux/config.guess, build-aux/config.sub, build-aux/depcomp,
      build-aux/install-sh, build-aux/missing, and lib/Makefile.in,
      as they are no longer built by autogen.sh.
      Add lib/gnulib.mk, as it is now built by 'configure'.
      Remove nt/gnulib.mk, as it is no longer built by 'make'.
      * INSTALL.REPO, README, admin/make-tarball.txt:
      Remove mention of Automake.
      * Makefile.in (AUTOCONF, AUTOMAKE, AUTOHEADER, ACLOCAL, lib)
      (AUTOCONF_INPUTS, ACLOCAL_PATH, ACLOCAL_INPUTS)
      ($(srcdir)/aclocal.m4, AUTOMAKE_INPUTS)
      ($(srcdir)/lib/Makefile.in, $(srcdir)/nt/gnulib.mk, am--refresh):
      Remove.
      ($(MAKEFILE_NAME)): Depend on lib/gnulib.mk.in.
      ($(srcdir)/configure, $(srcdir)/src/stamp-h.in)
      ($(srcdir)/src/config.in):
      Use autogen.sh instead of doing it by hand.
      * admin/merge-gnulib (AVOIDED_MODULES, avoided_flags)):
      New vars, to simplify processing of avoided modules.
      (GNULIB_TOOL_FLAGS): Move --avoid flags into AVOIDED_MODULES.
      Add --gnu-make, and change makefile name to gnulib.mk.in.
      Copy config.guess, config.sub, and install-sh too, since
      Automake no longer does that for us.
      * admin/notes/copyright:
      * admin/update_autogen (genfiles):
      Update list of files.
      Remove hack for nt/gnulib.mk, a file that is no longer needed.
      * autogen.sh (progs): Remove Automake.
      (automake_min): Remove.
      Build aclocal.m4 so that autoreconf need not use aclocal.
      * build-aux/config.guess, build-aux/config.sub:
      * build-aux/install-sh:
      New files, copied from Gnulib.  These are now updated by
      admin/merge-gnulib instead by autogen.sh.
      * configure.ac (AC_PROG_MAKE_SET, ACLOCAL_PATH, AM_CONDITIONAL):
      Remove.
      (AM_INIT_AUTOMAKE, AM_SILENT_RULES): Remove call.
      (AC_PROG_CC_C_O): Call this instead of AM_PROG_CC_C_O.
      (BUILDING_FOR_WINDOWSNT, HYBRID_MALLOC_LIB): Remove; no longer needed.
      (--disable-silent-rules): New option, since Automake no longer
      does this for us.
      (AM_V, AM_DEFAULT_V): Set unconditionally, and do not bother
      with AM_SUBST_NOTMAKE.
      (AC_PROG_INSTALL): Add call.
      (MAKEINFO): Do not bother with the 'missing' program.
      (MAKEINFO, SYSTEM_TYPE): AC_SUBST.
      (AC_CONFIG_FILES): Add Makefile, lib/gnulib.mk.
      (SUBDIR_MAKEFILES): Remove duplication.
      * lib/Makefile.am: Remove, replacing with:
      * lib/Makefile.in: New file, with the old Makefile.am contents
      and with the following changes:
      (AUTOMAKE_OPTIONS, BUILT_SOURCES, CLEANFILES, EXTRA_DIST)
      (MOSTLYCLEANDIRS, MOSTLYCLEANFILES, noinst_LIBRARIES, SUFFIXES)
      (AM_CFLAGS, DEFAULT_INCLUDES, libegnu_a_SOURCES, libegnu_a_LIBADD)
      (EXTRA_libegnu_a_SOURCES, libegnu_a_SHORTNAME, libegnu_a_CPPFLAGS):
      Remove.
      (VPATH, abs_top_builddir, top_builddir, top_srcdir, all, AM_V_AR)
      (AM_V_CC, AM_V_GEN, AM_V_at, DEPDIR, DEPFLAGS, MKDEPDIR, SYSTEM_TYPE)
      (libgnu.a, libegnu.a, ETAGS, $(ETAGS), tags, TAGS, clean)
      (mostlyclean, distclean, bootstrap-clean, maintainer-clean):
      New macros and rules, since Automake no longer does them.
      Include ../nt/gnulib-cfg.mk if SYSTEM_TYPE is windows-nt,
      instead of including ../nt/gnulib.mk if BUILDING_FOR_WINDOWS_NT.
      Include dependency files if AUTO_DEPEND.
      (ALL_CFLAGS, AUTOCONF_INPUTS, libgnu_a_OBJECTS, libegnu_a_OBJECTS):
      New macros.
      (bootstrap-clean): Depend on distclean, not maintainer-clean,
      and remove gnulib.mk.
      (AUTOCONF_INPUTS, $(top_srcdir)/configure, ../config.status, Makefile):
      New macros and rules, copied from ../Makefile.in.
      ($(libegnu_a_OBJECTS), $(libgnu_a_OBJECTS)): Depend on BUILT_SOURCES.
      (.c.o, e-%.o): New generic rules.
      * lib/gnulib.mk: Remove.
      * lib/gnulib.mk.in: New file, which is built by autogen.sh
      and contains much of what used to be in lib/gnulib.mk.
      * m4/gnulib-common.m4: Copy from gnulib.
      * make-dist: Do not distribute build-aux/compile, build-aux/depcomp,
      build-aux/missing, build-aux/ar-lib, lib/Makefile.am, nt/gnulib.mk,
      nt/gnulib-modules-to-delete.cfg.  Distribute lib/Makefile.in,
      lib/gnulib.mk.in, and nt/gnulib-cfg.mk instead.
      * nt/Makefile.in (AM_V_GEN, am__v_GEN_, am__v_GEN_0)
      (am__v_GEN_1, ${srcdir}/gnulib.mk): Remove.
      * nt/gnulib-cfg.mk: New file, which supersedes ...
      * nt/gnulib-modules-to-delete.cfg: ... this file, which is removed.
      * src/Makefile.in (ACLOCAL_INPUTS): Remove.
      (AUTOCONF_INPUTS): Merge ACLOCAL_INPUTS into it.
      ($(top_srcdir)/configure, ../config.status, config.in Makefile):
      Defer to parent Makefile.
      65faa7bc
  3. 14 Mar, 2017 1 commit
    • Paul Eggert's avatar
      Merge from gnulib · fac0bb9c
      Paul Eggert authored
      This incorporates:
      2017-03-14 snippets: move unadjusted snippet sources to lib
      2017-03-14 gnulib-tool: fix typo in comment output
      2017-03-14 snippets: work around GNU Make 3.82 VPATH
      2017-03-13 gnulib-tool: minor --gnu-make fixups
      2017-03-12 gnulib-tool: new option --gnu-make
      * .gitignore: Remove lib/arg-nonnull.h, lib/c++defs.h,
      lib/warn-on-use.h.  Change exception from
      build-aux/snippet/_Noreturn.h to lib/_Noreturn.h.
      * admin/authors.el (authors-renamed-files-regexps):
      * admin/notes/copyright, make-dist:
      The snippet files moved from build-aux/snippet to lib.
      * lib/_Noreturn.h: Rename from build-aux/snippet/_Noreturn.h.
      * lib/arg-nonnull.h: Rename from build-aux/snippet/arg-nonnull.h.
      * lib/c++defs.h: Rename from build-aux/snippet/c++defs.h.
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      * lib/warn-on-use.h: Rename from build-aux/snippet/warn-on-use.h.
      fac0bb9c
  4. 03 Jan, 2017 1 commit
    • Eli Zaretskii's avatar
      Generate nt/gnulib.mk from lib/gnulib.mk · 10444dcf
      Eli Zaretskii authored
      This was proposed by Paul Eggert <eggert@cs.ucla.edu>,
      with the purpose of avoiding manual maintenance of
      nt/gnulib.mk.
      
      * nt/gnulib-modules-to-delete.cfg: New file.
      * nt/Makefile.in (AM_V_GEN, am__v_GEN_, am__v_GEN_0)
      (am__v_GEN_1): New variables.
      (${srcdir}/gnulib.mk): Rules to generate gnulib.mk from
      lib/gnulib.mk and list of modules in gnulib-modules-to-delete.cfg.
      
      * make-dist (nt): Add gnulib-modules-to-delete.cfg to the list of
      files to link.
      * configure.ac (GNULIB_MK): Compute the value according to $opsys.
      * autogen.sh: Create nt/gnulib.mk if it doesn't exist, before
      running autoreconf.
      * Makefile.in (gnulib_mk): New variable.
      ($(srcdir)/nt/gnulib.mk): Rule to produce it.
      (AUTOMAKE_INPUTS): Use $(gnulib_mk) instead of a literal file
      name.
      * .gitignore: Add nt/gnulib.mk.
      
      * src/w32.c (acl_errno_valid): Implement it here, as we no longer
      build the acl-permissions module from Gnulib.
      10444dcf
  5. 01 Jan, 2017 1 commit
  6. 15 Dec, 2016 1 commit
    • Paul Eggert's avatar
      Merge from gnulib · 5942af61
      Paul Eggert authored
      This incorporates:
      2016-12-14 xalloc-oversized: check for PTRDIFF_MAX too
      2016-12-12 fpending: port to native Windows with MSVC
      * .gitignore: Do not ignore lib/stdio-impl.h.
      * lib/fpending.c, lib/xalloc-oversized.h, m4/fpending.m4:
      Copy from gnulib.
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      * lib/stdio-impl.h:
      New file, copied from gnulib.
      * nt/gnulib.mk (EXTRA_DIST): Add stdio-impl.h.
      5942af61
  7. 15 Sep, 2016 1 commit
    • Paul Eggert's avatar
      Update from gnulib · 8f4b6a20
      Paul Eggert authored
      This incorporates:
      2016-09-15 stdint: support new _WIDTH macros
      2016-09-15 limits-h: new module
      2016-09-15 sys_types: avoid glibc 2.25 warnings about major()
      2016-09-15 extensions: port to more ISO C TSes
      2016-09-13 intprops: new macro TYPE_WIDTH
      2016-09-13 extensions: port to recent ISO C TRs
      * .gitignore: Add lib/limits.h.
      * doc/misc/texinfo.tex, lib/ftoastr.h, lib/intprops.h:
      * lib/stdint.in.h, m4/extensions.m4, m4/stdint.m4, m4/stdio_h.m4:
      * m4/sys_types_h.m4: Copy from gnulib.
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      * lib/limits.in.h, m4/limits-h.m4: New files, copie from gnulib.
      * nt/gnulib.mk: Merge changes from lib/gnulib.mk.
      8f4b6a20
  8. 02 May, 2016 1 commit
    • Paul Eggert's avatar
      Tweak .gitignore · fa51e91e
      Paul Eggert authored
      * .gitignore: Remove leim/changed.misc, leim/changed.tit,
      as these files are no longer created.  Add gmon.out, for
      -pg profiling.  Sort.
      fa51e91e
  9. 05 Jan, 2016 1 commit
    • Eli Zaretskii's avatar
      Fix fallout from merging emacs-25 branch in test/ · 6a311d20
      Eli Zaretskii authored
      * .gitignore: Update for the new place of biditest.txt.
      * test/automated/: Directory removed.  All files moved to their
      proper places.
      * test/etags/: Directory removed.  All files moved to their proper
      places.
      * test/automated/url-parse-tests.el: File removed; it was an exact
      copy of the same file in test/lisp/url/.
      * test/automated/url-expand-tests.el: Moved to test/lisp/url/.
      6a311d20
  10. 04 Jan, 2016 1 commit
  11. 01 Jan, 2016 1 commit
  12. 30 Nov, 2015 1 commit
    • Phillip Lord's avatar
      Tests now depend on source files · 0baf45db
      Phillip Lord authored
       * test/Makefile.in: Include dependences from tests to source files.
       * test/make-test-deps.emacs-lisp: New file
       * .gitignore: Ignore generated make include file
      0baf45db
  13. 28 Nov, 2015 1 commit
  14. 24 Nov, 2015 1 commit
    • Phillip Lord's avatar
      Restore delete Makefiles and fix .gitignore. · a546a37f
      Phillip Lord authored
       * .gitignore: Update Makefiles to changed locations
       * test/lisp/progmodes/flymake-resources/Makefile,
         test/manual/etags/Makefile,
         test/manual/etags/make-src/Makefile,
         test/manual/indent/Makefile: Restored and moved to new location.
      a546a37f
  15. 19 Nov, 2015 2 commits
  16. 10 Nov, 2015 1 commit
    • Artur Malabarba's avatar
      * lisp/files.el (dir-locals-file): Allow wildcards · 2e848885
      Artur Malabarba authored
      (dir-locals-find-file, dir-locals-collect-variables)
      (dir-locals-read-from-file): Update accordingly.
      (hack-dir-local-variables): Rename a local variable.
      
      * lisp/files-x.el (modify-dir-local-variable): Update accordingly
      
      * lisp/help-fns.el (describe-variable): Update accordingly
      
      * .gitignore: Add .dir-locals?.el
      2e848885
  17. 14 Oct, 2015 1 commit
  18. 17 Jun, 2015 1 commit
    • Glenn Morris's avatar
      Generate char-script-table from Unicode source. (Bug#20789) · d67d49ce
      Glenn Morris authored
      * admin/unidata/Makefile.in (AWK): New, set by configure.
      (all): Add charscript.el.
      (blocks): New variable.
      (charscript.el, ${unidir}/charscript.el): New targets.
      (extraclean): Also remove generated charscript.el.
      
      * admin/unidata/blocks.awk: New script.
      
      * admin/unidata/Blocks.txt: New data file, from unicode.org.
      
      * lisp/international/characters.el: Load charscript.
      
      * src/Makefile.in (charscript): New variable.
      (${charscript}): New target.
      (${lispintdir}/characters.elc): Depend on charscript.elc.
      (temacs$(EXEEXT)): Depend on charscript.
      
      ; * admin/unidata/README: Mention Blocks.txt.
      
      ; * .gitignore: Add lisp/international/charscript.el.
      d67d49ce
  19. 03 Jun, 2015 2 commits
  20. 02 Jun, 2015 1 commit
    • Eli Zaretskii's avatar
      Minor tweaks for .gitignore · 98cb43fb
      Eli Zaretskii authored
      * .gitignore: Don't ignore versioned *.html and *.ps files.  Don't
      ignore admin/notes/tags that might be ignored as TAGS on
      case-insensitive filesystems.  (Bug#20710)
      98cb43fb
  21. 24 May, 2015 1 commit
    • Paul Eggert's avatar
      .gitignore tweaks · efa6f10a
      Paul Eggert authored
      * .gitignore: Ignore all *.stamp files.  Sort.
      Ignore [0-9]*.txt (commonly used name for git patches)
      and /vc-dwim-log-* (vc-dwim temporary).
      efa6f10a
  22. 23 May, 2015 1 commit
    • Glenn Morris's avatar
      Remove charset map files from repository, generate in first bootstrap · 9f89ea1f
      Glenn Morris authored
      * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
      (all): Create the stamp file.
      (extraclean): Delete the stamp file.
      * src/Makefile.in (lispintdir, charsets): New variables.
      (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
      New rules.
      (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
      * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
      * etc/charsets/*.map: Remove from repository.
      ; * admin/charsets/mapconv: Fix typo in output comment.
      ; * etc/charsets/README: Small update.
      ; * .gitignore: Update for charset changes.
      9f89ea1f
  23. 22 May, 2015 1 commit
    • Glenn Morris's avatar
      Generate admin/charsets Makefile via configure, and make more portable. · e7bc85db
      Glenn Morris authored
      * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
      (admin/charsets/Makefile): Generate it.
      * admin/charsets/Makefile.in: Rename from Makefile.
      (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
      New variables, set by configure.
      (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
      (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
      (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
      (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
      (TRANS_TABLE, CHARSETS): Add directory prefix to value.
      (all): Declare PHONY.
      (local): New PHONY target.
      (map_template): New template.  Use to define short PHONY aliases.
      (*.map): Add directory prefixes to targets and prerequisites.
      Respect make verbosity.
      (JISC6226.map): Replace non-portable sed append without newline.
      (install): Remove rule.
      (clean): Only delete temporary sedscript.
      (bootstrap-clean, distclean, maintainer-clean, extraclean)
      (totalclean): New PHONY rules.
      * admin/charsets/mapconv (BASE): Replace basename with expr.
      (FILE): Add "mapfiles" subdirectory.
      (AWK): New variable.  Use throughout in place of "awk".
      (main): Use "gunzip -c" in place of "zcat".
      Don't leave whitespace before "p", for older sed.
      * admin/charsets/mapfiles/PTCP154: Add final newline,
      to make older sed versions happy.
      ; * .gitignore: Ignore admin/charsets/Makefile.
      e7bc85db
  24. 17 May, 2015 1 commit
    • Glenn Morris's avatar
      * src/lisp.mk: Remove from repository and generate at build-time. · 46ea9379
      Glenn Morris authored
      * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
      (shortlisp_filter): New variable.
      (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
      (distclean): Remove lisp.mk.
      * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
      * lisp/loadup.el: Tweak layout to make it easier to parse.
      * make-dist: Do not distribute src/lisp.mk.
      46ea9379
  25. 12 May, 2015 1 commit
  26. 11 Apr, 2015 1 commit
  27. 07 Apr, 2015 1 commit
    • Paul Eggert's avatar
      Generate a ChangeLog file from commit logs · 23468561
      Paul Eggert authored
      * .gitignore: Add 'ChangeLog'.
      * build-aux/gitlog-to-changelog: New file, from Gnulib.
      * build-aux/gitlog-to-emacslog: New file.
      * CONTRIBUTE: Document the revised workflow.
      * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
      instead of just special cases.
      (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
      (ChangeLog, unchanged-history-files, change-history)
      (change-history-commit): New rules.
      * admin/admin.el (make-manuals-dist--1):
      Don't worry about doc/ChangeLog.
      * admin/authors.el: Add a FIXME.
      * admin/make-tarball.txt:
      * lisp/calendar/icalendar.el:
      * lisp/gnus/deuglify.el:
      * lisp/obsolete/gulp.el:
      * lwlib/README:
      Adjust to renamed ChangeLog history files.
      * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
      * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
      Remove obsolete discussion of merging ChangeLog files.
      New section "Maintaining ChangeLog history".
      * build-aux/git-hooks/pre-commit:
      Reject attempts to commit files named 'ChangeLog'.
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      * make-dist: Make and distribute top-level ChangeLog if there's a
      .git directory.  Distribute the new ChangeLog history files
      instead of scattered ChangeLog files.  Distribute the new files
      gitlog-to-changelog and gitlog-to-emacslog.
      Fixes: bug#19113
      23468561
  28. 01 Jan, 2015 2 commits
  29. 17 Dec, 2014 1 commit
  30. 16 Dec, 2014 1 commit
  31. 13 Dec, 2014 1 commit
    • Ted Zlatanov's avatar
      Merge from origin/emacs-24 · 28e0d0c9
      Ted Zlatanov authored
      bd6c4418 * simple.el (password-word-equivalents): Add "passcode", used for numeric secrets like PINs or RSA tokens.
      16d4c1cd A better fix for bug#19346
      82ec808f * .gitignore: Add !lib/std*.in.h, so as to not ignore the .in.h files.
      3cf7629f Git ignore lib/std*.h
      301a4014 Always define `gnutls-available-p' even if GnuTLS is not available.
      d76b9b2a Don't break example string between 2 lines (bug#19257)
      75b4857e Port commit-msg to mawk
      9ac03320 Improve commit-msg messages and autosquash
      0c2f254b Support overflow-newline-into-fringe together with word-wrap (bug#19300)
      935ee05f * net/tramp-sh.el (tramp-get-remote-path): Use a login shell in order to determine `tramp-own-remote-path'.
      c2db9393 python.el: Support interpreter paths with spaces
      d83f3299 ChangeLog fix
      0f9fbb92 Port commit-message checking to FreeBSD 9.
      3db1adac admin/MAINTAINERS: Update my interests and responsibilities.
      6382f241 * .gitignore: Ignore autosave files.
      
      Conflicts:
      	ChangeLog
      	lisp/progmodes/python.el
      	src/gnutls.c
      28e0d0c9
  32. 12 Dec, 2014 2 commits
  33. 05 Dec, 2014 2 commits
  34. 01 Dec, 2014 1 commit