the default. Implement further D-Bus standard interfaces.
* configure.in (dbus_validate_bus_name, dbus_validate_path)
(dbus_validate_interface, dbus_validate_member): Check also for
these library functions
* dbusbind.c (DBUS_NUM_MESSAGE_TYPES): Declare.
(QCdbus_request_name_allow_replacement)
(QCdbus_request_name_replace_existing)
(QCdbus_request_name_do_not_queue)
(QCdbus_request_name_reply_primary_owner)
(QCdbus_request_name_reply_in_queue)
(QCdbus_request_name_reply_exists)
(QCdbus_request_name_reply_already_owner): Move to dbus.el.
(QCdbus_registered_serial, QCdbus_registered_method)
(QCdbus_registered_signal): New Lisp objects.
(XD_DEBUG_MESSAGE): Use sizeof.
(XD_MESSAGE_TYPE_TO_STRING, XD_OBJECT_TO_STRING)
(XD_DBUS_VALIDATE_BUS_ADDRESS, XD_DBUS_VALIDATE_OBJECT)
(XD_DBUS_VALIDATE_BUS_NAME, XD_DBUS_VALIDATE_PATH)
(XD_DBUS_VALIDATE_INTERFACE, XD_DBUS_VALIDATE_MEMBER): New macros.
(XD_CHECK_DBUS_SERIAL): Rename from CHECK_DBUS_SERIAL_GET_SERIAL.
(xd_signature, xd_append_arg): Allow float for integer types.
(xd_get_connection_references): New function.
(xd_get_connection_address): Rename from xd_initialize. Return
cached address.
(xd_remove_watch): Do not unset $DBUS_SESSION_BUS_ADDRESS.
(xd_close_bus): Rename from Fdbus_close_bus. Not needed on Lisp
level.
(Fdbus_init_bus): New optional arg PRIVATE. Cache address.
Return number of recounts.
(Fdbus_get_unique_name): Make stronger parameter check.
(Fdbus_message_internal): New defun.
(Fdbus_call_method, Fdbus_call_method_asynchronously)
(Fdbus_method_return_internal, Fdbus_method_error_internal)
(Fdbus_send_signal, Fdbus_register_service)
(Fdbus_register_signal, Fdbus_register_method): Move to dbus.el.
(xd_read_message_1): Obey new structure of Vdbus_registered_objects.
(xd_read_queued_messages): Obey new structure of Vdbus_registered_buses.
(Vdbus_compiled_version, Vdbus_runtime_version)
(Vdbus_message_type_invalid, Vdbus_message_type_method_call)
(Vdbus_message_type_method_return, Vdbus_message_type_error)
(Vdbus_message_type_signal): New defvars.
(Vdbus_registered_buses, Vdbus_registered_objects_table): Adapt
docstring.
* net/dbus.el (dbus-message-internal): Declare function. Remove
unneeded function declarations.
(defvar dbus-message-type-invalid, dbus-message-type-method-call)
(dbus-message-type-method-return, dbus-message-type-error)
(dbus-message-type-signal): Declare variables. Remove local
definitions.
(dbus-interface-dbus, dbus-interface-peer)
(dbus-interface-introspectable, dbus-interface-properties)
(dbus-path-emacs, dbus-interface-emacs, dbus-return-values-table):
Adapt docstring.
(dbus-interface-objectmanager): New defconst.
(dbus-call-method, dbus-call-method-asynchronously)
(dbus-send-signal, dbus-method-return-internal)
(dbus-method-error-internal, dbus-register-service)
(dbus-register-signal, dbus-register-method): New defuns, moved
from dbusbind.c
(dbus-call-method-handler, dbus-setenv)
(dbus-get-all-managed-objects, dbus-managed-objects-handler): New
defuns.
(dbus-call-method-non-blocking): Make it an obsolete function.
(dbus-unregister-object, dbus-unregister-service)
(dbus-handle-event, dbus-register-property)
(dbus-property-handler): Obey the new structure of
`bus-registered-objects'.
(dbus-introspect): Use `dbus-call-method'. Use a timeout.
(dbus-get-property, dbus-set-property, dbus-get-all-properties):
Use `dbus-call-method'.
* dbus.texi (Version): New node.
(Properties and Annotations): Mention the object manager
interface. Describe dbus-get-all-managed-objects.
(Type Conversion): Floating point numbers are allowed, if an
anteger does not fit Emacs's integer range.
(Synchronous Methods): Remove obsolete dbus-call-method-non-blocking.
(Asynchronous Methods): Fix description of
dbus-call-method-asynchronously.
(Receiving Method Calls): Fix some minor errors. Add
dbus-interface-emacs.
(Signals): Describe unicast signals and the new match rules.
(Alternative Buses): Add the PRIVATE optional argument to
dbus-init-bus. Describe its new return value. Add dbus-setenv.
With glibc 2.14 or later, when compiled with GCC 4.7.0's
-Werror=deprecated-declarations flag, use of hooks like
__malloc_initialize_hook causes compilation to fail because these
hooks are deprecated. Modify 'configure' to check for these hooks too.
Simplify the 'configure' code to test for all the hooks at once.
(emacs_cv_var___after_morecore_hook): Remove, replacing with ...
(emacs_cv_var_doug_lea_malloc): ... this new var.
dated 2011-10-07. Regenerating from current gnulib would be a
pervasive change, and currently the trunk isn't open to such changes.
* configure.in (WARN_CFLAGS): Remove; no longer needed now
that gnulib does it.
* lib/gnulib.mk, m4/gl-comp.m4: Regenerate.
Note from committer:
I removed the part that adds grp.h to AC_CHECK_HEADERS and
+#ifdef HAVE_GRP_H
#include <grp.h>
+#endif
to src/dired.c, because the latter has unconditionally included grp.h
since 2003, and uses it eg in stat_gname.
* configure.in (AC_CHECK_FUNCS): Add getpwent, endpwent, getgrent, endgrent.
* src/dired.c (Fsystem_users, Fsystem_groups): New functions.
(syms_of_dired): Add them.
Fixes: debbugs:7900
This is the only thing left that uses it.
* configure.in (GNUSTEP_CFLAGS): Rename from C_SWITCH_X_SYSTEM.
* src/Makefile.in (GNUSTEP_CFLAGS): Rename from C_SWITCH_X_SYSTEM.
* lwlib/Makefile.in (C_SWITCH_X_SYSTEM): Remove.
(ALL_CFLAGS): Remove C_SWITCH_X_SYSTEM.
* oldXMenu/Makefile.in (C_SWITCH_X_SYSTEM): Remove.
(ALL_CFLAGS): Remove C_SWITCH_X_SYSTEM.
* msdos/sedlibmk.inp, msdos/sed1v2.inp:
GNUSTEP_CFLAGS replaces C_SWITCH_X_SYSTEM.
* configure.in: Conditionally generate admin/unidata/Makefile.
* admin/unidata/Makefile.in: Add FSF copyright.
Make it use autoconf features, and work for out-of-tree builds.
I have been using this change for many months in my private copy
of Emacs, and have used it to find several bugs. It's mature
enough to publish now.
* Makefile.in (GNULIB_MODULES): Add warnings, manywarnings.
* configure.in: Support --enable-gcc-warnings, in the style of
other GNU packages such as coreutils.
(C_WARNINGS_SWITCH): Remove, replacing with...
(WARN_CFLAGS, GNULIB_WARN_CFLAGS): New variable.
(PKG_CHECK_MODULES, C_SWITCH_X_SITE): Use -isystem rather than -I,
when including system files with GCC.
* etc/NEWS: Mention --enable-gcc-warnings.
* lib/Makefile.am (AM_CFLAGS): New macro.
* m4/manywarnings.m4, m4/warnings.m4: New files, from gnulib.
* lib-src/Makefile.in (C_WARNINGS_SWITCH): Remove.
(WARN_CFLAGS, WERROR_CFLAGS): New macros.
(BASE_CFLAGS): Use new macros rather than old.
* lwlib/Makefile.in (C_WARNINGS_SWITCH): Remove.
(WARN_CFLAGS, WERROR_CFLAGS): New macros.
(ALL_CFLAGS): Use new macros rather than old.
* oldXMenu/Makefile.in (C_WARNINGS_SWITCH): Remove.
(WARN_CFLAGS, WERROR_CFLAGS): New macros.
(ALL_CFLAGS): Use new macros rather than old.
* src/Makefile.in (C_WARNINGS_SWITCH): Remove.
(WARN_CFLAGS, WERROR_CFLAGS): New macros.
(ALL_CFLAGS): Use new macros rather than old.
* src/process.c: Ignore -Wstrict-overflow to work around GCC bug 52904.
* src/regex.c: Ignore -Wstrict-overflow. If !emacs, also ignore
-Wunused-but-set-variable, -Wunused-function, -Wunused-macros,
-Wunused-result, -Wunused-variable. This should go away once
the Emacs and Gnulib regex code is merged.
(xmalloc, xrealloc): Now static.
* README, configure.in (AC_INIT): Bump version to 24.1.50.
* doc/emacs/emacsver.texi (EMACSVER): Bump version to 24.1.50.
* doc/man/emacs.1: Bump version to 24.1.50.
* msdos/sed2v2.inp: Bump version to 24.1.50.
* 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:
Bump version to 24.1.50.
* nt/config.nt, nt/makefile.w32-in, nt/emacs.rc, nt/emacsclient.rc:
Bump version to 24.1.50.
* configure.in (LIBS_TERMCAP): Default this to the result of
the tputs library search. Do a run-time test for the linkability
of tputs unless cross-compiling, as that's more reliable if the
link flags and libraries are messed up. Don't change LIBS as
a result of the test, as that may mess up later tests.
* Makefile.in (cache_file, ENABLE_MAINTAINER_MODE, CONFIGUREFLAGS):
New macros.
(config.status, bootstrap): Use them to propagate configure flags
to sub-configures.
* configure.in (cache_file): AC_SUBST this, for Makefile.in.
* configure.in: Check for gtk_window_set_has_resize_grip.
* src/gtkutil.c (xg_create_frame_widgets): Call
gtk_window_set_has_resize_grip (FALSE) if that function is
present with Gtk+ 2.0.
Do not install arch-dependent files in the app bundle if
--disable-ns-self-contained is requested.
* configure.in (exec_prefix, libexecdir): Define relative to
ns_appbindir' only if configured for a self-contained app.
* Makefile.in (install-arch-dep): Test for the existence of
libexec in the Emacs.app bundle before executing commands.
Fixes: debbugs:1335
* configure.in: Increase minimum GnuTLS version to 2.6.6.
Do not include GnuTLS version info in final summary message.
* etc/NEWS: Add FIXME related to GnuTLS version.
if the library is found. Otherwise, later configure-time tests,
such as the test for pthread_sigmask, generate the wrong results
on some platforms. Problem reported for FreeBSD by Nali Toja.
* configure.in (AC_STRUCT_TM, AC_STRUCT_TIMEZONE, HAVE_TM_GMTOFF):
Remove; no longer needed, now that we defer to strftime for time
zone names.
* src/editfns.c: Rewrite current-time-zone so that it invokes
the equivalent of (format-time-string "%Z") to get the time zone name.
This fixes a bug when the time zone name contains characters that
need converting from the system time locale to Emacs internal format.
This fixes a shortcoming that I introduced in my 1999-10-19 patch:
that patch fixed format-time-string to do the conversion, but
I forgot to fix current-time-zone.
(format_time_string): New function, containing most of
what Fformat_time_string used to contain.
(Fformat_time_string): Rewrite in terms of format_time_string.
This doesn't change this function's behavior.
(current-time-zone): Rewrite to use format_time_string.
This fixes the bug reported by Michael Schierl in
<http://lists.gnu.org/archive/html/emacs-devel/2007-06/msg00334.html>.
Jason Rumney's 2007-06-07 change worked around this bug, but
didn't fix it.
* src/systime.h (tzname, timezone): Remove no-longer-used declarations.
The check breaks 'configure' in some CentOS 5.7 x86 configurations.
The check was helpful but not essential in Solaris 2.6 (1997),
and is no longer needed in Solaris 8 (2000). Solaris 2.6 is
obsolete -- Sun dropped support for it in 2006 -- and without
access to that Silurian platform we can't maintain the code anyway.