Commit graph

442 commits

Author SHA1 Message Date
Paul Eggert 5172fa02cc Prefer HTTPS to HTTP for gnu.org
This fixes some URLs I omitted from my previous pass,
notably those in lists.gnu.org.  Although lists.gnu.org
does not yet support TLS 1.1, TLS 1.0 is better than nothing.
* lisp/erc/erc.el (erc-official-location):
* lisp/mail/emacsbug.el (report-emacs-bug):
Use https:, not http:.
2017-10-01 19:59:01 -07:00
Paul Eggert bc511a64f6 Prefer HTTPS to FTP and HTTP in documentation
Most of this change is to boilerplate commentary such as license URLs.
This change was prompted by ftp://ftp.gnu.org's going-away party,
planned for November.  Change these FTP URLs to https://ftp.gnu.org
instead.  Make similar changes for URLs to other organizations moving
away from FTP.  Also, change HTTP to HTTPS for URLs to gnu.org and
fsf.org when this works, as this will further help defend against
man-in-the-middle attacks (for this part I omitted the MS-DOS and
MS-Windows sources and the test tarballs to keep the workload down).
HTTPS is not fully working to lists.gnu.org so I left those URLs alone
for now.
2017-09-13 15:54:37 -07:00
Paul Eggert 1b01601d3f Skip .#* temporaries when finding sources
Without this patch, ‘make check’ can fail with the diagnostic
‘invalid syntax in conditional’ if there is an Emacs temporary
file whose name starts with ‘.#’, because the ‘#’ is treated as
the start of a Make comment.
* lisp/Makefile.in (loaddefs, tagsfiles, check-defun-deps):
* test/Makefile.in (ELFILES):
Skip files starting with ‘.’, so that the .#* files do not cause
trouble.  (We cannot easily skip just files starting with ‘.#’,
since ‘#’ starts a Make comment!)
2017-05-30 09:28:19 -07:00
Glenn Morris d9592104c8 Don't hard-code loaddefs files in lisp/Makefile
* lisp/Makefile.in (loaddefs): New variable.
(AUTOGENEL): Use $loaddefs, and include directory.
(bootstrap-clean): Update for AUTOGENEL change.
2017-05-11 21:22:13 -04:00
Glenn Morris 7f3d63908c Write autoloads file atomically
* lisp/emacs-lisp/autoload.el (autoload--save-buffer):
New function, to save buffer atomically.
(autoload-save-buffers, update-directory-autoloads):
Use autoload--save-buffer.
* lisp/Makefile.in ($(lisp)/loaddefs.el):
No longer write to a temp file by hand.
2017-05-06 17:58:20 -07:00
Glenn Morris afa02fc58c ; * lisp/Makefile.in: More comments about loaddefs. 2017-04-26 14:23:55 -04:00
Glenn Morris bce5ff9140 ; * lisp/Makefile.in: Comments about loaddefs. 2017-04-26 14:12:56 -04:00
Glenn Morris ea8605ae84 Generate leim-list via lisp/Makefile, not src/Makefile
* src/Makefile.in ($(leimdir)/leim-list.el): Remove rule.
(emacs$(EXEEXT)): Don't depend on leim-list.
* lisp/Makefile.in ($(lisp)/loaddefs.el): Depend on gen-lisp again.
2017-04-25 19:30:31 -04:00
Glenn Morris e4ddf394d0 Avoid parallel race condition
* lisp/Makefile.in ($(lisp)/loaddefs.el): Remove gen-lisp for now.
2017-04-25 15:05:52 -04:00
Glenn Morris 393228bd7a * lisp/Makefile.in (check-defun-dups): Ignore obsolete files. 2017-04-13 20:14:01 -04:00
Glenn Morris ad128fee43 Create generated lisp files before main loaddefs.el
This should improve reproducibility of lisp/loaddefs.el.
* lisp/Makefile.in (gen-lisp): New phony target.
($(lisp)/loaddefs.el, compile-main): Depend on gen-lisp.
* src/Makefile.in ($(leimdir)/leim-list.el): Depend on all of ../leim.
* lisp/cedet/semantic.el (semantic-mode):
* lisp/cedet/semantic/fw.el (top-level):
* lisp/emacs-lisp/eieio-core.el (top-level):
Robustify to generated input files maybe not yet existing.
2017-04-13 20:12:02 -04:00
Eli Zaretskii 88e012511a Avoid unnecessary regeneration of the entire loaddefs.el
* lisp/Makefile.in (autoloads .PHONY): Add commentary explaining
why $(lisp)/loaddefs.el is a dependency of '.PHONY'.
($(lisp)/loaddefs.el): Copy an existing loaddefs.el to
loaddefs.tmp before running 'batch-update-autoloads' on it, to
avoid slow regeneration of the full contents.  (Bug#26459)
Use 'move-if-change' instead of 'mv', to avoid producing a new
Emacs binary when not necessary.
2017-04-13 10:03:09 +03:00
Eli Zaretskii cc7a816936 * lisp/Makefile.in (autoloads-force): Fix usage of ".PHONY". 2017-04-12 12:01:48 +03:00
Ken Raeburn 440bafef7c Write updated loaddefs to a temporary file and rename into place.
In a parallel build, byte compilation can be running at the same times
as loaddefs.el is being regenerated.  However, in a CANNOT_DUMP build,
loaddefs.el is read at startup and must always be in a usable state.

* lisp/Makefile.in ($(lisp)/loaddefs.el): Write generated output to
loaddefs.el.new and then rename it to loaddefs.el.
2017-04-09 02:45:45 -04:00
Paul Eggert 3a11b3e330 Use find -delete if available
This shortens the ‘make’ output and should avoid some
repetitive scanning of directories during a build.
* configure.ac (FIND_DELETE): New var.
* lisp/Makefile.in (compile-always, bootstrap-clean):
* test/Makefile.in (clean, bootstrap-clean): Use it.
* test/Makefile.in (ELCFILES, LOGSAVEFILES): Remove; no longer needed.
2017-03-30 19:51:39 -07:00
Phillip Lord 542a763281 Revert "Replace ldefs-boot with a much smaller file"
This reverts commit c27b645956.

This commit has been reverted because the new mechanism was too
sensitive to changes in the lisp source, generation of new ldefs-boot
files was platform specific and resulted in warnings about undefined
variables.

See also 11436e2890d.
2017-03-07 13:49:48 +00:00
Phillip Lord 8f58747a87 Revert "Speed generation of ldefs-boot-auto"
This reverts commit 7b5e1c8238.

This commit has been reverted because the new mechanism was too
sensitive to changes in the lisp source, generation of new ldefs-boot
files was platform specific and resulted in warnings about undefined
variables.

See also 11436e2890d.
2017-03-07 13:48:20 +00:00
Phillip Lord 7b5e1c8238 Speed generation of ldefs-boot-auto
Previously, generation of ldefs-boot-auto required at least one full
bootstrap and, in extreme cases, two. Now, from build system, it
requires the same time as taken to dump Emacs.

* Makefile.in: Remove all calls, pass to src.
* admin/ldefs-clean.el: Update for changed messages.
* lisp/Makefile.in (compile-first-delete): Add.
* lisp/ldefs-boot-auto.el: Update.
* src/Makefile.in (generate-ldefs-boot): Add.
2017-02-28 21:32:49 +00: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 5badc81c1c Update copyright year to 2017
Run admin/update-copyright.
2016-12-31 19:42:26 -08:00
Phillip Lord c27b645956 Replace ldefs-boot with a much smaller file
* Makefile.in (bootstrap-build,generate-ldefs-boot): New targets.
   (bootstrap): Depend on bootstrap-build.
 * admin/ldefs-clean.el: New file.
 * lisp/Makefile.in (compile-first): Depend on loaddefs.el
 * lisp/ldefs-boot.el: Remove.
 * lisp/ldefs-boot-auto.el: New file.
 * lisp/ldefs-boot-manual.el: New file.
 * lisp/loadup.el: Load ldefs-boot-manual.el.
 * src/emacs.c (generating_ldefs_boot): New variable.
   (main): Check whether we are generating ldefs.
 * src/eval.c (autoload-do-load): Dump autoload forms to stderr when
   requested.
 * src/lisp.h (generating_ldefs_boot): New variable.
 * admin/gitmerge.el, admin/make-tarball.txt, admin/notes/copyright,
   lisp/Makefile.in, lisp/cus-dep.el, lisp/emacs-lisp/elint.el,
   lisp/finder.el, lisp/loadup.el, msdos/mainmake.v2: Update reference to
   ldefs-boot.
 * admin/update_autogen: Alter mechanism for ldefs-boot generation.
2016-12-13 22:15:32 +00:00
Paul Eggert 39577d0712 Merge from origin/emacs-25
ad250f2 Sync with gnulib
c0165ea Resurrect GNUS-NEWS autogeneration

# Conflicts:
#	etc/GNUS-NEWS
#	lisp/Makefile.in
2016-03-23 11:27:22 -07:00
Paul Eggert c0165ea4d6 Resurrect GNUS-NEWS autogeneration
* doc/misc/gnus-coding.texi (Gnus Maintenance Guide): Update
GNUS-NEWS section to match current file locations and procedure.
* etc/GNUS-NEWS: Regenerate by using new procedure.
* lisp/Makefile.in (update-gnus-news): New rule, containing a
procedure for building GNUS-NEWS.  The old procedure got lost
somehow when Gnus was merged into Emacs.
2016-03-23 00:08:21 -07:00
John Wiegley 1dd4f26ab6 Merge from origin/emacs-25
ef33bc7 Spelling and grammar fixes
9c3dbab Fix copyright years by hand
0e96320 Update copyright year to 2016
2016-01-11 22:48:07 -08:00
Glenn Morris c140eec06b ; * lisp/Makefile.in: Comment update. 2016-01-06 18:48:40 -05:00
Glenn Morris c6d3c60f28 Build tweaks related to tags files.
* lib-src/Makefile.in (tagsfiles): New variable.
(TAGS): Also depend on the source files.  Use our own etags program.
* lisp/Makefile.in (ETAGS): Add EXEEXT.
(lisptagsfiles1, lisptagsfiles2, lisptagsfiles3, lisptagsfiles4):
Remove.
(tagsfiles): New, replacing lisptagsfiles1 etc.
Remove irrelevant source files here rather than in the TAGS rule.
(${ETAGS}): New rule.
(TAGS): Also depend on the etags executable.
* lwlib/Makefile.in (EXEEXT): New, set by configure.
(ETAGS): Add EXEEXT.
(${ETAGS}): New rule.
(ctagsfiles): Use "wildcard".
(TAGS): Also depend on the etags executable.
* nt/Makefile.in (ETAGS, tagsfiles): New variables.
(${ETAGS}): New rule.
(TAGS): Fix dependencies.
* oldXMenu/Makefile.in (EXEEXT): New, set by configure.
(ETAGS): New variable, replacing $TAGS.  Use our own etags program.
Remove "-t" argument.
(${ETAGS}): New rule.
(tagsfiles): New variable.
(TAGS): New rule, with proper dependencies.
* src/Makefile.in (ETAGS): Add EXEEXT.  Add a build rule.
(ctagsfiles1, ctagsfiles2): Use "wildcard".
(ctagsfiles3): Remove.
(TAGS): Depend on etags.
(../lisp/TAGS, $(lwlibdir)/TAGS): Let the rules in the relevant
directories decide if updates are needed.
2016-01-06 18:25:47 -05:00
Glenn Morris efa8087d4b * lisp/Makefile.in (CAL_SRC): Skip calendar.el. 2016-01-06 17:40:00 -05:00
Paul Eggert 61e83e902b Spelling fixes 2016-01-04 14:47:01 -08:00
Paul Eggert 0e963201d0 Update copyright year to 2016
Run admin/update-copyright.
2016-01-01 01:34:24 -08:00
Phillip Lord 2f55a230d7 dired generate autoloads to non-versioned file.
* lisp/dired.el: Remove autoloads.
* lisp/Makefile.in: Add dired to autogenel.
* lisp/dired-aux.el,lisp/dired-x.el: Update file local.
* test/lisp/dired-tests.el: Add new test.
2015-12-17 20:42:16 +00:00
Phillip Lord ee85661174 eieio generate autoloads to non-versioned file.
* lisp/Makefile.in: eieio-loaddefs add to autogenel.
* lisp/emacs-lisp/eieio.el,lisp/emacs-lisp/eieio-core.el:
  Remove autoloads.
* lisp/emacs-lisp/eieio-compat.el,lisp/emacs-lisp/eieio-custom.el,
  lisp/emacs-lisp/eieio-opt.el: Update file local.
* test/lisp/emacs-lisp/eieio-tests/eieio-tests.el: New test.
2015-12-17 20:42:15 +00:00
Phillip Lord 459cf7cb92 htmlfontify generate autoload to non-versioned file.
* lisp/Makefile.in: Add htmlfontity-loaddefs to autogenel.
* lisp/hfy-cmap.el: Update file local.
* lisp/htmlfontify.el: Remove autoloads, add require.
* test/lisp/htmlfontify-tests.el: Test autoload functionality.
2015-12-17 20:42:15 +00:00
Phillip Lord a014779ffa ibuffer generate autoloads to non-versioned file.
* lisp/Makefile.in: Add ibuffer-loaddefs to autogenel.
* lisp/ibuf-ext.el: Update file local.
* lisp/ibuffer.el: Remove autoloads and add a require.
* test/lisp/ibuffer-tests.el: Test that autoload is working.
2015-12-17 20:42:15 +00:00
Phillip Lord ef69697161 rmail generate autoloads to non-versioned file.
* lisp/Makefile.in: Add rmail-loaddefs.el to autogenel.
* lisp/mail/rmail.el: Remove autoloads, add require.
* lisp/mail/rmailedit.el,lisp/mail/rmailkwd.el,
  lisp/mail/rmailmm.el,lisp/mail/rmailmsc.el,
  lisp/mail/rmailsort.el,lisp/mail/rmailsum.el,
  lisp/mail/undigest.el: Update file-local.
* test/lisp/mail/rmail-tests.el:
2015-12-17 20:42:15 +00:00
Phillip Lord 88492253bf Add autoload-force target.
* lisp/Makefile.in (autoload-force): New target.
2015-12-17 20:42:15 +00:00
Phillip Lord 0eb57910ab ps-print generate autoloads to non versioned file.
* lisp/Makefile.in: Add ps-print-loaddefs.el to autogen list.
* lisp/ps-print.el: Remove autoloads.
* lisp/ps-mule.el: Update file-local.
* test/lisp/ps-print-tests.el: Test autoload functionality.
2015-12-17 20:42:15 +00:00
Phillip Lord a2e6ed34b6 reftex generate autoloads to non versioned file.
* lisp/Makefile.in: Add reftex-loaddefs to autogen files
* lisp/textmodes/reftex.el: Remove autoloads.
* lisp/textmodes/reftex-auc.el,lisp/textmodes/reftex-cite.el,
  lisp/textmodes/reftex-dcr.el,lisp/textmodes/reftex-global.el,
  lisp/textmodes/reftex-index.el,lisp/textmodes/reftex-parse.el,
  lisp/textmodes/reftex-ref.el,lisp/textmodes/reftex-sel.el,
  lisp/textmodes/reftex-toc.el: Update autoload file-local.
* test/lisp/textmodes/reftex-tests.el: Add test of an autoloaded
  function.
2015-12-17 20:42:14 +00:00
Stefan Monnier 36b3f1b61f * lisp/loadup.el: Set max-lisp-eval-depth here
* lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS): Remove.
(BYTE_COMPILE_FLAGS): Adjust accordingly.
2015-11-18 11:42:29 -05: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
Paul Eggert 309d39b832 A few more minor quoting fixes in a script and a text file 2015-09-16 16:09:31 -07:00
Glenn Morris 5f9e4b2e11 * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition. 2015-06-30 16:20:39 -04:00
Glenn Morris 290acafd7e * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
Replace hard-coded lists with wildcard + filter-out.
2015-06-30 15:23:07 -04:00
Glenn Morris 18942259ce * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
(SUBDIRS_REL): Derive from SUBDIRS.
2015-06-05 16:12:44 -04:00
Glenn Morris 1805ce763e Tweak some build messages.
* lisp/Makefile.in ($(lisp)/loaddefs.el):
* lisp/cus-dep.el (custom-make-dependencies):
* lisp/finder.el (finder-compile-keywords): Say what we are doing.
* lisp/international/titdic-cnv.el (batch-titdic-convert):
Don't say how to compile.
2015-06-05 16:10:18 -04:00
Glenn Morris 8fb6253c00 * lisp/Makefile.in (AM_V_at): Add missing definition. 2015-06-04 21:19:22 -04:00
Glenn Morris 76f896dd1b * lisp/Makefile.in: Quieten output a bit.
($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
Don't echo directories, since the commands we invoke print them.
2015-06-04 21:16:23 -04:00
Glenn Morris 0382a93465 * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
(SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
(SUBDIRS_SUBDIRS): New variables.
(setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
Remove.
($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
(update-subdirs, compile-main, compile-clean):
Replace "setwins" usage with new "SUBDIRS" variables.
2015-06-04 21:02:26 -04:00
Glenn Morris cc88cb8ac4 * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot. 2015-06-04 19:26:32 -04:00
Paul Eggert 6b62d26589 Use ${EXEEXT} more uniformly in makefiles
When porting Emacs to run on NaCl, we need to make sure that we always
call it with the proper extension (.nexe in this case) during the build.
* leim/Makefile.in, lib-src/Makefile.in, lisp/Makefile.in (EMACS):
Append ${EXEEXT}.
(tiny change)
2015-02-23 10:10:24 -08:00
Paul Eggert 5c20aa7486 Port to platforms lacking test -a and -o
* configure.ac (HAVE_LIBXML2):
* lisp/Makefile.in (compile-clean):
* lisp/net/tramp-sh.el (tramp-find-executable):
Prefer '&&' and '||' to 'test -a' and 'test -o'.
2015-02-08 16:00:58 -08:00