1. 01 Jan, 2019 1 commit
  2. 01 Jan, 2018 1 commit
    • Paul Eggert's avatar
      Merge from Gnulib · 220a9ecb
      Paul Eggert authored
      This incorporates:
      2018-01-01 maint: Run 'make update-copyright'
      2017-12-29 Add cross-compilation results for GNU/Hurd.
      2017-12-12 explicit_bzero: port to macOS + Clang 9.0.0
      220a9ecb
  3. 16 Jul, 2017 1 commit
    • Paul Eggert's avatar
      Merge from gnulib · 252444aa
      Paul Eggert authored
      This incorporates:
      2017-07-16 explicit_bzero: new module
      2017-07-15 getdtablesize: Add minimal support for OpenVMS.
      * lib/getdtablesize.c, lib/string.in.h, m4/getdtablesize.m4:
      * m4/string_h.m4:
      Copy from Gnulib.
      * lib/gnulib.mk.in: Regenerate.
      252444aa
  4. 01 Jan, 2017 1 commit
  5. 19 Jan, 2016 1 commit
    • Paul Eggert's avatar
      Merge from gnulib · cd19641e
      Paul Eggert authored
      This mostly just updates copyright dates of gnulib files.
      It also updates to the latest version of texinfo.tex.
      cd19641e
  6. 01 Jan, 2016 1 commit
    • Paul Eggert's avatar
      Merge from gnulib · 98253051
      Paul Eggert authored
      This mostly just updates copyright dates of gnulib files.
      It also updates to the latest version of texinfo.tex.
      98253051
  7. 21 Feb, 2015 1 commit
    • Paul Eggert's avatar
      Merge from gnulib · 066b17df
      Paul Eggert authored
      * doc/misc/texinfo.tex: Update from gnulib.
      * lib/getdtablesize.c, lib/getopt.c, lib/signal.in.h, lib/tempname.c:
      * lib/tempname.h, m4/dup2.m4, m4/fcntl.m4, m4/getdtablesize.m4:
      Update from gnulib, incorporating:
      2015-02-20 getdtablesize: port better for Android
      2015-02-19 fcntl: Fix cross compiling
      2015-02-18 dup2, fcntl: cross-compile better for Android
      2015-02-18 getopt: don't crash on memory exhaustion
      2015-02-17 tempname: allow compilation with C++ (trivial)
      2015-02-17 dup2, fcntl: port to AIX
      2015-02-16 getdtablesize, dup2, fcntl: port to Android
      2015-02-11 getdtablesize, signal_h: Fix Android build
      2015-02-11 maint: various whitespace cleanups in tempname
      066b17df
  8. 01 Jan, 2015 2 commits
  9. 01 Jan, 2014 1 commit
  10. 03 Oct, 2013 1 commit
    • Paul Eggert's avatar
      Merge from gnulib. · 0a858ebf
      Paul Eggert authored
      * src/conf_post.h (__has_builtin, assume): Remove; gnulib now does these.
      * src/lisp.h: Include <verify.h>, for 'assume'.
      
      This also incorpoprates:
      2013-10-02 verify: new macro 'assume'
      2013-09-26 dup2, dup3: work around another cygwin crasher
      2013-09-26 getdtablesize: work around cygwin issue
      0a858ebf
  11. 07 Jul, 2013 1 commit
    • Paul Eggert's avatar
      Make file descriptors close-on-exec when possible. · 067428c1
      Paul Eggert authored
      This simplifies Emacs a bit, since it no longer needs to worry
      about closing file descriptors by hand in some cases.
      It also fixes some unlikely races.  Not all such races, as
      libraries often open files internally without setting
      close-on-exec, but it's an improvement.
      * admin/merge-gnulib (GNULIB_MODULES): Add fcntl, pipe2.
      (GNULIB_TOOL_FLAGS): Avoid binary-io, close.  Do not avoid fcntl.
      * configure.ac (mkostemp): New function to check for.
      (PTY_OPEN): Pass O_CLOEXEC to posix_openpt.
      * lib/fcntl.c, lib/getdtablesize.c, lib/pipe2.c, m4/fcntl.m4:
      * m4/getdtablesize.m4, m4/pipe2.m4: New files, taken from gnulib.
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      * nt/gnulib.mk: Remove empty gl_GNULIB_ENABLED_verify section;
      otherwise, gnulib-tool complains given close-on-exec changes.
      * nt/inc/ms-w32.h (pipe): Remove.
      * nt/mingw-cfg.site (ac_cv_func_fcntl, gl_cv_func_fcntl_f_dupfd_cloexec)
      (gl_cv_func_fcntl_f_dupfd_works, ac_cv_func_pipe2): New vars.
      * src/alloc.c (valid_pointer_p) [!WINDOWSNT]:
      * src/callproc.c (Fcall_process) [!MSDOS]:
      * src/emacs.c (main) [!DOS_NT]:
      * src/nsterm.m (ns_term_init):
      * src/process.c (create_process):
      Use 'pipe2' with O_CLOEXEC instead of 'pipe'.
      * src/emacs.c (Fcall_process_region) [HAVE_MKOSTEMP]:
      * src/filelock.c (create_lock_file) [HAVE_MKOSTEMP]:
      Prefer mkostemp with O_CLOEXEC to mkstemp.
      * src/callproc.c (relocate_fd) [!WINDOWSNT]:
      * src/emacs.c (main): Use F_DUPFD_CLOEXEC, not plain F_DUPFD.
      No need to use fcntl (..., F_SETFD, FD_CLOEXEC), since we're
      now using pipe2.
      * src/filelock.c (create_lock_file) [! HAVE_MKOSTEMP]:
      Make the resulting file descriptor close-on-exec.
      * src/lisp.h, src/lread.c, src/process.c (close_load_descs, close_process_descs):
      * src/lread.c (load_descriptor_list, load_descriptor_unwind):
      Remove; no longer needed.  All uses removed.
      * src/process.c (SOCK_CLOEXEC): Define to 0 if not supplied by system.
      (close_on_exec, accept4, process_socket) [!SOCK_CLOEXEC]:
      New functions.
      (socket) [!SOCK_CLOEXEC]: Supply a substitute.
      (Fmake_network_process, Fnetwork_interface_list):
      (Fnetwork_interface_info, server_accept_connection):
      Make newly-created socket close-on-exec.
      * src/sysdep.c (emacs_open, emacs_fopen):
      Make new-created descriptor close-on-exec.
      * src/w32.c (fcntl): Support F_DUPFD_CLOEXEC well enough for Emacs.
      * src/w32.c, src/w32.h (pipe2): Rename from 'pipe', with new flags arg.
      
      Fixes: debbugs:14803
      067428c1
  12. 13 Mar, 2013 1 commit
    • Paul Eggert's avatar
      File synchronization fixes. · 47d7532e
      Paul Eggert authored
      * admin/CPP-DEFINES (BSD_SYSTEM, HAVE_FSYNC): Remove.
      * admin/merge-gnulib (GNULIB_MODULES): Add fsync, fdatasync.
      * configure.ac (BSD_SYSTEM, BSD_SYSTEM_AHB): Remove; no longer needed.
      (fsync): Remove check; now done by gnulib.
      * lib/fdatasync.c, lib/fsync.c, m4/fdatasync.m4, m4/fsync.m4:
      New files, from gnulib.
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      * lib-src/Makefile.in (LIB_FDATASYNC): New macro.
      (emacsclient${EXEEXT}): Use it.
      * lib-src/emacsclient.c (main): Use fdatasync, not fsync, since we don't
      care about metadata.  Keep trying if interrupted.
      * lib-src/movemail.c (main, popmail): Don't worry about BSD_SYSTEM, since
      fsync is available everywhere (or there is a substitute).  Don't
      report an error if fsync returns EINVAL.
      * nt/inc/ms-w32.h (fdatasync): New macro, suggested by Eli Zaretskii.
      * src/Makefile.in (LIB_FDATASYNC): New macro.
      (LIBES): Use it.
      * src/conf_post.h (BSD_SYSTEM, BSD_SYSTEM_AHB): Remove; no longer needed.
      * src/fileio.c (Fwrite_region, write_region_inhibit_fsync):
      Don't worry about HAVE_FSYNC, since a substitute fsync is
      available if the system lacks one.
      (Fwrite_regin): Retry fsync if interrupted.
      
      Fixes: debbugs:13944
      47d7532e