1. 08 Sep, 2013 1 commit
  2. 07 Sep, 2013 1 commit
    • Paul Eggert's avatar
      Port --without-x --enable-gcc-warnings to Fedora 19. · 4b73fc73
      Paul Eggert authored
      * configure.ac (WERROR_CFLAGS): Omit redundant use of
      -Wmissing-field-initializers, -Wswitch, -Wtype-limits,
      -Wunused-parameter.  If there is no window system, also omit
      -Wsuggest-attribute=const and -Wsuggest-attribute=noreturn; this
      is needed for Fedora 19.
      * src/gfilenotify.c (globals_of_gfilenotify):
      Call g_type_init only if using an older glib version that needs it.
      4b73fc73
  3. 05 Sep, 2013 1 commit
    • Dmitry Antipov's avatar
      Make --without-x compatible with --enable-gcc-warnings. · 257b3b03
      Dmitry Antipov authored
      * configure.ac: If both --without-x and --enable-gcc-warnings are
      specified, use -Wno-unused-variable, -Wno-unused-but-set-variable
      and -Wno-unused-but-set-parameter.
      * src/font.c (register_font_driver): Move check under HAVE_WINDOW_SYSTEM.
      * src/font.h (struct font_driver): Move draw, get_bitmap and free_bitmap
      members under HAVE_WINDOW_SYSTEM.
      * src/keyboard.c (make_lispy_focus_out): Likewise.
      (record_menu_key): Move under HAVE_MENUS.
      * src/xdisp.c (toplevel): Move hourglass_shown_p, hourglass_atimer and
      THIN_SPACE_WIDTH under HAVE_WINDOW_SYSTEM.
      (syms_of_xdisp): Adjust user.
      (window_box_edges): Define only if HAVE_WINDOW_SYSTEM.
      (start_hourglass, cancel_hourglass):
      * src/xfaces.c (toplevel): Likewise with PT_PER_INCH,
      clear_font_table_count, CLEAR_FONT_TABLE_COUNT
      and CLEAR_FONT_TABLE_NFONTS.
      (set_font_frame_param, clear_face_gcs, realize_non_ascii_face):
      Declare only if HAVE_WINDOW_SYSTEM.
      (lface_same_font_attributes_p, clear_face_gcs): Define only
      if HAVE_WINDOW_SYSTEM.
      257b3b03
  4. 02 Sep, 2013 1 commit
  5. 31 Aug, 2013 2 commits
  6. 28 Aug, 2013 1 commit
    • Stefan Monnier's avatar
      Try to reduce redundancy in doc/misc/Makefile.in. · 0acfedd3
      Stefan Monnier authored
      * configure.ac (DOCMISC_W32): New var to replace DOCMISC_*_W32.
      * doc/misc/Makefile.in (DOCMISC_W32): New var to replace DOCMISC_*_W32.
      (TARGETS): New intermediate variable.
      (DVI_TARGETS, HTML_TARGETS, PDF_TARGETS, PS_TARGETS): Use it.
      0acfedd3
  7. 27 Aug, 2013 3 commits
    • Glenn Morris's avatar
      3ed86db9
    • Dmitry Antipov's avatar
      * configure.ac (DOCMISC_DVI_W32, DOCMISC_HTML_W32, DOCMISC_INFO_W32) · 15091df5
      Dmitry Antipov authored
      (DOCMISC_PDF_W32, DOCMISC_PS_W32): No spaces!
      15091df5
    • Glenn Morris's avatar
      Move source for Emacs on MS Windows FAQ here from Emacs webpages repository · 1857cd3f
      Glenn Morris authored
      * Makefile.in (mostlyclean, clean, distclean, bootstrap-clean)
      (maintainer-clean, check-declare): Remove pointless subshells.
      Check cd return value.
      
      * configure.ac (DOCMISC_DVI_W32, DOCMISC_HTML_W32, DOCMISC_INFO_W32)
      (DOCMISC_PDF_W32, DOCMISC_PS_W32): New output variables.
      * Makefile.in (check-info-dir): Ignore efaq-w32.
      
      * admin/admin.el (manual-misc-manuals): Use INFO_COMMON rather than
      INFO_TARGETS.
      
      * doc/misc/efaq-w32.texi: Move here from the web-pages repository.
      
      * doc/misc/Makefile.in (DOCMISC_DVI_W32, DOCMISC_HTML_W32, DOCMISC_INFO_W32)
      (DOCMISC_PDF_W32, DOCMISC_PS_W32): New configure output variables.
      (INFO_COMMON, INFO_INSTALL): New derivations of INFO_TARGETS.
      (DVI_TARGETS, HTML_TARGETS, PDF_TARGETS, PS_TARGETS):
      Add DOCMISC_*_W32 variables.
      (echo-info): Use INFO_INSTALL rather than INFO_TARGETS.
      (efaq_w32_deps): New variable.
      (efaq-w32, $(buildinfodir)/efaq-w32$(INFO_EXT), efaq-w32.dvi)
      (efaq-w32.pdf, efaq-w32.html): New rules.
      (clean): Remove efaq-w32 products.
      1857cd3f
  8. 23 Aug, 2013 1 commit
  9. 22 Aug, 2013 1 commit
  10. 21 Aug, 2013 1 commit
    • Paul Eggert's avatar
      Port close-on-exec pty creation to FreeBSD 9.1-RELEASE. · f035e3a9
      Paul Eggert authored
      * configure.ac (PTY_OPEN): If posix_openpt with O_CLOEXEC fails
      and reports EINVAL, try it again without O_CLOEXEC.  This should
      port PTY_OPEN to FreeBSD 9, which stupidly rejects O_CLOEXEC.
      What were they thinking?
      
      Fixes: debbugs:15129
      f035e3a9
  11. 15 Aug, 2013 1 commit
  12. 14 Aug, 2013 1 commit
  13. 12 Aug, 2013 4 commits
    • Eli Zaretskii's avatar
      Fix zlib support on MS-Windows. · aa942e2b
      Eli Zaretskii authored
       configure.ac (HAVE_ZLIB): Don't use -lz on MinGW.
      
       src/decompress.c <zlib_initialized> [WINDOWSNT]: New static variable.
       (Fzlib_decompress_region) [WINDOWSNT]: Call init_zlib_functions if
       not yet initialized.
      aa942e2b
    • Paul Eggert's avatar
      Minor zlib configuration tweaks. · 1d238bc7
      Paul Eggert authored
      * configure.ac (HAVE_ZLIB): Don't assume zlib is linked if PNG is.
      * src/decompress.c (fn_inflateInit2) [!WINDOWSNT]:
      Don't assume presence of fn_inflateInit2_ zlib internal function.
      1d238bc7
    • Eli Zaretskii's avatar
      Fix build with zlib on MS-Windows. · 594a4307
      Eli Zaretskii authored
       configure.ac (LIBZ): Comment on w32 peculiarities regarding LIBZ.
      
       src/decompress.c [WINDOWSNT]: Include windows.h and w32.h.
       (DEF_ZLIB_FN, LOAD_ZLIB_FN) [WINDOWSNT]: New macros.  Use them to
       define static variables that are pointers to zlib functions to be
       dynamically loaded.
       (init_zlib_functions) [WINDOWSNT]: New function.
       (fn_inflateInit2_, fn_inflate, fn_inflateEnd, fn_inflateInit2):
       New macros.
       (Fdecompress_gzipped_region, unwind_decompress): Use the fn_*
       macros instead of invoking the zlib functions directly.
       (syms_of_decompress): DEFSYM Qzlib_dll.  Staticpro
       Szlib_available_p.
      
       lisp/term/w32-win.el (dynamic-library-alist): Add DLLs for zlib.
      594a4307
    • Glenn Morris's avatar
      Add build, install, uninstall rules for all dvi, html, pdf, ps manuals · 8496d8d7
      Glenn Morris authored
      * configure.ac (etcdocdir): Rename from docdir, to avoid confusion
      with configure's standard --docdir argument.  All uses updated.
      
      * Makefile.in (etcdocdir): Rename from docdir.  All uses updated.
      (install-etcdoc): Rename from install-doc.  All uses updated.
      (uninstall): Run uninstall-doc.
      (PSS): Add misc-ps.
      (INSTALL_DVI, INSTALL_HTML, INSTALL_PDF, INSTALL_PS)
      (INSTALL_DOC, UNINSTALL_DVI, UNINSTALL_HTML, UNINSTALL_PDF)
      (UNINSTALL_PS, UNINSTALL_DOC): New variables.
      ($(INSTALL_DOC), install-doc, install-dvi, install-html, install-pdf)
      (install-ps, $(UNINSTALL_DOC), uninstall-doc, uninstall-dvi)
      (uninstall-html, uninstall-pdf, uninstall-ps): New .PHONY rules.
      
      * doc/emacs/Makefile.in (prefix, datarootdir, datadir, PACKAGE_TARNAME)
      (docdir, dvidir, htmldir, pdfdir, psdir, GZIP_PROG, INSTALL)
      (INSTALL_DATA): New, set by configure.
      (HTML_OPTS, DVI_TARGETS, HTML_TARGETS, PDF_TARGETS, PS_TARGETS):
      New variables.
      (.SUFFIXES): Add .ps and .dvi.
      (.dvi.ps): New suffix rule.
      (dvi, html, pdf, ps): Use *_TARGETS variables.
      (emacs.ps, emacs-xtra.ps): Remove explicit rules.
      (emacs.html): Use HTML_OPTS.
      (clean): Use DVI_TARGETS, HTML_TARGETS, PDF_TARGETS, PS_TARGETS.
      (.PHONY): install-dvi, install-html, install-pdf, install-ps
      ,install-doc, uninstall-dvi, uninstall-html, uninstall-pdf,
      uninstall-ps, and uninstall-doc.
      (install-dvi, install-html, install-pdf, install-ps, install-doc)
      (uninstall-dvi, uninstall-html, uninstall-ps, uninstall-pdf)
      (uninstall-doc): New rules.
      
      * doc/lispintro/Makefile.in (prefix, datarootdir, datadir, PACKAGE_TARNAME)
      (docdir, dvidir, htmldir, pdfdir, psdir, GZIP_PROG, INSTALL)
      (INSTALL_DATA): New, set by configure.
      (HTML_OPTS, DVI_TARGETS, HTML_TARGETS, PDF_TARGETS, PS_TARGETS):
      New variables.
      (.SUFFIXES): Add .ps and .dvi.
      (.dvi.ps): New suffix rule.
      (dvi, html, pdf, ps): Use *_TARGETS variables.
      (emacs-lisp-intro.ps): Remove explicit rule.
      (emacs-lisp-intro.html): Use HTML_OPTS.
      (clean): Use DVI_TARGETS, HTML_TARGETS, PDF_TARGETS, PS_TARGETS.
      (.PHONY): install-dvi, install-html, install-pdf, install-ps
      ,install-doc, uninstall-dvi, uninstall-html, uninstall-pdf,
      uninstall-ps, and uninstall-doc.
      (install-dvi, install-html, install-pdf, install-ps, install-doc)
      (uninstall-dvi, uninstall-html, uninstall-ps, uninstall-pdf)
      (uninstall-doc): New rules.
      
      * doc/lispref/Makefile.in (prefix, datarootdir, datadir, PACKAGE_TARNAME)
      (docdir, dvidir, htmldir, pdfdir, psdir, GZIP_PROG, INSTALL)
      (INSTALL_DATA): New, set by configure.
      (HTML_OPTS, DVI_TARGETS, HTML_TARGETS, PDF_TARGETS, PS_TARGETS):
      New variables.
      (.SUFFIXES): Add .ps and .dvi.
      (.dvi.ps): New suffix rule.
      (dvi, html, pdf, ps): Use *_TARGETS variables.
      (elisp.html): Use HTML_OPTS.
      (elisp.ps): Remove explicit rule.
      (.PHONY): install-dvi, install-html, install-pdf, install-ps
      ,install-doc, uninstall-dvi, uninstall-html, uninstall-pdf,
      uninstall-ps, and uninstall-doc.
      (install-dvi, install-html, install-pdf, install-ps, install-doc)
      (uninstall-dvi, uninstall-html, uninstall-ps, uninstall-pdf)
      (uninstall-doc): New rules.
      (clean): Use DVI_TARGETS, HTML_TARGETS, PDF_TARGETS, PS_TARGETS.
      
      * doc/misc/Makefile.in (prefix, datarootdir, datadir, PACKAGE_TARNAME)
      (docdir, dvidir, htmldir, pdfdir, psdir, GZIP_PROG, INSTALL)
      (INSTALL_DATA): New, set by configure.
      (HTML_OPTS, HTML_TARGETS, PS_TARGETS, DVIPS): New variables.
      (.PHONY): Add html, ps, install-dvi, install-html, install-pdf,
      install-ps ,install-doc, uninstall-dvi, uninstall-html, uninstall-pdf,
      uninstall-ps, and uninstall-doc.
      (.SUFFIXES): Add .ps and .dvi.
      (.dvi.ps): New suffix rule.
      (html, ps, ada-mode.html, auth.html, autotype.html, bovine.html)
      (calc.html, cc-mode.html, cl.html, dbus.html, dired-x.html)
      (ebrowse.html, ede.html, ediff.html, edt.html, eieio.html)
      (emacs-gnutls.html, emacs-mime.html, epa.html, erc.html)
      (ert.html, eshell.html, eudc.html, faq.html, flymake.html)
      (forms.html, gnus.html, htmlfontify.html, idlwave.html)
      (ido.html, mairix-el.html, message.html, mh-e.html)
      (newsticker.html, nxml-mode.html, org.html, pgg.html)
      (rcirc.html, reftex.html, remember.html, sasl.html, sc.html)
      (semantic.html, sieve.html, smtpmail.html, speedbar.html)
      (srecode.html, todo-mode.html, tramp.html, url.html, vip.html)
      (viper.html, widget.html, wisent.html, woman.html, install-dvi)
      (install-html, install-pdf, install-ps, install-doc, uninstall-dvi)
      (uninstall-html, uninstall-ps, uninstall-pdf, uninstall-doc):
      New rules.
      (clean): Remove HTML_TARGETS and PS_TARGETS.
      8496d8d7
  14. 11 Aug, 2013 2 commits
  15. 10 Aug, 2013 1 commit
  16. 04 Aug, 2013 1 commit
    • Paul Eggert's avatar
      Fix some minor races in hosts lacking mkostemp. · e0fdb694
      Paul Eggert authored
      Gnulib's emulation of mkostemp doesn't have races that Emacs's does.
      * configure.ac (mkostemp): Remove check for this function;
      gnulib does the check now.
      (mkstemp): Remove check for this no-longer-used function.
      * lib/mkostemp.c, lib/secure_getenv.c, lib/tempname.c, lib/tempname.h:
      * m4/mkostemp.m4, m4/secure_getenv.m4, m4/tempname.m4:
      New files, copied from Gnulib.
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      * admin/merge-gnulib (GNULIB_MODULES): Add mkostemp.
      * lib-src/movemail.c (main):
      * lib-src/update-game-score.c (write_scores):
      Use mkostemp (which now works on all platforms, due to changes
      in the portability layer) rather than mktemp (which has a race)
      or mkstemp (which we no longer bother with).
      * src/callproc.c (create_temp_file):
      * src/filelock.c (create_lock_file):
      Assume mkostemp, since it's now provided by Gnulib.
      
      Fixes: debbugs:15015
      e0fdb694
  17. 27 Jul, 2013 1 commit
  18. 24 Jul, 2013 1 commit
  19. 23 Jul, 2013 2 commits
    • Glenn Morris's avatar
      No need for configure to create etc/ and lisp/ any more · 60967f56
      Glenn Morris authored
      * configure.ac (etc, lisp): No need to create specially.
      Configure already creates lisp when generating lisp/Makefile;
      src/Makefile now creates etc when needed.
      
      * src/Makefile.in ($(etc)/DOC, temacs$(EXEEXT)): Ensure etc/ exists.
      60967f56
    • Paul Eggert's avatar
      Port to GNU/Linux systems with tinfo but not ncurses. · a29c3e6d
      Paul Eggert authored
      * configure.ac (USE_NCURSES): New symbol.
      * src/dispnew.c (init_display): Depend on USE_NCURSES, not GNU_LINUX,
      to decide whether ncurses is being used.  Without this change,
      GCC complains about tgetent not being declared, on a system
      that has tinfo installed but ncurses not installed.
      a29c3e6d
  20. 20 Jul, 2013 1 commit
    • Paul Eggert's avatar
      Fix array bounds violation when pty allocation fails. · 6496aec9
      Paul Eggert authored
      * configure.ac (PTY_TTY_NAME_SPRINTF): Use PTY_NAME_SIZE,
      not sizeof pty_name, since pty_name is now a pointer to the array.
      * src/process.c (PTY_NAME_SIZE): New constant.
      (pty_name): Remove static variable; it's now auto.
      (allocate_pty): Define even if !HAVE_PTYS; that's simpler.
      Take pty_name as an arg rather than using a static variable.
      All callers changed.
      (create_process): Recover pty_flag from process, not from volatile local.
      (create_pty): Stay inside array even when pty allocation fails.
      (Fmake_serial_process): Omit unnecessary initializaiton of pty_flag.
      6496aec9
  21. 13 Jul, 2013 1 commit
  22. 12 Jul, 2013 4 commits
    • Glenn Morris's avatar
      * configure.ac: Further fix. · f7306b81
      Glenn Morris authored
      f7306b81
    • Glenn Morris's avatar
      * configure.ac: Fix goofs in previous. · 81974faa
      Glenn Morris authored
      81974faa
    • Glenn Morris's avatar
      * configure.ac: If with-file-notification=yes, if gfile not found, · 671d4bfc
      Glenn Morris authored
      go on to try inotify (not on MS Windows or Nextstep).
      
      * etc/NEWS: Copyedits.
      671d4bfc
    • Paul Eggert's avatar
      Fix races with threads and file descriptors. · bacba3c2
      Paul Eggert authored
      * configure.ac (PTY_TTY_NAME_SPRINTF): Use emacs_close, not close.
      * src/callproc.c (Fcall_process_region):
      * src/dired.c (open_directory):
      * src/emacs.c (main, Fdaemon_initialized):
      * src/image.c (x_find_image_file):
      * src/inotify.c (Finotify_rm_watch):
      * src/lread.c (Flocate_file_internal):
      * src/process.c (Fnetwork_interface_list, Fnetwork_interface_info):
      * src/term.c (term_mouse_moveto, init_tty):
      * src/termcap.c (tgetent):
      * src/unexaix.c, src/unexcoff.c (report_error, report_error_1, adjust_lnnoptrs)
      * src/unexaix.c, src/unexcoff.c, src/unexcw.c, src/unexelf.c (unexec):
      * src/unexhp9k800.c, src/unexmacosx.c (unexec):
      * src/callproc.c (Fcall_process_region):
      Use emacs_close, not close.
      * src/sysdep.c (POSIX_CLOSE_RESTART, posix_close) [!POSIX_CLOSE_RESTART]:
      New macro and function, which emulates the POSIX_CLOSE_RESTART macro
      and posix_close function on current platforms (which all lack them).
      (emacs_close): Use it.  This should fix the races on GNU/Linux and
      on AIX and on future platforms that support POSIX_CLOSE_RESTART,
      and it should avoid closing random victim file descriptors on
      other platforms.
      bacba3c2
  23. 09 Jul, 2013 1 commit
  24. 08 Jul, 2013 1 commit
  25. 07 Jul, 2013 2 commits
    • Paul Eggert's avatar
      Port to Ubuntu 10. · 9caab067
      Paul Eggert authored
      Problem reported by T.V. Raman.
      * configure.ac (accept4): New function to check for.
      * src/process.c (close_on_exec, accept4, process_socket):
      Define these if !HAVE_ACCEPT4, not if !SOCK_CLOEXEC.
      
      Fixes: debbugs:14803
      9caab067
    • 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
  26. 02 Jul, 2013 3 commits