summaryrefslogtreecommitdiff
path: root/bus/Makefile.am
Commit message (Collapse)AuthorAgeFilesLines
* Optionally install systemd user units for a per-user busSimon McVittie2015-02-241-1/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The socket path used here, $XDG_RUNTIME_DIR/bus, does not match what was used in user-session-units, but is what Lennart recommended on fd.o #61303, and is also what kdbus will use for its bus proxy. Installation of these units switches D-Bus to a different model of the system: instead of considering each login session (approximately, each password typed in) to be its own session, the user-session model is that all concurrent logins by the same user form one large session. This allows the same bus to be shared by a graphical session, cron jobs, tty/ssh sessions, screen/tmux sessions and so on. Because this is a different world-view, it is compile-time optional: OS builders can choose which world their OS will live in. The default is still the login-session model used in earlier D-Bus releases, but might change to the user-session model in future. Explicit configuration is recommended. In OSs that support both models (either for sysadmin flexibility or as a transitional measure), the OS builder should enable the user bus units, but split them off into a dpkg binary package, RPM subpackage etc.; the sysadmin can choose whether to enable the user-session model by choosing whether to install that package. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=61301 Reviewed-by: Philip Withnall <philip.withnall@collabora.co.uk>
* Fix static linking with mingwSimon McVittie2015-02-201-1/+1
| | | | | | | | | | Now that we're normally linking libdbus-1 dynamically, we need to use DBUS_STATIC_BUILD_CPPFLAGS in every Makefile that would normally link it dynamically, but might link it statically if we are only building static libraries. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=83115 Reviewed-by: Ralf Habacker <ralf.habacker@freenet.de>
* Link dbus-daemon and dbus-daemon-lauch-helper against libdbusBertrand SIMONNET2015-02-201-3/+16
| | | | | | | | | | | | | | The shared can be used by dbus-daemon and dbus-daemon-launch-helper by exporting the private symbols needed, reducing the size of dbus by about 500k. The private symbols are exposed under the version LIBDBUS_PRIVATE_@VERSION_NUMBER@. [Altered by Simon McVittie and Ralf Habacker to clear up some problematic linking.] Bug: https://bugs.freedesktop.org/show_bug.cgi?id=83115 Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Reviewed-by: Ralf Habacker <ralf.habacker@freenet.de>
* Add apparmor element support to bus config parsingTyler Hicks2015-02-181-0/+3
| | | | | | | | | | | | | | | | | | | The <apparmor> element can contain a single mode attribute that has one of three values: "enabled" "disabled" "required" "enabled" means that kernel support is autodetected and, if available, AppArmor mediation occurs in dbus-daemon. If kernel support is not detected, mediation is disabled. "disabled" means that mediation does not occur. "required" means that kernel support must be detected for dbus-daemon to start. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=75113 Signed-off-by: Tyler Hicks <tyhicks@canonical.com> Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
* Update autoconf file to build against libapparmorTyler Hicks2015-02-181-0/+1
| | | | | | | | | | | | | | | AppArmor support can be configured at build time with --enable-apparmor and --disable-apparmor. By default, the build time decision is automatically decided by checking if a sufficient libapparmor is available. A minimum required libapparmor is version 2.8.95. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=75113 Signed-off-by: Tyler Hicks <tyhicks@canonical.com> [smcv: avoid potential non-portability from "test EXPR -a EXPR"] Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Reviewed-by: Tyler Hicks <tyhicks@canonical.com>
* config: add examples to show how to enable/disable the Stats interfaceAlban Crequy2014-10-011-1/+10
| | | | | | | [install examples to ${docdir}/examples -smcv] Bug: https://bugs.freedesktop.org/show_bug.cgi?id=80759 Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
* Make various system-bus-related things Unix-onlySimon McVittie2014-09-151-7/+11
| | | | | | | | There is no system bus on Windows, and there won't be until/unless it can be secure. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=83583 Reviewed-by: Ralf Habacker <ralf.habacker@freenet.de>
* Rename bus-test-launch-helper to test-bus-launch_helper to match common test ↵Ralf Habacker2014-01-171-4/+4
| | | | | | | application naming scheme. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=73495 Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
* Rename bus-test-system to test-bus-system to match common test application ↵Ralf Habacker2014-01-171-3/+3
| | | | | | | naming scheme. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=73495 Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
* Rename bus-test to test-bus to match common test application naming scheme.Ralf Habacker2014-01-171-3/+3
| | | | | Bug: https://bugs.freedesktop.org/show_bug.cgi?id=73495 Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
* tests to embedded tests: replaced in automake filesChengwei Yang2013-06-281-2/+2
| | | | | | Signed-off-by: Chengwei Yang <chengwei.yang@intel.com> Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=66291
* dir-watch: remove dnotify backendChengwei Yang2013-06-281-4/+0
| | | | | | | | | | dnotify as a dir watch backend is broken since Jan 2010 (almost 3.5 years). According to fd.o: #33001, it's no harm to remove dnotify from this project. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=33001 Signed-off-by: Chengwei Yang <chengwei.yang@intel.com> Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
* XML: hard depends on expat and delete libxmlChengwei Yang2013-06-061-5/+0
| | | | | | | | | [The libxml code path has been broken for at least 2.5 years, and Expat is tiny, so there seems no point in supporting both. -smcv] Bug: https://bugs.freedesktop.org/show_bug.cgi?id=20253 Signed-off-by: Chengwei Yang <chengwei.yang@intel.com> Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
* Revert "made session service dirs customizable: autotools part"Simon McVittie2012-01-041-2/+0
| | | | This reverts commit 61760cf7de5af3452423244a8b6f5f1b5d00512b.
* made session service dirs customizable: autotools partRalf Habacker2011-11-211-0/+2
|
* bus: use AM_CPPFLAGS to simplify preprocessor invocationSimon McVittie2011-07-291-8/+9
| | | | | | Everything in this directory is statically linked to libdbus-internal, so we can make -DDBUS_STATIC_BUILD global. Also, merge INCLUDES into AM_CPPFLAGS (it's an older name for the same functionality).
* Move knowledge of what the bus daemon/launcher need to link into bus/Simon McVittie2011-07-291-1/+15
|
* Simplify linking by moving -export-dynamic to AM_LDFLAGSSimon McVittie2011-07-291-8/+3
|
* Merge branch 'dbus-1.4' and update NEWS for masterSimon McVittie2011-07-181-10/+12
|\ | | | | | | | | Conflicts: NEWS
| * Run bus tests from test/Simon McVittie2011-07-181-10/+12
| | | | | | | | | | Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34405 Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
* | Add a stub .Debug.Stats interface if --enable-statsSimon McVittie2011-06-241-0/+2
|/ | | | | | | | There are no actual statistics yet, just a count of how many times the method has been called, and (for the per-connection stats) the unique name. Reviewed-by: Cosimo Alfarano <cosimo.alfarano@collabora.co.uk> Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34040
* bus: use ln -fs to enable dbus in systemd, not $(LN_S)Simon McVittie2011-06-081-4/+6
| | | | | | | | | | | | | | | Using $(LN_S) is inappropriate because it could in theory mean either ln -s, ln or cp -p depending on autoconf checks. Not using -f breaks reinstallation directly from source (DESTDIR unset), because the symlinks will already exist. Because systemd isn't currently portable to non-Linux, let alone non-SUS-compliant systems, it seems safe to assume that ln -fs behaves as specified by SUS if systemd was found. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=37870 Reviewed-by: Colin Walters <walters@verbum.org>
* Remove support for -Wl,--gc-sections altogetherSimon McVittie2011-06-071-4/+4
| | | | | | | | | | | Packagers should only enable this flag if they have confirmed that it actually works on their toolchain (it's the sort of rarely used feature that frequently regresses on obscure architectures/OSs without anyone noticing), and also confirmed that it is actually a significant size win for their configuration. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=33466 Reviewed-by: Colin Walters <walters@verbum.org>
* don't try to build dbus-daemon-launch-helper for WindowsMark Brand2011-06-071-0/+2
| | | | | | | Fixed regression in b0acded which breaks build for Windows. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=37838 Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
* Don't force use of -fPIE for the dbus-daemon if apparently supportedSimon McVittie2011-04-261-3/+4
| | | | | | | | | | | | | | | | | | | | | It's a minor security benefit, but not automatically beneficial (it enables ASLR, but breaks prelinking, some buggy toolchains, and some gdb versions). Distributions who know their infrastructure works well can enable it just as easily via ./configure CFLAGS="-fPIE" LDFLAGS="-pie" without extra support from us, and that's a generic solution applicable to many packages. Similarly, don't force libdbus and libdbus-internal to be PIC: libtool knows better than we do whether that's necessary/beneficial on a particular platform. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=16621 Bug: https://bugs.freedesktop.org/show_bug.cgi?id=27215 Bug-NB: NB#171940 Reviewed-by: Colin Walters <walters@verbum.org>
* Install dbus-daemon and dbus-daemon-launch-helper in the conventional waySimon McVittie2011-04-261-41/+27
| | | | | | | | | | | | | | Also remove some pointless indirection (extra_tests etc.), don't install the unused directory $(libexecdir)/dbus-1 (we actually install the launch helper directly into $(libexecdir)), and allow dbus_daemondir to be set on Windows rather than forcing dbus-daemon to be installed to $(bindir) there. dbus_daemon_execdir has to contain "exec" so that the dbus-daemon will be installed by "make install-exec" and not "make install-data". Bug: https://bugs.freedesktop.org/show_bug.cgi?id=14512 Reviewed-by: Colin Walters <walters@verbum.org>
* Enable launchd.Benjamin Reed2010-12-061-1/+7
| | | | | | | This patch enables support for Mac OS X's launch daemon for startup as well as sharing of the DBus session bus environment. It includes a LaunchAgent plist for automatic start of the session bus.
* Move manpages to doc/Will Thompson2010-10-051-4/+1
| | | | | | | This will make integrating the building of HTML versions of these manpages into the build system way easier, at the cost of keeping manpages in a different directory to the source for the program they describe. I think this is an acceptable trade-off.
* systemd: enable the dbus service unconditionallyKay Sievers2010-09-061-0/+5
| | | | Since D-Bus is a core part of the OS don't make this service optional.
* Applied patches from cygwin port.Yaakov Selkowitz2010-08-101-4/+14
|
* systemd: install systemd socket and service file by defaultLennart Poettering2010-07-091-4/+19
|
* Fix spelling errorDavid Zeuthen2010-04-261-1/+1
| | | | | | | This broke 'make install' since dbus-daemon-launch-helper didn't get installed. Signed-off-by: David Zeuthen <davidz@redhat.com>
* Renamed libdbus-convenience to libdbus-internal for automake (to stay in ↵Ralf Habacker2010-03-231-6/+6
| | | | sync with cmake).
* Update dll export for autoconf (to stay in sync with cmake).Marcus Brinkmann2010-03-231-2/+6
|
* remove DBUS_DAEMON_EXECUTABLE_NAME, we already have DBUS_DAEMON_NAME, and ↵Romain Pokrzywka2010-02-071-1/+1
| | | | use the specified name for the executable when building with cmake
* Merge branch 'my-dbus-1.2'Colin Walters2010-01-281-6/+6
|\ | | | | | | | | | | | | | | Conflicts: bus/Makefile.am dbus/dbus-sysdeps-util-unix.c dbus/dbus-transport.c test/test-service.c
| * Fix link order: system libraries should come after libdbus-convenienceColin Watson2009-09-181-8/+8
| | | | | | | | | | | | | | libdbus-convenience may use system libraries, but not the other way round. Most platforms don't care, but on some platforms this means that system libraries need to be listed after libdbus-convenience.la on the link line.
* | bus/Makefile.am: make dbus-daemon and friends bin_PROGRAMS on WindowsNguyễn Thái Ngọc Duy2009-12-011-7/+14
| | | | | | | | | | | | | | | | | | | | On Linux, dbus-daemon and dbus-daemon-launch-helper are treated specially because they need permission adjustment. On Windows, all executables are stubs, created by libtool. The real executables are in .libs. We need to use libtool to install them properly. So let's make them bin_PROGRAMS on Windows. (cherry picked from commit 7fb35992d67433ac3ba82e9e2e786e123323456d)
* | bus/Makefile.am: conditional compilation for W32, use EXEEXT in install ↵Marc Mutz2009-12-011-6/+15
| | | | | | | | hooks (cherry picked from commit 551a9c446b782167aa8b0a74a41a1b7ffb42c6eb)
* | Makefile.am's: reorder libraries so static libs come first (fixes linking on ↵Marc Mutz2009-12-011-2/+2
|/ | | | W32) (cherry picked from commit f88bd88d6b4b318f9401fae595343c8b1bacf654)
* add inotify support (FDO Bz#13268)John (J5) Palmieri2008-01-141-0/+4
| | | | | | | | | | | | | | | | | | 2008-01-14 John (J5) Palmieri <johnp@redhat.com> * patch by Frederic Crozat <fcrozat at mandriva dot com> (FDO Bz# 13268) * add inotify support * bus/Makefile.am: add inotify module to the build * bus/dir-watch-inotify.c: inotify module based off the dnotify and kqueue modules * configure.in: add checks and switch for inotify also add a printout at the end of configure if inotify and kqueue support is being built in (dnotify already had this)
* Correctly implement -fPIC and -fPIEJohn (J5) Palmieri2007-10-031-2/+2
| | | | | | | | * For security reasons we want possition independent code for libraries and possition independent executable for executables * before we were just enabling -fPIC * now we correctly enable -fPIC and -PIE for libdbus and the bus respectively * propper LD_FLAGS are set for each also
* 2007-07-24 Havoc Pennington <hp@redhat.com>Havoc Pennington2007-07-241-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | * configure.in: add AM_PROG_CC_C_O to allow per-target CPPFLAGS * bus/dispatch.c (bus_dispatch_test_conf): Fix up setting TEST_LAUNCH_HELPER_CONFIG to include the full path, and enable test shell_fail_service_auto_start when use_launcher==TRUE * bus/activation-helper-bin.c (convert_error_to_exit_code): pass through the INVALID_ARGS error so the test suite works * bus/activation.c (handle_activation_exit_error): return DBUS_ERROR_NO_MEMORY if we get BUS_SPAWN_EXIT_CODE_NO_MEMORY * dbus/dbus-spawn.c (_dbus_babysitter_get_child_exit_status): return only the exit code of the child, not the entire thingy from waitpid(), and make the return value indicate whether the child exited normally (with a status code) * bus/bus.c (process_config_first_time_only): _dbus_strdup works on NULL so no need to check (process_config_every_time): move servicehelper init here, so we reload it on HUP or config file change * bus/Makefile.am (install-data-hook): remove comment because Emacs make mode seems to be grumpy about it
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-241-1/+1
| | | | | | | | * bus/Makefile.am: * bus/test-system.c: (die), (check_memleaks), (test_pre_hook), (test_post_hook), (main): Add back the test-system.c file - not sure now this got ignored in the diff. I blame git.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-241-3/+82
| | | | | | | * bus/Makefile.am: * bus/test.h: Add the build glue for the lauch helper, and also add the launch-helper OOM checks into make check. I've probably broken the build, give me 2.
* 2007-07-24 Richard Hughes <richard@hughsie.com>Richard Hughes2007-07-241-0/+4
| | | | | | | | | | | | | | | * bus/Makefile.am: * bus/config-parser.c: (bus_config_parser_unref), (start_busconfig_child), (bus_config_parser_end_element), (servicehelper_path), (bus_config_parser_content), (bus_config_parser_finished), (bus_config_parser_get_servicehelper), (test_default_session_servicedirs), (test_default_system_servicedirs), (bus_config_parser_test): * bus/config-parser.h: Make the config-parser code use the common config code. Also add the session and systemdirs stuff, and make the config parser aware of the servicehelper field.
* 2007-06-15 Havoc Pennington <hp@redhat.com>Havoc Pennington2007-06-151-3/+1
| | | | | | | | | | | * dbus/dbus-sysdeps-unix.c (_dbus_append_session_config_file) (_dbus_append_system_config_file): new functions * bus/main.c (main): use _dbus_append_system_config_file() and _dbus_append_session_config_file() * dbus/Makefile.am (INCLUDES): move DBUS_SYSTEM_CONFIG_FILE and DBUS_SESSION_CONFIG_FILE into this makefile
* 2007-05-23 Havoc Pennington <hp@redhat.com>Havoc Pennington2007-05-231-0/+1
| | | | | | | * bus/Makefile.am (install-data-hook): create session.d * bus/session.conf.in: add session.d for the session bus, so security policy can be extended
* 2006-10-01 Havoc Pennington <hp@redhat.com>Havoc Pennington2006-10-011-5/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * dbus/dbus-connection.c (_dbus_connection_close_if_only_one_ref): Add a hack to make DBusNewConnectionFunction work right. * dbus/dbus-server-socket.c (handle_new_client_fd_and_unlock): use the hack here. Also, fix the todo about refcount leak. * dbus/dbus-server-debug-pipe.c (_dbus_transport_debug_pipe_new): and use the hack here * dbus/dbus-connection.c: Kill the "shared" flag vs. the "shareable" flag; this was completely broken, since it meant dbus_connection_open() returned a connection of unknown shared-ness. Now, we always hold a ref on anything opened as shareable. Move the call to notify dbus-bus.c into connection_forget_shared_unlocked, so libdbus consistently forgets all its knowledge of a connection at once. This exposed numerous places where things were totally broken if we dropped a ref inside get_dispatch_status_unlocked where connection_forget_shared_unlocked was previously, so move connection_forget_shared_unlocked into _dbus_connection_update_dispatch_status_and_unlock. Also move the exit_on_disconnect here. (shared_connections_shutdown): this assumed weak refs to the shared connections; since we have strong refs now, the assertion was failing and stuff was left in the hash. Fix it to close still-open shared connections. * bus/dispatch.c: fixup to use dbus_connection_open_private on the debug pipe connections * dbus/dbus-connection.c (dbus_connection_dispatch): only notify dbus-bus.c if the closed connection is in fact shared (_dbus_connection_close_possibly_shared): rename from _dbus_connection_close_internal (dbus_connection_close, dbus_connection_open, dbus_connection_open_private): Improve docs to explain the deal with when you should close or unref or both * dbus/dbus-bus.c (_dbus_bus_notify_shared_connection_disconnected_unlocked): rename from _dbus_bus_check_connection_and_unref_unlocked and modify to loop over all connections * test/test-utils.c (test_connection_shutdown): don't try to close shared connections. * test/name-test/test-threads-init.c (main): fix warnings in here * dbus/dbus-sysdeps.c (_dbus_abort): support DBUS_BLOCK_ON_ABORT env variable to cause blocking waiting for gdb; drop DBUS_PRINT_BACKTRACE and just call _dbus_print_backtrace() unconditionally. * configure.in: add -export-dynamic to libtool flags if assertions enabled so _dbus_print_backtrace works. * dbus/dbus-sysdeps-unix.c (_dbus_print_backtrace): use fprintf instead of _dbus_verbose to print the backtrace, and diagnose lack of -rdynamic/-export-dynamic
* * configure.ac, bus/Makefile.am: Generalize kqueue support so thatJohn (J5) Palmieri2006-08-251-1/+1
| | | | | it works on any system providing this interface, not only FreeBSD. For example, NetBSD. (Patch by Julio M. Merino Vidal <jmmv at NetBSD dot org>)