1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-12-12 09:28:24 +00:00
Commit Graph

408 Commits

Author SHA1 Message Date
Eli Zaretskii
10444dcf77 Generate nt/gnulib.mk from lib/gnulib.mk
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.
2017-01-03 17:46:40 +02:00
Paul Eggert
bcf244ef9b Merge from origin/emacs-25
2e2a806 Fix copyright years by hand
5badc81 Update copyright year to 2017
2017-01-01 01:10:47 -08:00
Paul Eggert
4f7a90bf6c Merge from origin/emacs-25
9adb101 Document 'describe-fontset'
229315c ; Add missing symbol quoting.
3d94931 Repair desktop restoration on text terminals
43022f9 Ignore forward-sexp-function in js-mode indentation code
b19fb49 Improve documentation of 'define-coding-system'
467768f Fix Bug#25162
6db78ae Fix a typo in define-abbrev-table
5f7d906 Bump makeinfo requirement from 4.7 to 4.13
442e2f6 Fixes related to select-enable-clipboard
e4ac450 Define struct predicate before acccesors
08decbd Doc fix for vc-git
5531e75 Further improve make-dist checking
953bf67 Improve previous make-dist change
129645a Make make-dist --snapshot do some sanity checks

# Conflicts:
#	lisp/menu-bar.el
2017-01-01 01:02:45 -08:00
Paul Eggert
5badc81c1c Update copyright year to 2017
Run admin/update-copyright.
2016-12-31 19:42:26 -08:00
Glenn Morris
75c9314cbf Quieten make-dist default operation
* make-dist: Add --verbose option.  Default to quieter operation.
2016-12-07 19:59:14 -05:00
Glenn Morris
5531e75385 Further improve make-dist checking
* make-dist: Print status messages when checking.
2016-12-07 19:45:48 -05:00
Glenn Morris
953bf67fbe Improve previous make-dist change
* make-dist: Let make check the info files more thoroughly.
2016-12-07 19:43:36 -05:00
Glenn Morris
129645a7a7 Make make-dist --snapshot do some sanity checks
* make-dist: Snapshot mode no longer disables checks.
Checks now includes checks for freshness.  (Bug#25084)
Checks now exits with an error if problems were found.
2016-12-07 19:13:05 -05:00
Paul Eggert
1aebe99145 Do not require that .git be a directory
Problem reportyed by Phillip Lord.
* admin/update_autogen, autogen.sh, build-aux/gitlog-to-emacslog:
* configure.ac, make-dist:
Do not require that .git be a directory, as 'git worktree' makes
it a file and not a directory.
2016-04-13 11:12:39 -07:00
Glenn Morris
74ebd4a791 * make-dist: Updates related to nt/. 2016-02-02 16:19:15 -05:00
Glenn Morris
737193a44c * make-dist: Add modules/. 2016-02-02 16:08:03 -05:00
Glenn Morris
3696bf2f63 * make-dist: Update for super-special file that can't live in etc/. 2016-02-02 15:53:01 -05:00
Paul Eggert
0e963201d0 Update copyright year to 2016
Run admin/update-copyright.
2016-01-01 01:34:24 -08:00
Paul Eggert
29dfca2355 Use ‘echo’ safely with ‘\’ or leading ‘-’
POSIX says that ‘echo FOO’ produces implementation-defined output
if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
behavior in that case.
* Makefile.in (removenullpaths): Remove.
(epaths-force): Rewrite to avoid the need for ‘echo’.
(install-etc): Be clearer about escaping the shell metacharacters
‘\’ and ‘$’.
* Makefile.in (install-arch-indep, install-etcdoc):
* admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
* admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
* configure.ac, lib-src/rcs2log, make-dist:
* src/Makefile.in (lisp.mk):
Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
if $foo can contain arbitrary characters.
* lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
* doc/lispref/two-volume.make (vol1.pdf):
* test/etags/make-src/Makefile (web ftp publish):
Use ‘printf’ rather than ‘echo -e’.
2015-10-10 18:11:27 -07:00
Eli Zaretskii
8db2b2a7d3 Remove files used by the old MS-Windows specific build procedure
* nt/configure.bat: Remove everything except the blurb about the
new build procedure.

* make-dist: Remove references to makefile.w32-in in various
directories, and to files in nt/ that were deleted.

* etc/NEWS: Mention the fact that the files were dropped.
2015-08-15 10:56:51 +03:00
Glenn Morris
46ea93792d * src/lisp.mk: Remove from repository and generate at build-time.
* 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.
2015-05-16 17:52:27 -07:00
Glenn Morris
f0352ebdf0 * make-dist: Abort if "make ChangeLog" fails. Add "--no-changelog". 2015-05-11 20:29:06 -04:00
Glenn Morris
63bee24f74 * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
* Makefile.in (ChangeLog): No longer pass "distprefix".
* make-dist: Update "make ChangeLog" syntax for the above change.
2015-05-08 21:15:48 -04:00
Paul Eggert
9099d45df7 Quote 'like this' in top-level files
* CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
Prefer to single-quote 'like this' (instead of the older style
`like this').
* configure.ac: Fix some space-before-tab problems that 'git commit'
complained about.
2015-04-19 14:44:50 -07:00
Paul Eggert
2346856168 Generate a ChangeLog file from commit logs
* .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
2015-04-07 00:00:55 -07:00
Paul Eggert
7e09ef09a4 Update copyright year to 2015
Run admin/update-copyright.
2015-01-01 14:26:41 -08:00
Glenn Morris
49daed6051 Remove lib-src/grep-changelog
Ref: http://lists.gnu.org/archive/html/emacs-devel/2014-12/msg00145.html

* lib-src/grep-changelog: Remove file.

* lib-src/Makefile.in (INSTALLABLE_SCRIPTS): Remove.
(all, install, uninstall): Remove INSTALLABLE_SCRIPTS.

* doc/man/grep-changelog.1: Remove file.

* make-dist: No more lib-src/grep-changelog.

* INSTALL: No longer mention grep-changelog.

* admin/quick-install-emacs (PUBLIC_LIBSRC_SCRIPTS): Remove, and all uses.

* admin/authors.el (authors-valid-file-names): Add grep-changelog.

* etc/NEWS: Mention this.
2014-12-13 18:38:21 -08:00
Glenn Morris
84e2f13cd5 Further reduce number of versioned files storing Emacs version number.
* configure.ac (comma_version, comma_space_version) [mingw32]:
New output variables.
(nt/emacs.rc, nt/emacsclient.rc) [mingw32]: New output files.

* make-dist: Update nt/ for *.rc -> *.rc.in changes.

* nt/emacs.rc.in, nt/emacsclient.rc.in: Rename from nt/emacs.rc, emacsclient.rc.
Let configure generate the real files, and set the version numbers.

* lib-src/Makefile.in (emacsclient.res): Update deps for nt/emacsclient.rc
now being in the build directory, not the source directory.

* nt/Makefile.in (distclean): Delete *.rc.
(emacs.res): Update deps for nt/emacsclient.rc now being in the
build directory, not the source directory.

* admin/admin.el (set-version): No more need to update nt/*.rc.

* admin/authors.el (authors-renamed-files-alist): Add .rc.in files.
2014-11-22 14:07:48 -08:00
Glenn Morris
be1f31616a Further reduce the number of versioned files storing the version number
* configure.ac (doc/man/emacs.1): Generate it.

* Makefile.in (top_bootclean): Remove doc/man/emacs.1.

* make-dist: Do not distribute doc/man/emacs.1.

* admin/admin.el (set-version): No need to update doc/man/emacs.1.

* doc/man/emacs.1.in: Rename from emacs.1.

* .bzrignore: Add doc/man/emacs.1.
2014-11-09 18:01:56 -08:00
Glenn Morris
a16d6f90ee Stop keeping doc/emacs/emacsver.texi in the repository
* configure.ac (doc/emacs/emacsver.texi): Generate it.

* make-dist (doc/emacs/emacsver.texi) [update]: No longer check it.

* doc/emacs/Makefile.in (top_srcdir, version): New, set by configure.
(doc-emacsver): New rule.
(bootstrap-clean, maintainer-clean): Delete emacsver.texi.
(emacsver.texi.in): Rename from emacsver.texi.

* admin/admin.el (set-version): No need to update doc/emacs/emacsver.texi.
(make-manuals-dist-output-variables): Add top_srcdir.
(make-manuals-dist--1): Handle @version@ specially.

* .bzrignore: Add doc/emacs/emacsver.texi.
2014-11-09 16:17:17 -08:00
Reuben Thomas
dcf7e861ab Remove support for DJGPP < 2.02
This also removes some specially-licensed files and lots of accompanying
explanation.
2014-08-09 17:12:33 +01:00
Glenn Morris
93160ec392 Use gcc auto-dependency information for lwlib and oldXMenu
* configure.ac (lwlib_deps_frag, oldxmenu_deps_frag): New output files.

* make-dist (lwlib, oldXMenu): Distribute *.mk.

* lwlib/Makefile.in: Move old dependency information to new file deps.mk.
(MKDIR_P, DEPFLAGS, MKDEPDIR, lwlib_deps_frag):
New, set by configure.
(DEPDIR): New variable.
(ALL_CFLAGS): Add DEPFLAGS.
(.c.o): Add MKDEPDIR.
(clean, mostlyclean): Delete DEPDIR.

* lwlib/deps.mk, lwlib/autodeps.mk: New files.

* oldXMenu/Makefile.in: Move old dependency information to new file deps.mk.
(MKDIR_P, DEPFLAGS, MKDEPDIR, oldxmenu_deps_frag):
New, set by configure.
(DEPDIR): New variable.
(ALL_CFLAGS): Add DEPFLAGS.
(.c.o): Add MKDEPDIR.
(clean, mostlyclean): Delete DEPDIR.

* oldXMenu/deps.mk, oldXMenu/autodeps.mk: New files.

* src/deps.mk: Comment update.

* .bzrignore: Ignore lwlib/deps, oldXMenu/deps.
2014-06-28 15:57:23 -07:00
Glenn Morris
7ee4b70caa * make-dist: Exclude test/automated/*.log. 2014-06-26 20:36:06 -04:00
Glenn Morris
536aa46681 Merge from emacs-24; up to 2014-04-04T23:31:02Z!joaotavora@gmail.com 2014-04-10 23:43:20 -07:00
Glenn Morris
9b1ac3be88 * make-dist: Distribute lib-src/update-game-score.exe.manifest. 2014-04-10 23:39:11 -07:00
Glenn Morris
235b3c7920 * make-dist: Do not distribute generated admin/grammars/Makefile. 2014-04-10 23:25:25 -07:00
Glenn Morris
3a9e7a49de * make-dist: Further update AC_INIT regexp. 2014-04-02 21:16:18 -04:00
Glenn Morris
dd694335f5 * (make-dist): Update AC_INIT regexp. 2014-03-28 20:14:16 -04:00
Glenn Morris
7cd431112c Remove lib-src/test-distrib.c and related
The class of problems that this was designed to detect, namely .elc
files getting corrupted by being passed around by email via uuencode
or somesuch, has not been a relevant concern for many years.

* lib-src/test-distrib.c, lib-src/testfile: Remove.

* lib-src/Makefile.in (DONT_INSTALL): Remove test-distrib.
(test-distrib${EXEEXT}): Remove rule.

* make-dist: Do not distribute lib-src/testfile.

* admin/quick-install-emacs (AVOID): Remove testfile and test-distrib.

* INSTALL, etc/PROBLEMS, admin/notes/unicode:
Remove references to test-distrib and testfile.
2014-03-22 15:52:47 -07:00
Paul Eggert
ba3189039a Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
Paul Eggert
9ebada6af6 Automate the procedure for updating copyright year.
* admin/merge-gnulib (GNULIB_MODULES): Add update-copyright.
* admin/notes/years: Mention admin/update-copyright.
* admin/update-copyright: New file.
* build-aux/update-copyright: New file.
* make-dist: Distribute it.
* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
* msdos/autogen/Makefile.in: Update copyright year.
2013-12-24 10:27:53 -08:00
Glenn Morris
89f01d7dbe * make-dist: Distribute new build-aux files. 2013-12-12 01:39:13 -08:00
Glenn Morris
62bd73fa7a Stop keeping info/dir in the repository.
* build-aux/dir_top: Move here from admin/.

* build-aux/make-info-dir: New script.

* Makefile.in (bootstrap-clean): Delete info/.
(info-dir, ${srcdir}/info/dir): New rules.
(info): Also make info-dir.
(check-info): Rename from check-info-dir.
Instead of info/dir entries, check @dircategory in info/*.info.

* make-dist: Use `info' rule rather than `info-real'.
No more info/COPYING (not even the right license for info/ files).

* info/: Remove from repository.

* admin/update_autogen (info_dir):
Use dir_top from build-aux/ rather than admin/.

* .bzrignore: Ignore info/ altogether.

* doc/emacs/Makefile.in: Comment.
2013-12-12 00:54:21 -08:00
Glenn Morris
cb6c95a394 Move runtime leim lisp files to lisp/leim directory
This allows us to reuse much of the lisp build and installation machinery,
rather than duplicating it.

* Makefile.in (abs_builddir, leimdir): Remove.
(buildlisppath, SUBDIR, COPYDIR, COPYDESTS): No more leim directory.
(epaths-force-w32): No longer set BLD.
(leim): Remove.
(install-arch-indep): No longer run or install leim.
(mostlyclean, clean): No longer run leim rule.
(bootstrap-clean): Change leim target.
(maintainer-clean): Add leim.
(check-declare): Remove leim.

* README: Update for leim changes.

* configure.ac (leimdir): Remove.
(standardlisppath): No more leimdir.

* make-dist: Update for files from leim/ now being in lisp/leim/.

* doc/lispref/loading.texi (Library Search):
* doc/lispref/os.texi (Startup Summary): No more leim directory.

* leim/Makefile.in (leimdir): New variable.
(TIT_GB, TIT_BIG5, MISC, changed.tit, changed.misc)
(${leimdir}/leim-list.el, ${leimdir}/ja-dic/ja-dic.el):
Generate in $leimdir.
(all): Remove compilation, add ja-dic.
(leim-list.el): Now PHONY.
(setwins, compile-targets, compile-main, clean, mostlyclean)
(extraclean): Remove.
(bootstrap-clean): Delete all generated files.

* leim/README: Update for moved leim/ directory.

* leim/leim-ext.el (ucs-input-activate, hangul-input-method-activate):
Remove manual autoloads; now in loaddefs.el.
Disable byte-compile, version-control, autoloads in the output.

* lisp/Makefile.in (setwins_for_subdirs): Skip leim/ directory.
(compile-main): Depend on lisp/leim rule.
(leim): New rule.

* lisp/loadup.el: Move leim-list.el to leim/ subdirectory.

* lisp/startup.el (normal-top-level): No more leim directory.

* lisp/international/ja-dic-cnv.el (skkdic-convert):
Disable version-control and autoloads in output files.
* lisp/international/titdic-cnv.el (titdic-convert, miscdic-convert):
Disable version-control and autoloads in output files.

* lisp/leim/quail: Move here from ../leim.

* lisp/leim/quail/hangul.el (hangul-input-method-activate):
Add autoload cookie.
(generated-autoload-load-name): Set file-local value.

* lisp/leim/quail/uni-input.el (ucs-input-activate): Add autoload cookie.
(generated-autoload-load-name): Set file-local value.

* nt/README.W32:
* nt/addpm.c (env_vars):
* nt/epaths.nt (PATH_LOADSEARCH, PATH_DUMPLOADSEARCH):
* nt/paths.h (PATH_LOADSEARCH): No more leim directory.

* src/Makefile.in (leimdir): Now in lisp source directory.
($(leimdir)/leim-list.el): Just use ../leim .

* src/epaths.in (PATH_DUMPLOADSEARCH):

* src/lread.c (load_path_default):

* src/nsterm.m (ns_load_path): No more leim directory.

* .bzrignore: Update for relocated leim files.
2013-11-26 22:15:06 -08:00
Glenn Morris
eca4ecbaae * make-dist: Distribute build-aux/msys-to-w32. 2013-11-19 20:50:37 -05:00
Dani Moncayo
f4f38fad9a Remove nt/msysconfig.sh
* configure.ac [MINGW32]: Source nt/mingw-cfg.site.

* make-dist: Don't distribute nt/msysconfig.sh.

* nt/msysconfig.sh: Remove.

* nt/INSTALL: Update for this.

* nt/mingw-cfg.site: Comment.
2013-11-11 18:50:28 -08:00
Glenn Morris
a80a32e8c4 * make-dist: Comment 2013-11-10 17:00:03 -08:00
Eli Zaretskii
df0d3f79ae Revert revision 2013-11-05T08:13:09Z!rgm@gnu.org. 2013-11-05 18:06:30 +02:00
Glenn Morris
da6a8debb2 * make-dist: Don't distribute old, unsupported w32 build method. 2013-11-05 00:13:09 -08:00
Glenn Morris
7605d081ba Update nt installation instructions to point to supported method
* nt/INSTALL: Rename from INSTALL.MSYS.

* nt/INSTALL.OLD: Rename from INSTALL.

* nt/configure.bat: Update for INSTALL name changes.

* make-dist: Update for nt/INSTALL* changes.
2013-08-31 11:26:59 -07:00
Glenn Morris
4fa4485689 Cleanup for etc/refcards/Makefile and related items
* .bzrignore: Unignore etc/refcards/Makefile.

* make-dist: Do not distribute etc/refcards TeX intermediate files.

* Makefile.in (install-arch-indep):
Do not install etc/refcards TeX intermediate files.

* etc/refcards/Makefile: Rewrite to use portable Makefile syntax.
Add language-specific targets.
(distclean, extraclean): New rules.

*  etc/refcards/README: Add copyright and license.  Add Makefile details.
Mention http and FSF store versions.
2013-08-14 23:31:14 -07:00
Glenn Morris
ef75383cd2 * make-dist: Add a --tests option, to include test/. 2013-07-24 23:57:25 -07:00
Eli Zaretskii
6b56a60ae8 Add new files in nt/ to make-dist.
make-dist (files): Add nt/msysconfig.sh, nt/mingw-cfg.site,
 nt/epaths.nt, and nt/INSTALL.MSYS.
2013-05-18 15:04:40 +03:00
Paul Eggert
bfbe26276d * make-dist (files): Add nt/Makefile.in, nt/gnulib.mk.
Otherwise, 'configure; make' fails on non-Windows builds.
2013-05-17 22:21:24 -07:00
Paul Eggert
0922c47591 * make-dist: Keep necessary restrictions on file access. 2013-05-01 12:28:41 -07:00