1. 03 Nov, 2012 1 commit
  2. 26 Oct, 2012 3 commits
  3. 24 Oct, 2012 2 commits
  4. 23 Oct, 2012 2 commits
  5. 21 Oct, 2012 2 commits
    • Glenn Morris's avatar
      Put back old Emacs 22 icons, just don't install them · ad483434
      Glenn Morris authored
      Some people prefer them to the newer icon
      
      * Makefile.in (install-etc): Don't install emacs22 icons.
      
      * etc/images/icons/hicolor/32x32/apps/emacs22.png:
      * etc/images/icons/hicolor/16x16/apps/emacs22.png:
      * etc/images/icons/hicolor/48x48/apps/emacs22.png:
      * etc/images/icons/hicolor/24x24/apps/emacs22.png: Restore old icons.
      
      * etc/images/icons/README: Restore info about emacs22 icons
      ad483434
    • Glenn Morris's avatar
      In Makefile.in, use a make variable rather than a shell variable. · 8dc2a723
      Glenn Morris authored
      * Makefile.in (emacs_transform): New variable.
      (install-etc): Prefer a make variable to a shell variable.
      8dc2a723
  6. 19 Oct, 2012 2 commits
    • Paul Eggert's avatar
      Undo faccessat change. · f0a80175
      Paul Eggert authored
      f0a80175
    • Paul Eggert's avatar
      Use faccessat, not access, when checking file permissions. · e752e0b0
      Paul Eggert authored
      * .bzrignore: Add lib/fcntl.h.
      * configure.ac (euidaccess): Remove check; gnulib does this for us now.
      (gl_FCNTL_O_FLAGS): Define a dummy version.
      * lib/at-func.c, lib/euidaccess.c, lib/faccessat.c, lib/fcntl.in.h:
      * lib/getgroups.c, lib/group-member.c, lib/root-uid.h:
      * lib/xalloc-oversized.h, m4/euidaccess.m4, m4/faccessat.m4:
      * m4/fcntl_h.m4, m4/getgroups.m4, m4/group-member.m4:
      New files, from gnulib.
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      * admin/merge-gnulib (GNULIB_MODULES): Add faccessat.
      (GNULIB_TOOL_FLAGS): Avoid at-internal, fchdir, malloc-posix,
      openat-die, openat-h, save-cwd.  Do not avoid fcntl-h.
      Omit gnulib's m4/fcntl-o.m4.
      * nt/inc/ms-w32.h (AT_FDCWD, AT_EACCESS): New symbols.
      (access): Remove.
      (faccessat): New macro.
      * src/Makefile.in (LIB_EACCESS): New macro.
      (LIBES): Use it.
      * src/callproc.c (init_callproc):
      * src/charset.c (init_charset):
      * src/fileio.c (check_existing, check_executable):
      * src/lread.c (openp, load_path_check):
      * src/process.c (allocate_pty):
      * src/xrdb.c (file_p):
      Use faccessat, not access or euidaccess.  Use symbolic names
      instead of integers for the flags, as they're portable now.
      * src/charset.c, src/xrdb.c: Include <fcntl.h>, for the new flags used.
      * src/fileio.c (Ffile_readable_p):
      Use faccessat, not stat + open + close.
      (file_directory_p): New function, which uses 'stat' on most places
      but 'access' (for efficiency) if WINDOWSNT.
      * src/fileio.c (Ffile_directory_p, Fset_file_times):
      * src/xrdb.c (file_p): Use file_directory_p.
      * src/lisp.h (file_directory_p): New decl.
      * src/lread.c (openp): When opening a file, use fstat rather than
      stat, as that avoids a permissions race.  When not opening a file,
      use file_directory_p rather than stat.
      * src/process.c, src/sysdep.c, src/term.c: All uses of '#ifdef O_NONBLOCK'
      changed to '#if O_NONBLOCK', to accommodate gnulib O_* tyle.
      * src/w32.c (sys_faccessat): Rename from sys_access and switch to
      faccessat's API.  All uses changed.
      
      Fixes: debbugs:12632
      e752e0b0
  7. 18 Oct, 2012 1 commit
  8. 17 Oct, 2012 1 commit
  9. 15 Oct, 2012 1 commit
  10. 11 Oct, 2012 1 commit
  11. 08 Oct, 2012 1 commit
  12. 07 Oct, 2012 2 commits
    • Jan Djärv's avatar
      Check for OSX >= 10.4 to match what the maunal says and what we actually support. · 335f5ae4
      Jan Djärv authored
      * configure.ac: Check that OSX is 10.4 or newer.
      
      * etc/NEWS (NextStep/OSX port changes): OSX 10.4 or newer is required.
      
      * src/nsfns.m (Fns_list_services): Remove comment and check for OSX < 10.4.
      (ns_do_applescript): Remove check for >= MAC_OS_X_VERSION_10_4.
      
      * src/nsimage.m (setPixmapData, getPixelAtX, setAlphaAtX): Remove onTiger.
      
      * src/nsmenu.m (fillWithWidgetValue:): Remove code for < MAC_OS_X_VERSION_10_2.
      
      * src/nsselect.m (ns_string_from_pasteboard): Remove check for >=
      MAC_OS_X_VERSION_10_4.
      
      * src/nsterm.h (MAC_OS_X_VERSION_10_3, onTiger): Remove.
      (EmacsApp): Remove check for >= MAC_OS_X_VERSION_10_4.
      (struct nsfont_info): Remove check for >= MAC_OS_X_VERSION_10_3.
      335f5ae4
    • Paul Eggert's avatar
      Improve sys_siglist detection. · c622b48f
      Paul Eggert authored
      * configure.ac (sys_siglist): Look for its decl in <signal.h>.
      Otherwise, it's not found in either Fedora 17 or Solaris 11.
      * src/sysdep.c (sys_siglist, init_signals): Use _sys_siglist if it's
      defined as a macro, as is done in Solaris.
      (sys_siglist_entries): New macro.
      (save_strsignal): Use it.
      * src/syssignal.h (safe_strsignal): Now ATTRIBUTE_CONST, to pacify
      GCC 4.7.2 on Fedora 17 with the fixed sys_siglist detection.
      c622b48f
  13. 04 Oct, 2012 3 commits
    • Paul Eggert's avatar
      Move ChangeLog entry to proper file. · 7509f454
      Paul Eggert authored
      7509f454
    • Paul Eggert's avatar
      Merge from gnulib. · bb1dfdad
      Paul Eggert authored
      bb1dfdad
    • Paul Eggert's avatar
      Port timers to OpenBSD, plus check for timer failures. · 2b794d69
      Paul Eggert authored
      OpenBSD problem reported by Han Boetes.
      * profiler.c (setup_cpu_timer): Check for failure of timer_settime
      and/or setitimer.
      (Fprofiler_cpu_stop): Don't assume HAVE_SETITIMER.
      * syssignal.h (HAVE_ITIMERSPEC): New macro.  This is for platforms
      like OpenBSD, which has timer_settime but does not declare it.
      OpenBSD does not define SIGEV_SIGNAL, so use that when deciding
      whether to use itimerspec-related primitives.  All uses of
      HAVE_TIMER_SETTIME replaced with HAVE_ITIMERSPEC.
      2b794d69
  14. 30 Sep, 2012 1 commit
  15. 27 Sep, 2012 2 commits
  16. 24 Sep, 2012 1 commit
    • Stefan Monnier's avatar
      Rewrite sampler to use Elisp hash-tables. · 3d80c99f
      Stefan Monnier authored
      * src/profiler.c: Remove filtering functionality.
      (is_in_trace, Qgc): Remove vars.
      (make_log, record_backtrace, Fsample_profiler_log):
      Rewrite, using Elisp hash-tables.
      (approximate_median, evict_lower_half): New functions.
      (cpu_log): Rename from sample_log.
      (cpu_gc_count): New var.
      (Fsample_profiler_reset, Fmemory_profiler_reset): Remove.
      (sigprof_handler): Add count to cpu_gc_count during GC, detected via
      backtrace_list.
      (block_sigprof, unblock_sigprof): Remove.
      (gc_probe, mark_profiler): Remove functions.
      (syms_of_profiler): Staticpro cpu_log and memory_log.
      
      * lisp/profiler.el (profiler-sample-interval): Move before first use.
      Change default to 1ms.
      (profiler-entry=, profiler-backtrace-reverse, profiler-log-fixup-slot)
      (profiler-calltree-elapsed<, profiler-calltree-elapsed>): Remove functions.
      (profiler-entry-format): Don't use type-of.
      (profiler-slot, profiler-log): Remove structs.
      (profiler-log-timestamp, profiler-log-type, profiler-log-diff-p):
      Redefine for new log representation.
      (profiler-log-diff, profiler-log-fixup, profiler-calltree-build-1):
      Rewrite for new log representation.
      (profiler-calltree): Remove `elapsed' fields.
      (profiler-calltree-count<, profiler-report-make-entry-part):
      Remove gc special case.
      (profiler-calltree-find): Use equal.
      (profiler-calltree-walk): Remove `args'; rely on closures instead.
      (profiler-calltree-compute-percentages-1): Remove; inlined.
      (profiler-calltree-compute-percentages): Simplify.
      (profiler-report-log, profiler-report-reversed)
      (profiler-report-order): Use defvar-local.
      (profiler-report-line-format): Remove `elapsed', do a bit of CSE.
      (profiler-report-mode-map): Remove up/down bindings.
      (profiler-report-make-buffer-name): Simplify by CSE.
      (profiler-report-mode): Remove redundant code.
      (profiler-report-expand-entry, profiler-report-collapse-entry):
      Use inhibit-read-only.
      (profiler-report-render-calltree-1): Simplify by CSE.
      (profiler-reset): Rewrite for new subroutines.
      (profiler--report-cpu): Rename from sample-profiler-report.
      (profiler--report-memory): Rename from memory-profiler-report.
      
      * src/alloc.c (Fgarbage_collect): Record itself in backtrace_list.
      Don't set is_in_trace any more.  Don't call mark_profiler.
      Only call gc_probe for the memory profiler.
      (syms_of_alloc): Define Qautomatic_gc.
      
      * src/lisp.h (SXHASH_COMBINE): Move back to...
      * src/fns.c (SXHASH_COMBINE): ...here.
      
      * src/xdisp.c (Qautomatic_redisplay): New constant.
      (redisplay_internal): Record itself in backtrace_list.
      (syms_of_xdisp): Define Qautomatic_redisplay.
      
      * .dir-locals.el (indent-tabs-mode): Remove personal preference.
      3d80c99f
  17. 23 Sep, 2012 1 commit
  18. 22 Sep, 2012 2 commits
  19. 19 Sep, 2012 1 commit
    • Tassilo Horn's avatar
      New feature: set optimal slice from BoundingBox information. · db8a5a18
      Tassilo Horn authored
      * doc-view.el (doc-view-mode-map): Add keybinding.
      (doc-view-menu): Add menu entry.
      (doc-view-set-slice): Adapt docstring.
      (doc-view-get-bounding-box, doc-view-guess-paper-size)
      (doc-view-scale-bounding-box)
      (doc-view-set-slice-from-bounding-box): New functions.
      (doc-view-paper-sizes): New defvar.
      
      * doc/emacs/misc.texi (DocView Slicing): Document new slice from
      BoundingBox feature.
      db8a5a18
  20. 18 Sep, 2012 1 commit
  21. 17 Sep, 2012 5 commits
    • Andreas Schwab's avatar
      * Makefile.in (bootstrap): Revert last change. Run config.status · d3612ac3
      Andreas Schwab authored
      after config.status --recheck, run configure from $(srcdir).
      (config.status): Run configure from $(srcdir).
      d3612ac3
    • Paul Eggert's avatar
      * Makefile.in: Run autogen/copy_autogen if autogen.sh fails, · dee26dfa
      Paul Eggert authored
      to create 'configure'; problem reported by Andreas Schwab in
      <http://lists.gnu.org/archive/html/emacs-devel/2012-09/msg00438.html>.
      * autogen.sh: Exit with status 1 when failing due to missing tools,
      reverting the 2012-09-10 change to this file.
      * autogen/copy_autogen: Fail if one of the subsidiary actions fail.
      Use 'cp -f' for the build-aux files, since the destinations are
      typically read-only.
      dee26dfa
    • Paul Eggert's avatar
      * Makefile.in: Fix build error on FreeBSD. · 50bfc824
      Paul Eggert authored
      ($(MAKEFILE_NAME)): Pass MAKE='$(MAKE)' to config.status's env.
      Suggested by Wolfgang Jenker in
      <http://lists.gnu.org/archive/html/emacs-devel/2012-09/msg00430.html>.
      (MAKE_CONFIG_STATUS): Remove.  Remaining use expanded.
      This undoes part of the 2012-09-10 patch.
      (bootstrap): Run ./configure, rather than trying to run config.status
      if it exists.  That builds src/epaths.h more reliably.
      50bfc824
    • Paul Eggert's avatar
      Remove no-longer-needed Solaris 2.4 vfork bug workaround. · eeceac93
      Paul Eggert authored
      The workaround was for improving performance on Solaris 2.4, but
      is getting in the way now.  Emacs will still work if someone is
      still running Solaris 2.4 in a museum somewhere; Sun dropped
      support for Solaris 2.4 in 2003.
      * configure.ac (ac_cv_func_vfork_works): Default to 'no' on
      Solaris 2.4, so that AC_FUNC_VFORK doesn't think vfork works.
      * src/callproc.c (Fcall_process) [HAVE_WORKING_VFORK]:
      * src/process.c (create_process) [HAVE_WORKING_VFORK]:
      Omit now-unnecessary workaround for the Solaris 2.4 vfork bug,
      since Emacs no longer uses vfork on that platform.
      eeceac93
    • Glenn Morris's avatar
      Reduce the number of versioned files storing the short copyright string · 78f83752
      Glenn Morris authored
      * configure.ac (copyright): New output variable.
      (COPYRIGHT): New AC_DEFINE.
      
      * admin/admin.el (set-copyright): No more need to set copyrights for
      nextstep, or .c files.  Add configure.ac and config.nt.
      
      * lib-src/ebrowse.c (version):
      * lib-src/etags.c (print_version): Use COPYRIGHT.
      
      * nextstep/templates/Info-gnustep.plist.in:
      * nextstep/templates/InfoPlist.strings.in:
      * nextstep/templates/Info.plist.in: Let configure set copyright.
      
      * nt/config.nt (COPYRIGHT): New.
      
      * src/emacs.c: Use COPYRIGHT.
      78f83752
  22. 16 Sep, 2012 3 commits
    • Paul Eggert's avatar
      Remove configure's --without-sync-input option. · 0caaedb1
      Paul Eggert authored
      When auditing signal-handling in preparation for cleaning it up,
      I found that SYNC_INPUT has race conditions and would be a real
      pain to fix.  Since it's an undocumented and deprecated
      configure-time option, now seems like a good time to remove it.
      Also see <http://bugs.gnu.org/11080#16>.
      * configure.ac (SYNC_INPUT, BROKEN_SA_RESTART): Remove.
      * admin/CPP-DEFINES (BROKEN_SA_RESTART, SA_RESTART): Remove.
      * etc/TODO (Make SYNC_INPUT the default): Remove, as the code now
      behaves as if SYNC_INPUT is always true.
      * src/alloc.c (_bytes_used, __malloc_extra_blocks, _malloc_internal)
      (_free_internal) [!DOUG_LEA_MALLOC]: Remove decls.
      (alloc_mutex) [!SYSTEM_MALLOC && !SYNC_INPUT && HAVE_PTHREAD]:
      (malloc_hysteresis):
      (check_depth) [XMALLOC_OVERRUN_CHECK]:
      (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT):
      (__malloc_hook, __realloc_hook, __free_hook, BYTES_USED)
      (dont_register_blocks, bytes_used_when_reconsidered)
      (bytes_used_when_full, emacs_blocked_free, emacs_blocked_malloc)
      (emacs_blocked_realloc, reset_malloc_hooks, uninterrupt_malloc):
      [!SYSTEM_MALLOC && !SYNC_INPUT]:
      Remove. All uses removed.
      (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): Use a different
      implementation, one that depends on whether the new macro
      XMALLOC_BLOCK_INPUT_CHECK is defined, not on whether SYNC_INPUT
      is defined.
      * src/atimer.c (run_timers, handle_alarm_signal):
      * src/keyboard.c (pending_signal, poll_for_input_1, poll_for_input)
      (handle_async_input, process_pending_signals)
      (handle_input_available_signal, init_keyboard):
      * src/nsterm.m (ns_read_socket):
      * src/process.c (wait_reading_process_output):
      * src/regex.c (immediate_quit, IMMEDIATE_QUIT_CHECK):
      * src/sysdep.c (emacs_sigaction_init) [SA_RESTART]:
      (emacs_write):
      * src/xterm.c (XTread_socket):
      Assume SYNC_INPUT.
      * src/conf_post.h (SA_RESTART) [IRIX6_5]: Do not #undef.
      * src/eval.c (handling_signal): Remove.  All uses removed.
      * src/lisp.h (ELSE_PENDING_SIGNALS): Remove.
      All uses replaced with the SYNC_INPUT version.
      (reset_malloc_hooks, uninterrupt_malloc, handling_signal):
      Remove decls.
      * src/sysdep.c, src/syssignal.h (main_thread) [FORWARD_SIGNAL_TO_MAIN_THREAD]:
      Now static.
      
      Fixes: debbugs:12450
      0caaedb1
    • Glenn Morris's avatar
      92f7c6f1
    • Glenn Morris's avatar
      Increase compartmentalization of Nextstep builds rules, · 83da1b55
      Glenn Morris authored
      and store Emacs version number in fewer versioned files.
      
      * configure.ac (ns_appsrc): Use relative names.
      (ns_frag): Remove.
      (Info-gnustep.plist, Emacs.desktop, Info.plist, InfoPlist.strings)
      (nextstep/Makefile): Generate these nextstep files.
      (SUBDIR_MAKEFILES): Add nextstep.
      
      * Makefile.in (clean, distclean, bootstrap-clean): Add nextstep.
      
      * make-dist (nextstep/templates): Add directory.
      (nextstep/Cocoa/Emacs.base/Contents/Resources/English.lproj): Remove.
      (nextstep/Cocoa/Emacs.base/Contents)
      (nextstep/GNUstep/Emacs.base/Resources): Update contents.
      
      * .bzrignore: Add some nextstep files.
      
      * admin/admin.el (set-version): No more need to set nextstep versions.
      (set-copyright): Update for moved nextstep files.
      
      * nextstep/Makefile.in: New file.
      * nextstep/templates: New directory.
      * nextstep/templates/Emacs.desktop.in, nextstep/templates/Info-gnustep.plist.in:
      * nextstep/templates/Info.plist.in, nextstep/templates/InfoPlist.strings.in:
      Move here from various Cocoa/, GNUstep/ locations.
      Let configure set the version number.
      * nextstep/Cocoa/Emacs.base/Contents/Info.plist:
      * nextstep/Cocoa/Emacs.base/Contents/Resources/English.lproj/InfoPlist.strings:
      * nextstep/GNUstep/Emacs.base/Resources/Info-gnustep.plist:
      * nextstep/GNUstep/Emacs.base/Resources/Emacs.desktop: Move to templates/.
      * nextstep/Cocoa/Emacs.base/Contents/Resources/English.lproj: Remove directory.
      
      * src/Makefile.in (ns_appdir, ns_appbindir, ns_appsrc): Remove variables.
      (ns_frag): Remove.
      (ns-app): Move here from ns.mk, and simplify.
      (clean): Simplify nextstep entry.
      * src/ns.mk: Remove file.
      83da1b55
  23. 15 Sep, 2012 1 commit
    • Paul Eggert's avatar
      Port better to POSIX hosts lacking _setjmp. · 0328b6de
      Paul Eggert authored
      * configure.ac (HAVE__SETJMP, HAVE_SIGSETJMP): New symbols.
      (_setjmp, _longjmp): Remove.
      * src/lisp.h: Include <setjmp.h> here, since we use its symbols here.
      All instances of '#include <setjmp.h>' removed, if the
      only reason for the instance was because "lisp.h" was included.
      (sys_jmp_buf, sys_setjmp, sys_longjmp): New symbols.
      Unless otherwise specified, replace all uses of jmp_buf, _setjmp,
      and _longjmp with the new symbols.  Emacs already uses _setjmp if
      available, so this change affects only POSIXish hosts that have
      sigsetjmp but not _setjmp, such as some versions of Solaris and
      Unixware.  (Also, POSIX-2008 marks _setjmp as obsolescent.)
      * src/image.c (_setjmp, _longjmp) [HAVE_PNG && !HAVE__SETJMP]: New macros.
      (png_load_body) [HAVE_PNG]:
      (PNG_LONGJMP) [HAVE_PNG && PNG_LIBPNG_VER < 10500]:
      (PNG_JMPBUF) [HAVE_PNG && PNG_LIBPNG_VER >= 10500]:
      Use _setjmp and _longjmp rather than sys_setjmp and sys_longjmp,
      since PNG requires jmp_buf.  This is the only exception to the
      general rule that we now use sys_setjmp and sys_longjmp.
      This exception is OK since this code does not change the signal
      mask or longjmp out of a signal handler.
      
      Fixes: debbugs:12446
      0328b6de