summaryrefslogtreecommitdiff
path: root/autogen.sh
AgeCommit message (Collapse)Author
2024-01-20Fix autogen.sh’s spurious ‘git diff’ outputPaul Eggert
Problem reported by Gerd Möllmann (Bug#68464). * .gitignore: Ignore files in exec that are now copied from build-aux. * admin/merge-gnulib (avoided_flags): Instead of clearing autom4te.cache here ... * autogen.sh (do_git): ... clear it here. Use config.guess, config.sub and install-sh from the Emacs repository, as they are more likely to be up to date. This avoids unnecessary differences among different builders, and avoids unnecessary ‘git diff’ output after autogen.sh. Also, copy these files from build-aux to exec since there should be no difference between the two copies. * exec/config.guess, exec/config.sub, exec/install-sh: Remove from repository, as autogen.sh now copies them from build-aux.
2024-01-02Merge from savannah/emacs-29Po Lu
dc4e6b13296 ; Update copyright years in more files 64b37776318 ; Run set-copyright from admin.el 8e1c56ae467 ; Add 2024 to copyright years # Conflicts: # doc/misc/modus-themes.org # doc/misc/texinfo.tex # etc/NEWS # etc/refcards/ru-refcard.tex # etc/themes/modus-operandi-theme.el # etc/themes/modus-themes.el # etc/themes/modus-vivendi-theme.el # lib/alloca.in.h # lib/binary-io.h # lib/c-ctype.h # lib/c-strcasecmp.c # lib/c-strncasecmp.c # lib/careadlinkat.c # lib/cloexec.c # lib/close-stream.c # lib/diffseq.h # lib/dup2.c # lib/filemode.h # lib/fpending.c # lib/fpending.h # lib/fsusage.c # lib/getgroups.c # lib/getloadavg.c # lib/gettext.h # lib/gettime.c # lib/gettimeofday.c # lib/group-member.c # lib/malloc.c # lib/md5-stream.c # lib/md5.c # lib/md5.h # lib/memmem.c # lib/memrchr.c # lib/nanosleep.c # lib/save-cwd.h # lib/sha1.c # lib/sig2str.c # lib/stdlib.in.h # lib/strtoimax.c # lib/strtol.c # lib/strtoll.c # lib/time_r.c # lib/xalloc-oversized.h # lisp/auth-source-pass.el # lisp/emacs-lisp/lisp-mnt.el # lisp/emacs-lisp/timer.el # lisp/info-look.el # lisp/jit-lock.el # lisp/loadhist.el # lisp/mail/rmail.el # lisp/net/ntlm.el # lisp/net/webjump.el # lisp/progmodes/asm-mode.el # lisp/progmodes/project.el # lisp/progmodes/sh-script.el # lisp/textmodes/flyspell.el # lisp/textmodes/reftex-toc.el # lisp/textmodes/reftex.el # lisp/textmodes/tex-mode.el # lisp/url/url-gw.el # m4/alloca.m4 # m4/clock_time.m4 # m4/d-type.m4 # m4/dirent_h.m4 # m4/dup2.m4 # m4/euidaccess.m4 # m4/fchmodat.m4 # m4/filemode.m4 # m4/fsusage.m4 # m4/getgroups.m4 # m4/getloadavg.m4 # m4/getrandom.m4 # m4/gettime.m4 # m4/gettimeofday.m4 # m4/gnulib-common.m4 # m4/group-member.m4 # m4/inttypes.m4 # m4/malloc.m4 # m4/manywarnings.m4 # m4/mempcpy.m4 # m4/memrchr.m4 # m4/mkostemp.m4 # m4/mktime.m4 # m4/nproc.m4 # m4/nstrftime.m4 # m4/pathmax.m4 # m4/pipe2.m4 # m4/pselect.m4 # m4/pthread_sigmask.m4 # m4/readlink.m4 # m4/realloc.m4 # m4/sig2str.m4 # m4/ssize_t.m4 # m4/stat-time.m4 # m4/stddef_h.m4 # m4/stdint.m4 # m4/stdio_h.m4 # m4/stdlib_h.m4 # m4/stpcpy.m4 # m4/strnlen.m4 # m4/strtoimax.m4 # m4/strtoll.m4 # m4/time_h.m4 # m4/timegm.m4 # m4/timer_time.m4 # m4/timespec.m4 # m4/unistd_h.m4 # m4/warnings.m4 # nt/configure.bat # nt/preprep.c # test/lisp/register-tests.el
2024-01-02; Add 2024 to copyright yearsPo Lu
2023-08-09Don't depend on Automake to generate exec/aclocal.m4Po Lu
* autogen.sh (do_git): Generate exec/aclocal.m4 by hand. (bug#65160)
2023-04-30Add helper binary `exec1'Po Lu
* .gitignore: New files. * Makefile.in (mostlyclean_dirs): Add libexec, if its Makefile exists. * autogen.sh (do_git): Autoreconf in exec as well. * configure.ac: Configure libexec on Android. * exec/Makefile.in: * exec/README: * exec/config-mips.m4.in: * exec/config.guess: * exec/config.h.in: * exec/config.sub: * exec/configure: * exec/configure.ac: * exec/deps.mk: * exec/exec.c (MIN, struct exec_open_command) (struct exec_map_command, struct exec_jump_command) (write_open_command, write_load_command, process_interpreter_1) (process_interpreter, process_program_header, insert_args) (exec_0): * exec/exec.h (_EXEC_H_, struct elf_header_32) (struct program_header_32, struct dt_entry_32) (struct elf_header_64, struct program_header_64) (struct dt_entry_64, struct exec_tracee): * exec/exec1.c (main): * exec/install-sh (scriptversion): * exec/loader-aarch64.s (_start): * exec/loader-armeabi.s (_start): * exec/loader-mips64el.s (__start): * exec/loader-mipsel.s (__start): * exec/loader-x86.s (_start): * exec/loader-x86_64.s (_start): * exec/mipsel-user.h (_MIPSEL_USER_H_): * exec/mipsfpu.c (MIPS_ABI_FP_ANY, fpu_reqs, valid_abi_p) (fp_mode_for_abi, cpu_supports_fr0_p, determine_fpu_mode): * exec/mipsfpu.h (_MIPSFPU_H_, FP_FR0): * exec/test.c (print_usage, main): * exec/trace.c (MAX_TRACEES, aarch64_set_regs, read_memory) (user_alloca, user_copy, remove_tracee, handle_clone) (syscall_trap_p, handle_exec, process_system_call, tracing_execve) (after_fork, find_tracee, exec_waitpid, exec_init): New files. * java/Makefile.in (CROSS_EXEC_BINS): Add exec1 and loader. ($(CROSS_EXEC_BINS) &): New target.
2023-04-20Add Git hooks to check filenames listed in the commit messageJim Porter
See <https://lists.gnu.org/archive/html/emacs-devel/2023-04/msg00274.html>. * build-aux/git-hooks/commit-msg-files.awk: * build-aux/git-hooks/post-commit: * build-aux/git-hooks/pre-push: New files... * autogen.sh: ... add them.
2023-01-01; Add 2023 to copyright years.Eli Zaretskii
2022-07-05Quote configure.ac arguments more consistentlyPaul Eggert
This should help avoid further Autoconf portability gotchas such as the one recently fixed in 2022-06-27T04:26:01Z!meyering@fb.com. * autogen.sh (autoconf_min): Adjust pattern to match updated configure.ac. * configure.ac: Quote arguments more consistently, as per the Autoconf manual.
2022-01-01; Add 2022 to copyright years.Eli Zaretskii
2021-01-01Update copyright year to 2021Paul Eggert
Run "TZ=UTC0 admin/update-copyright".
2020-01-01Update copyright year to 2020Paul Eggert
Run "TZ=UTC0 admin/update-copyright $(git ls-files)".
2019-05-25Go back to "Maintainer: emacs-devel@gnu.org"Paul Eggert
Restore lines saying "Maintainer: emacs-devel@gnu.org" when there is no special maintainer for a file. Although this wasn't documented it was common practice and removing the lines didn't have consensus.
2019-05-22Merge from origin/emacs-26Glenn Morris
5d24af8 Remove from docs references to obsolete MULE variables 2bdc419 Do potentially destructive operations in prepare-commit-msg # Conflicts: # src/search.c
2019-05-20Improve C and Elisp Git diff hunk headersBasil L. Contovounesios
For discussion, see the following threads: https://lists.gnu.org/archive/html/emacs-devel/2019-03/msg00457.html https://lists.gnu.org/archive/html/emacs-devel/2019-05/msg00369.html * autogen.sh: Extend the built-in Git xfuncname pattern 'cpp' to match preprocessor and DEFUN macros, and the 'elisp' pattern to match cl-lib and other top-level defuns.
2019-05-19Fixes for "Maintainer:" and related linesPaul Eggert
Mostly, this just removes "Maintainer: emacs-devel@gnu.org" lines, which are not that useful. It also cleans up and regularizes a few similar lines.
2019-05-16Do potentially destructive operations in prepare-commit-msgKonstantin Kharlamov
* build-aux/git-hooks/prepare-commit-msg: If someone occasionally puts Signed-off line, it will likely get there through -s option of git. Exploit this fact to abort before a user got a chance to type commit message. (Bug#35368)
2018-12-31Merge from origin/emacs-26Paul Eggert
2fcf2df Fix copyright years by hand 26bed8b Update copyright year to 2019 2814292 Fix value of default frame height. (Bug#33921)
2019-01-01Update copyright year to 2019Paul Eggert
Run 'TZ=UTC0 admin/update-copyright $(git ls-files)'.
2018-03-21; * autogen.sh: Comment.Glenn Morris
2018-02-02; * autogen.sh (check_version): Improve previous change.Glenn Morris
2018-02-02Try to work around intermittent autogen failure on hydra.nixos.orgGlenn Morris
* autogen.sh (check_version): Try to handle odd systems where /bin/sh does not define the "command" builtin.
2018-02-02; * autogen.sh: Remove temporary debug statements.Glenn Morris
2018-02-02; * autogen.sh: Add some temporary debug statements.Glenn Morris
2018-02-02; * autogen.sh: Remove temporary debug statements.Glenn Morris
2018-02-02; * autogen.sh: Add some temporary debug statements.Glenn Morris
2018-02-02* autogen.sh: Remove temporary debug statements.Glenn Morris
2018-02-02* autogen.sh: Add some temporary debug statements, for hydra.nixos.org.Glenn Morris
2018-01-01Update copyright year to 2018Paul Eggert
Run admin/update-copyright.
2017-09-13Prefer HTTPS to FTP and HTTP in documentationPaul Eggert
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-07autogen.sh: omit bogus chatter if no .gitPaul Eggert
Problem reported by Angelo Graziosi in: http://lists.gnu.org/archive/html/emacs-devel/2017-09/msg00045.html * autogen.sh (git_config): Do not execut 'git' if $do_git fails.
2017-08-21Port /bin/sh scripts to Solaris 10Paul Eggert
Its /bin/sh builtin ‘test’ command does not support -e. * autogen.sh, build-aux/git-hooks/pre-commit: * build-aux/gitlog-to-emacslog, make-dist: Use test -r, not test -e.
2017-08-15Do not assume regular Git .git/hooks dirPaul Eggert
Apparently Gitlab doesn’t create .git/hooks, like regular Git does. Problem reported by Ted Zlatanov in: http://lists.gnu.org/archive/html/emacs-devel/2017-08/msg00380.html * autogen.sh (git_sample_hook_src): New function. Use it to work even if .git/hooks or its samples do not exist.
2017-08-12Default autogen.sh to 'all'Paul Eggert
This addresses a problem noted by RMS in: http://lists.gnu.org/archive/html/emacs-devel/2017-08/msg00052.html * autogen.sh (do_git): Set to true if this script is invoked with no arguments and there is a .git subdirectory.
2017-06-20Simplify autogen.sh version checkingPaul Eggert
* autogen.sh (get_version): Simplify and make more reliable by using expr rather than echo | sed. Check exit status of program. Run program in subshell in case it cannot be executed. (check_version): Check exit status of command rather than its output. Check return status of get_version.
2017-06-19autogen.sh: try to check for tool being present but brokenGlenn Morris
* autogen.sh (get_version): Check return status of "--version". (check_version): Try to distinguish between a missing tool and a broken one. (Bug#27288)
2017-06-08Make autogen.sh report relevant environment variablesGlenn Morris
* autogen.sh (check_version): Indicate if using an environment variable.
2017-03-17Fixups for GNU Make switchoverPaul Eggert
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.
2017-03-17Switch from Automake to GNU MakePaul Eggert
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.
2017-01-12Restore behavior of ‘./autogen.sh autoconf git’Paul Eggert
* autogen.sh: Do both autoconf and git setup when invoked as ‘./autogen.sh autoconf git’. Avoid unnecessary newline in chatter. Mention new --no-check option in usage message. (Bug#25359)
2017-01-12* autogen.sh: Simplify argument parsing.Glenn Morris
2017-01-11* autogen.sh: Add --no-check option. (Bug#25359)Glenn Morris
2017-01-05Shorten autogen.sh scriptPaul Eggert
* autogen.sh: Use a shorter script, as some 'sed' implementations mishandle long scripts.
2017-01-05Yet another fix for autogen.shEli Zaretskii
* autogen.sh (gnulib.mk): Make the Sed script more portable. * nt/Makefile.in (${srcdir}/gnulib.mk): Adapt the Sed command to the changes in autogen.sh.
2017-01-05* autogen.sh (gnulib.mk): Another attempt to fix macOS build.Eli Zaretskii
2017-01-05Unbreak macOS buildEli Zaretskii
* autogen.sh (gnulib.mk): Don't use non-portable extensions of GNU Sed.
2017-01-04Port recent autogen.sh changes to DarwinPaul Eggert
Problem reported by Sam Steingold (Bug#25347). * autogen.sh: Don't assume 'sed -f-' reads a script from stdin, as POSIX does not require it and it does not work on Darwin.
2017-01-03Generate nt/gnulib.mk from lib/gnulib.mkEli Zaretskii
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-01Merge from origin/emacs-25Paul Eggert
2e2a806 Fix copyright years by hand 5badc81 Update copyright year to 2017
2016-12-31Update copyright year to 2017Paul Eggert
Run admin/update-copyright.
2016-05-14Port autogen.sh to Git 2.4Paul Eggert
Problem reported by Michael Brand in: http://lists.gnu.org/archive/html/emacs-devel/2016-05/msg00367.html * autogen.sh (git_config): Don't assume that git rev-parse groks --git-common-dir.