summaryrefslogtreecommitdiff
path: root/ChangeLog
Commit message (Expand)AuthorAgeFilesLines
* Merge from emacs-24Stefan Monnier2014-09-221-5/+10
|\
| * * configure.ac: Increase headerpad_extra to 1000, update the comment...about load commands. * src/unexmacosx.c (dump_it): Improve error message. Fixes: debbugs:18505 David Caldwell2014-09-211-0/+5
* | Merge from emacs-24; up to 2014-07-09T02:04:12Z!rgm@gnu.orgGlenn Morris2014-09-141-0/+5
|\|
| * Resurrect sound support on MS-Windows that was lost in transition.... configure.ac (HAVE_SOUND): Check for mmsystem.h header that defines the sound stuff on MS-Windows. (Bug#18463) Eli Zaretskii2014-09-131-0/+5
| * Backport: * configure.ac (HAVE_XPM): Explain the use of CPPFLAGS in the Cygwi...Ken Brown2014-08-221-0/+5
* | Improve the experimental local and scoped allocation....* configure.ac (HAVE_STRUCT_ATTRIBUTE_ALIGNED) (HAVE_STATEMENT_EXPRESSIONS): New configure-time checks. * src/alloc.c (local_string_init, local_vector_init): New functions, defined if USE_LOCAL_ALLOCATORS. Mostly, these are moved here from lisp.h, as it's not clear it's worth making them inline. * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false. (GCALIGNED): Depend on HAVE_STRUCT_ATTRIBUTE_ALIGNED and USE_STACK_LISP_OBJECTS, not on a laundry list. (local_string_init, local_vector_init): New decls. (union Aligned_Cons): New type. (scoped_cons): Use it. Give up on the char trick, as it's a too much of a maintenance hassle; if someone wants this speedup they'll just need to convince their compiler to align properly. Conversely, use the speedup if struct Lisp_Cons happens to be aligned even without a directive. Better yet, help it along by using union Aligned_Cons rather than struct Lisp_Cons. (pointer_valid_for_lisp_object): Remove. This check is not necessary, since make_lisp_ptr is already doing it. All uses removed. (local_vector_init, local_string_init): Move to alloc.c. (build_local_vector): Remove this awkward macro, replacing with ... (make_local_vector): New macro, which acts more like a function. Use statement expressions and use __COUNTER__ to avoid macro capture. Fall back on functions if these features are not supported. (build_local_string, make_local_string): Likewise. Paul Eggert2014-09-091-0/+6
* | Expand @AM_DEFAULT_VERBOSITY@ even if Automake is old....* configure.ac: Assume verbose output for older Automake. Fixes: debbugs:18415 Paul Eggert2014-09-071-0/+5
* | Remove unused variable EMACS_HEAPSIZE from src/Makefile.in.... src/Makefile.in (EMACS_HEAPSIZE): Remove, no longer used. (Bug#18416) ChangeLog: Mention explicitly the removal of EMACS_HEAPSIZE. Eli Zaretskii2014-09-061-0/+1
* | * configure.ac (MAKEINFO): Clean up some configuration bitrot....MAKEINFO is already set before we get here, so no need to call AC_PATH_PROG. Bypass $am_missing_run. Simplify version-number checking. Paul Eggert2014-09-031-0/+6
* | Merge from gnulib, incorporating:...2014-09-02 gnulib-common.m4: port to GCC 4.2.1 and Sun Studio 12 C++ 2014-09-01 manywarnings: add GCC 4.9 warnings * m4/gnulib-common.m4, m4/manywarnings.m4: Update from gnulib. Paul Eggert2014-09-021-0/+7
* | Fix typo in previous change's ChangeLog.Paul Eggert2014-09-011-1/+1
* | --enable-silent-warnings now suppresses more chatter....* INSTALL, etc/NEWS: Document this. * lib-src/Makefile.in (AM_DEFAULT_VERBOSITY, AM_V_CC, am__v_CC_) (am__v_CC_0, am__v_CC_1, AM_V_CCLD, am__v_CCLD_, am__v_CCLD_0) (am__v_CCLD_1): New macros, taken from Automake. (regex.o, etags${EXEEXT}, ctags${EXEEXT}, ebrowse${EXEEXT}) (profile${EXEEXT}, make-docfile${EXEEXT}, movemail${EXEEXT}) (pop.o, emacsclient${EXEEXT}, emacsclientw${EXEEXT}) (emacsclientw${EXEEXT}, ntlib.o, hexl${EXEEXT}) (update-game-score${EXEEXT}): Use them. * lwlib/Makefile.in (AM_DEFAULT_VERBOSITY, AM_V_CC, am__v_CC_) (am__v_CC_0, am__v_CC_1): New macros, taken from Automake. (.c.o): Use them. * oldXMenu/Makefile.in (AM_DEFAULT_VERBOSITY, AM_V_CC, am__v_CC_) (am__v_CC_0, am__v_CC_1): New macros, taken from Automake. (.c.o): Use them. * src/Makefile.in (AM_DEFAULT_VERBOSITY, AM_V_CC, am__v_CC_) (am__v_CC_0, am__v_CC_1, AM_V_CCLD, am__v_CCLD_, am__v_CCLD_0) (am__v_CCLD_1): New macros, taken from Automake. (.c.o, .m.o, temacs$(EXEEXT)): Use them. Paul Eggert2014-09-011-0/+3
* | Clean up extern decls a bit....* configure.ac (WERROR_CFLAGS): Don't disable -Wnested-externs. While we're at it, don't disable -Wlogical-op either. * src/bytecode.c: Include blockinput.h and keyboard.h rather than rolling their APIs by hand. * src/emacs.c: Include regex.h and rely on its and lisp.h's API rather than rolling them by hand. * src/lastfile.c: Include lisp.h, to check this file's API. * src/lisp.h (lisp_eval_depth, my_edata, my_endbss, my_endbss_static): New decls. * src/regex.h (re_max_failures): New decl. * src/unexcw.c, src/unexmacosx.c, src/unexw32.c: Rely on lisp.h's API rather than rolling it by hand. * src/vm-limit.c (__after_morecore_hook, __morecore, real_morecore): Declare at top level, to pacify GCC -Wnested-externs. Paul Eggert2014-08-311-0/+6
* | * configure.ac (__restrict_arr): Remove; no longer used.Paul Eggert2014-08-301-0/+1
* | * configure.ac (MAKE): Export it, for config.status....Needed on AIX when 'configure' infers MAKE=gmake. Paul Eggert2014-08-301-0/+5
* | Vector-sorting fixes....It's not safe to call qsort or qsort_r, since they have undefined behavior if the user-specified predicate is not a total order. Also, watch out for garbage-collection while sorting vectors. * admin/merge-gnulib (GNULIB_MODULES): Add vla. * configure.ac (qsort_r): Remove, as we no longer use qsort-like functions. * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate. * lib/vla.h, m4/vararrays.m4: New files, copied from gnulib. * lib/stdlib.in.h, m4/stdlib_h.m4: Sync from gnulib, incorporating: 2014-08-29 qsort_r: new module, for GNU-style qsort_r The previous two files' changes are boilerplate generated by admin/merge-gnulib, and should not affect Emacs. * src/fns.c: Include <vla.h>. (sort_vector_predicate) [!HAVE_QSORT_R]: Remove. (sort_vector_compare): Remove, replacing with .... (inorder, merge_vectors, sort_vector_inplace, sort_vector_copy): ... these new functions. (sort_vector): Rewrite to use the new functions. GCPRO locals, since the predicate can invoke the GC. Since it's in-place return void; caller changed. (merge): Use 'inorder', for clarity. Fixes: debbugs:18361 Paul Eggert2014-08-301-0/+12
* | Add vectors support to Fsort....* configure.ac (AC_CHECK_FUNCS): Check for qsort_r. * src/fns.c (sort_vector, sort_vector_compare): New functions. (sort_list): Likewise, refactored out of ... (Fsort): ... adjusted user. Mention vectors in docstring. (sort_vector_predicate) [!HAVE_QSORT_R]: New variable. * src/alloc.c (make_save_int_obj): New function. * src/lisp.h (enum Lisp_Save_Type): New member SAVE_TYPE_INT_OBJ. (make_save_int_obj): Add prototype. * test/automated/fns-tests.el (fns-tests-sort): New test. Dmitry Antipov2014-08-291-0/+4
* | Add support for HYBRID_MALLOC, allowing the use of gmalloc before...dumping and the system malloc after dumping. (Bug#18222) * configure.ac (HYBRID_MALLOC): New macro; define to use gmalloc before dumping and the system malloc after dumping. Define on Cygwin. * src/conf_post.h (malloc, realloc, calloc, free) [HYBRID_MALLOC]: Define as macros, expanding to hybrid_malloc, etc. (HYBRID_GET_CURRENT_DIR_NAME): New macro. (get_current_dir_name) [HYBRID_GET_CURRENT_DIR_NAME]: Define as macro. * src/gmalloc.c: Set up the infrastructure for HYBRID_MALLOC, with a full implementation on Cygwin. Remove Cygwin-specific code that is no longer needed. (malloc, realloc, calloc, free, aligned_alloc) [HYBRID_MALLOC]: Redefine as macros expanding to gmalloc, grealloc, etc. (DUMPED, ALLOCATED_BEFORE_DUMPING) [CYGWIN]: New macros. (get_current_dir_name) [HYBRID_GET_CURRENT_DIR_NAME]: Undefine. (USE_PTHREAD, posix_memalign) [HYBRID_MALLOC]: Don't define. (hybrid_malloc, hybrid_calloc, hybrid_free, hybrid_realloc) [HYBRID_MALLOC]: (hybrid_get_current_dir_name) [HYBRID_GET_CURRENT_DIR_NAME]: (hybrid_aligned_alloc) [HYBRID_MALLOC && (HAVE_ALIGNED_ALLOC || HAVE_POSIX_MEMALIGN)]: New functions. * src/alloc.c (aligned_alloc) [HYBRID_MALLOC && (ALIGNED_ALLOC || HAVE_POSIX_MEMALIGN)]: Define as macro expanding to hybrid_aligned_alloc; declare. (USE_ALIGNED_ALLOC) [HYBRID_MALLOC && (ALIGNED_ALLOC || HAVE_POSIX_MEMALIGN)]: Define. (refill_memory_reserve) [HYBRID_MALLOC]: Do nothing. * src/sysdep.c (get_current_dir_name) [HYBRID_GET_CURRENT_DIR_NAME]: Define as macro, expanding to gget_current_dir_name, and define the latter. * src/emacs.c (main) [HYBRID_MALLOC]: Don't call memory_warnings() or malloc_enable_thread(). Don't initialize malloc. * src/lisp.h (NONPOINTER_BITS) [CYGWIN]: Define (because GNU_MALLOC is no longer defined on Cygwin). (refill_memory_reserve) [HYBRID_MALLOC]: Don't declare. * src/sheap.c (bss_sbrk_buffer_end): New variable. * src/unexcw.c (__malloc_initialized): Remove variable. * src/ralloc.c: Throughout, treat HYBRID_MALLOC the same as SYSTEM_MALLOC. * src/xdisp.c (decode_mode_spec) [HYBRID_MALLOC]: Don't check Vmemory_full. Ken Brown2014-08-281-0/+6
* | Add install/uninstall rules for etc/emacs.appdata.xml...* Makefile.in (appdatadir): New variable. (install-etc, uninstall, clean): Handle etc/emacs.appdata.xml. Glenn Morris2014-08-271-0/+5
* | Improve robustness of new string-collation code....* configure.ac (newlocale): Check for this, not for uselocale. * src/sysdep.c (LC_COLLATE, LC_COLLATE_MASK, freelocale, locale_t) (newlocale, wcscoll_l): Define substitutes for platforms that lack them, so as to simplify the mainline code. (str_collate): Simplify the code by assuming the above definitions. Use wcscoll_l, not uselocale, as uselocale is too fragile. For example, the old version left the Emacs in the wrong locale if wcscoll reported an error. Use 'int', not ptrdiff_t, for the int result. Report an error if newlocale fails. Fixes: debbugs:18051 Paul Eggert2014-08-271-0/+5
* | * configure.ac (HAVE_LINUX_SYSINFO): Avoid false positive on Solaris.Dmitry Antipov2014-08-261-0/+2
* | Handle C stack overflow caused by too nested Lisp evaluation....* configure.ac: Check for sigaltstack and related sigaction support. Unconditionally check for sigsetjmp and siglongjmp. (HAVE_STACK_OVERFLOW_HANDLING): Define if we can support it. * src/lisp.h (toplevel) [HAVE_STACK_OVERFLOW_HANDLING]: Declare siglongjmp point to transfer control from SIGSEGV handler. * src/keyboard.c (return_to_command_loop, recover_top_level_message) [HAVE_STACK_OVERFLOW_HANDLING]: New variables. (regular_top_level_message): New variable. (command_loop) [HAVE_STACK_OVERFLOW_HANDLING]: Handle non-local exit from SIGSEGV handler and adjust message displayed by Vtop_level if appropriate. (syms_of_keyboard): DEFVAR Vtop_level_message and initialize new variables described above. * src/sysdep.c [HAVE_SYS_RESOURCE_H]: Include sys/resource.h as such. (stack_grows_down, sigsegv_stack, handle_sigsegv) [HAVE_STACK_OVERFLOW_HANDLING]: New variables and function. (init_sigsegv): New function. (init_signals): Use it. * lisp/startup.el (normal-top-level): Use top-level-message. Dmitry Antipov2014-08-261-0/+7
* | * configure.ac (G_SLICE_ALWAYS_MALLOC): Remove obsolete macro....* src/emacs.c (main): Remove use of obsolete macro G_SLICE_ALWAYS_MALLOC. Ken Brown2014-08-251-0/+4
* | Remove reference to obsolete configure scripts...* INSTALL.REPO: Remove reference to obsolete configure scripts on non-Posix platforms. Fixes: debbugs:18323 Christoph Scholtes2014-08-241-0/+5
* | Add string collation....* configure.ac: Check also for the uselocale function. * src/fns.c (Fstring_collate_lessp, Fstring_collate_equalp): New DEFUNs. * src/sysdep.c (str_collate): New function. (Bug#18051) Michael Albinus2014-08-241-0/+4
* | Fix bug #18302 with minor issues in the MSYS2/MinGW64 build.... configure.ac: Accept "*-mingw*", not just "*-mingw32", as canonical name of a MinGW build, because using MSYS2 'uname' produces "MINGW64". src/Makefile.in (emacs$(EXEEXT)): Retry deletion of bootstrap-emacs if the initial "rm -f" fails. This is for MinGW builds, where MS-Windows will not allow deleting the executable file of a running program. Karol Ostrovsky2014-08-231-0/+6
* | * configure.ac (HAVE_XPM): Explain the use of CPPFLAGS in the Cygwin-w32 buil...Ken Brown2014-08-211-0/+5
* | Merge from emacs-24; up to 2014-06-28T23:35:17Z!rgm@gnu.orgGlenn Morris2014-08-101-0/+13
|\|
| * Don't prevent random file systems from being unmounted....This fix relies on having the 'fchdir' function, and on having "." be searchable (or at least readable, on platforms lacking O_SEARCH), but that's good enough to handle the vast majority of cases and the remaining folks can just live with the annoyance of file systems that occasionally can't be unmounted. * configure.ac (fchdir): New function to check for. * lib/save-cwd.c: Copy from gnulib, except omit the part that allocates memory, since that can cause problems in Emacs. * lib/save-cwd.h: Copy from gnulib. Fixes: debbugs:18232 Paul Eggert2014-08-101-0/+13
* | config.bat: fix some confusing wordingReuben Thomas2014-08-101-0/+4
* | Minor fixes in the last commit wrt MS-DOS build.... config.bat: Fix EOL format in lines modified by last commit. msdos/INSTALL: Fix last change. Eli Zaretskii2014-08-091-0/+4
* | Remove support for DJGPP < 2.02...This also removes some specially-licensed files and lots of accompanying explanation. Reuben Thomas2014-08-091-0/+5
* | Merge from gnulib....This incorporates: 2014-08-07 getdtablesize: fall back on sysconf (_SC_OPEN_MAX) 2014-08-05 sys_select: fix FD_ZERO problem on Solaris 10 * lib/getdtablesize.c, lib/sys_select.in.h: Update from gnulib. Paul Eggert2014-08-081-0/+7
* | Fix a few ``MS-DOG''s overlooked in the previous commit....* README: ``MSDOG'' becomes ``MS-DOS''. * lisp/arc-mode.el: Fix a couple of ``MS-DOG''s missed in the previous commit. * lisp/file-mode.el: ditto. * src/editfns.c: Fix a couple of ``MS-DOG''s missed in the previous commit. * src/xfaces.c: ditto. Reuben Thomas2014-08-071-0/+4
* | Merge from gnulib, incorporating:...2014-08-04 extern-inline: port to FreeBSD, DragonFly * lib/gnulib.mk: Regenerate (comment change only). * m4/extern-inline.m4: Update from gnulib. Paul Eggert2014-08-041-0/+7
* | * configure.ac (HAVE_TIMERFD): Also check for TFD_NONBLOCK,...since the code is using TFD_NONBLOCK now. Paul Eggert2014-08-021-0/+5
* | Simplify timerfd configuration and fix some minor glitches....* configure.ac (HAVE_TIMERFD): Define only if TFD_CLOEXEC works, since the code leaked file descriptors to children when !TFD_CLOEXEC. (HAVE_TIMERFD_CLOEXEC): Remove; no longer used. * m4/clock_time.m4 (gl_CLOCK_TIME): Don't check for clock_getres. This reverts the previous change to this file, so it matches gnulib again. * src/atimer.c (TIMERFD_CREATE_FLAGS): Remove; we now assume TFD_CLOEXEC. (alarm_timer, alarm_timer_ok, set_alarm, init_atimer): Fall back on timer_create if timerfd_create fails at runtime. (resolution) [HAVE_CLOCK_GETRES]: Remove; we now rely on the kernel primitives to do resolution. All uses removed. (timerfd) [!HAVE_TIMERFD]: Define to be -1, for convenience. (turn_on_atimers): Clear timer_create-based timers too, for consistency. Paul Eggert2014-07-311-0/+10
* | On GNU/Linux, use timerfd for asynchronous timers....* configure.ac (toplevel): Check whether GNU/Linux-specific timerfd functions and macros are available. * m4/clock_time.m4 (gl_CLOCK_TIME): Check for clock_getres as well. * src/atimer.c (toplevel) [HAVE_TIMERFD]: Include sys/timerfd.h. (toplevel): Rename alarm_timer_ok to special_timer_available. [HAVE_TIMERFD]: Declare timerfd. [HAVE_CLOCK_GETRES]: Declare resolution. (start_atimer) [HAVE_CLOCK_GETRES]: Round up timestamp to system timer resolution. (set_alarm) [HAVE_TIMERFD]: Use timerfd_settime. (timerfd_callback) [HAVE_TIMERFD]: New function. (atimer_result, debug_timer_callback, Fdebug_timer_check) [ENABLE_CHECKING]: New function for the sake of automated tests. (init_atimer) [HAVE_TIMERFD]: Setup timerfd. [HAVE_CLOCK_GETRES]: Likewise for system timer resolution. [ENABLE_CHECKING]: Defsubr test function. * src/atimer.h (timerfd_callback) [HAVE_TIMERFD]: Add prototype. * src/lisp.h (add_timer_wait_descriptor) [HAVE_TIMERFD]: Likewise. * src/process.c (add_timer_wait_descriptor) [HAVE_TIMERFD]: New function. * test/automated/timer-tests.el (timer-tests-debug-timer-check): New test. Dmitry Antipov2014-07-281-0/+6
* | Improve behavior of 'bzr up; cd src; make -k'....* Makefile.in (ACLOCAL_INPUTS): Add all m4/*.m4 files. * src/Makefile.in (top_srcdir): New var. (ntsource, lispsource, ALL_CFLAGS, gl-stamp, emacs.res): Use '$(top_srcdir)' instead of '$(srcdir)/..'; its expansion is a bit shorter. (../config.status): Actually build config.status instead of just complaining. (ACLOCAL_INPUTS, AUTOCONF_INPUTS): New macros, copied and relocated from ../Makefile.in. ($(top_srcdir)/aclocal.m4, $(top_srcdir)/configure, config.in) (../config.status, Makefile): New dependencies and rules, copied with relocation from ../Makefile.in. This should be more likely to rebuild the build machinery properly if you do a 'make' in the src directory. Paul Eggert2014-07-131-0/+5
* | Merge from gnulib, incorporating:...2014-06-27 mktime: merge #if/#ifdef usage from glibc * lib/mktime.c: Update from gnulib. Paul Eggert2014-07-121-0/+4
* | Merge from emacs-24; up to 2014-06-22T05:00:14Z!dmantipov@yandex.ruGlenn Morris2014-07-121-0/+4
|\|
| * * Makefile.in (install-arch-indep): Avoid readdir race....Fixes: debbugs:17971 Paul Eggert2014-07-111-0/+4
* | * configure.ac: Check whether sys/sysinfo.h provides...Linux 'sysinfo' function and 'struct sysinfo' type. * src/alloc.c (Fmemory_info): New function. * lisp/files.el (warn-maybe-out-of-memory): New function. (find-file-noselect): Use it. Dmitry Antipov2014-07-101-0/+5
* | Use gcc auto-dependency information for lwlib and oldXMenu...* configure.ac (lwlib_deps_frag, oldxmenu_deps_frag): New output files. * make-dist (lwlib, oldXMenu): Distribute *.mk. * lwlib/Makefile.in: Move old dependency information to new file deps.mk. (MKDIR_P, DEPFLAGS, MKDEPDIR, lwlib_deps_frag): New, set by configure. (DEPDIR): New variable. (ALL_CFLAGS): Add DEPFLAGS. (.c.o): Add MKDEPDIR. (clean, mostlyclean): Delete DEPDIR. * lwlib/deps.mk, lwlib/autodeps.mk: New files. * oldXMenu/Makefile.in: Move old dependency information to new file deps.mk. (MKDIR_P, DEPFLAGS, MKDEPDIR, oldxmenu_deps_frag): New, set by configure. (DEPDIR): New variable. (ALL_CFLAGS): Add DEPFLAGS. (.c.o): Add MKDEPDIR. (clean, mostlyclean): Delete DEPDIR. * oldXMenu/deps.mk, oldXMenu/autodeps.mk: New files. * src/deps.mk: Comment update. * .bzrignore: Ignore lwlib/deps, oldXMenu/deps. Glenn Morris2014-06-281-0/+5
* | Replace BOOTSTRAPEMACS with an order-only dependence on bootstrap-emacs...* Makefile.in (src): No more need to pass BOOTSTRAPEMACS. * src/Makefile.in (.el.elc): Replace suffix rule with pattern rule. (%.elc): New pattern rule, with order-only prerequisite. ($(lisp)): No more need to depend on BOOTSTRAPEMACS. ($(lispsource)/loaddefs.el): Use an order-only prerequisite in place of BOOTSTRAPEMACS. Fixes: debbugs:2151 Glenn Morris2014-06-261-0/+2
* | * make-dist: Exclude test/automated/*.log.Glenn Morris2014-06-261-0/+4
* | Simplify and parallize test/automated Makefile...* Makefile.in (mostlyclean, clean): Maybe clean test/automated. * lisp/emacs-lisp/ert.el (ert-summarize-tests-batch-and-exit): New. * test/automated/Makefile.in: Simplify and parallelize. (XARGS_LIMIT, BYTE_COMPILE_EXTRA_FLAGS) (setwins, compile-targets, compile-main, compile-clean): Remove. (GREP_OPTIONS): Unexport. (.el.elc): Replace with pattern rule. (%.elc, %.log): New pattern rules. (ELFILES, LOGFILES): New variables. (check): Depend on LOGFILES. Call ert-summarize-tests-batch-and-exit. (clean, mostlyclean): New rules. (bootstrap-clean): Simplify. (bootstrap-clean, distclean): Depend on clean. * .bzrignore: Ignore test/automated/*.log. Fixes: debbugs:15991 Glenn Morris2014-06-251-0/+4
* | Merge from emacs-24; up to 2014-06-06T02:22:40Z!monnier@iro.umontreal.caGlenn Morris2014-06-211-0/+10
|\|
| * * configure.ac: Warn about --enable-link-time-optimization's issues...in --help message. Fixes: debbugs:17806 Paul Eggert2014-06-201-0/+3
| * Port to GCC 4.9.0 with link time optimization....* configure.ac (CFLAGS): With link time optimization, use -ffat-lto-objects if supported; otherwise Emacs won't build with GCC 4.9.0. Fixes: debbugs:17806 Paul Eggert2014-06-191-0/+7