Commit graph

68 commits

Author SHA1 Message Date
Ralf Habacker
8a29ea406d Refactor windows backtrace generator to link directly to dbghelp shared library.
Also use SymFromAddr() instead of deprecated SymGetSymFromAddr()
as suggested on MSDN; fix some indention issues.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=92721
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2015-11-24 13:38:44 +01:00
Ralf Habacker
924bff39e6 cmake: stop using deprecated LOCATION property (policy CMP0026)
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=89450
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2015-03-06 20:32:30 +01:00
Ralf Habacker
5d8f82d638 Fix cmake build system bug not generating versioned library name in case LT_REVISION is zero.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=89450
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2015-03-06 20:29:36 +01:00
Simon McVittie
7ec30ffa90 Add versioned symbol support to cmake build system for linux platforms to keep in sync with autotools.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=83115
Reviewed-by: Ralf Habacker <ralf.habacker@freenet.de>
2015-02-20 23:27:12 +01:00
Bertrand SIMONNET
57696a2e8a Link dbus-daemon and dbus-daemon-lauch-helper against libdbus
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>
2015-02-20 20:49:45 +00:00
Simon McVittie
7fb57c7576 Only support systemd: transport if we have systemd libraries
This means we can drop our convenience copy of sd-daemon.[ch]. We're
checking for libsd-daemon anyway, to support journald and logind
integration.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=71818
Reviewed-by: Lennart Poettering <lennart@poettering.net>
2014-02-19 16:52:29 +00:00
Ralf Habacker
ea1884e3e5 Keep cmake generated shared dbus-1 library file name in sync with autotools.
Autotools uses a versioned shared library name derived from libtool.
This patch adds a versioned shared library name to cmake builds for all
supported platforms. Binary compatibility for clients build against older
cmake generated binary packages of dbus is provided; on unix like os
with symbolic links and on Windows with a copy of the shared library.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=74117
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2014-01-30 17:09:41 +01:00
Ralf Habacker
0cd0714994 Rename dbus-test to test-dbus to match common test application naming scheme.
[reverted the dbus-specification part -smcv]
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=73495
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2014-01-17 16:17:02 +00:00
Ralf Habacker
8e728f36d1 Use macros for test and helper executable targets on cmake build system.
The new macros add_test_executables and add helper_executables provides a
platform independent way for specifing dbus test and service applications.

On native Windows and Linux/UNIX systems the test applications are
directly runable.

When cross compiling for Windows on Linux test applications could be
executed on the Linux host system with the help of wine and activated
binfmt_misc support for wine.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=41252
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2014-01-10 01:24:56 +01:00
Ralf Habacker
9866c2d785 Remove obsolete cmake project tags in sub directories; we only have one project.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=68506
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2014-01-08 01:35:49 +01:00
Simon McVittie
30fa2e1ace Revert "Factor out DBusAuthorization from DBusTransport"
This reverts commit 600621dbc8.
2013-08-23 11:10:41 +01:00
Cosimo Alfarano
600621dbc8 Factor out DBusAuthorization from DBusTransport
In order to authorize/reject a connection in a polite way, instead of
cutting it off after authentication succeed and Hello() is
sent, because authorization failed, we need to factor out some
authorization bits from DBusTransport and pass them to DBusAuth.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=39720
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2013-08-23 01:20:34 +02:00
Chengwei Yang
0cb7d487bc tests to embedded tests: replaced in cmake files
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
2013-06-28 12:18:32 +01:00
Simon McVittie
7038cdc249 Convert a{sv} helpers from Stats into generic utility code
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=54445
Reviewed-by: Ralf Habacker <ralf.habacker@freenet.de>
2013-06-25 12:25:51 +01:00
Simon McVittie
17a23d08b5 dbus_threads_init_default, dbus_threads_init: be safe to call at any time
On Unix, we use a pthreads mutex, which can be allocated and
initialized in global memory.

On Windows, we use a CRITICAL_SECTION, together with a call to
InitializeCriticalSection() from the constructor of a global static
C++ object (thanks to Ralf Habacker for suggesting this approach).

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=54972
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Alban Crequy <alban.crequy@collabora.co.uk>
Reviewed-by: Ralf Habacker <ralf.habacker@freenet.de>
2013-05-10 11:35:08 +01:00
Ralf Habacker
286923789e Fixed cmake windows build system bug not installing runtime part of shared libraries into bin dir.
This patch also take care of different install directories on unix like os.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=59733
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2013-04-29 20:42:30 +02:00
Ralf Habacker
8159956ed4 Add function _dbus_get_peer_pid_from_tcp_handle() which returns pid and sid from tcp connection peer.
This function is called by _dbus_read_credentials_socket() to fetch client credentials.

Because Wine is used to check cross compiled dbus for windows, in calls to GetExtendedTcpTable()
we use table class TCP_TABLE_OWNER_PID_ALL instead of TCP_TABLE_OWNER_PID_CONNECTIONS.
This class is the only one which is available since wine 1.5.3.

https://bugs.freedesktop.org/show_bug.cgi?id=61787
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2013-04-05 11:17:26 +02:00
Ralf Habacker
76503373e6 Fix cmake linux build: dbus-1 and dbus-internal require to link to rt library
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=61637
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2013-03-04 18:26:06 +01:00
Simon McVittie
b47f4c22ee On Unix, link libdbus to a platform-specific threading library
On Linux, this is libpthread; on other Unixes, in principle it might be
called libpthreads or libthreads or something.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=47237
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Ralf Habacker <ralf.habacker@freenet.de>
2012-06-15 14:42:19 +01:00
Simon McVittie
f426c6cddd Add dbus-syntax.[ch]
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=39549
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
2012-02-24 12:43:55 +00:00
Ralf Habacker
dd4038156d Windows compile fix
BUG: https://bugs.freedesktop.org/show_bug.cgi?id=45832
2012-02-09 14:58:43 +01:00
Simon McVittie
301fa555ac cmake: don't include -util sources in the shared library
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34976
Reviewed-by: Cosimo Alfarano <cosimo.alfarano@collabora.co.uk>
2011-10-12 18:14:51 +01:00
Simon McVittie
617eaa9ef9 Remove dbus-auth-script from the shared library
Only the tests use this.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34976
Reviewed-by: Cosimo Alfarano <cosimo.alfarano@collabora.co.uk>
2011-10-12 18:14:09 +01:00
Ralf Habacker
ff3f4860ef Use dbus/dbus-arch-deps.h.in as source for cmake too
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=41033
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2011-09-23 15:38:12 +02:00
Ralf Habacker
70b0ffd501 cmake fix: install version string
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=40905
2011-09-20 19:34:38 +02:00
Simon McVittie
f8d0012ab1 Remove references to dbus-md5, which hasn't been used for at least 8 years
Reviewed-by: Colin Walters <walters@verbum.org>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34292
2011-02-17 16:16:12 +00:00
Ralf Habacker
a8810a7940 Service dir related bug fix on windows.
The code for accessing services requires absolute pathes, which are based
on DBUS_DATADIR. DBUS_DATADIR on windows is defined relative. This patch
makes sure that those pathes are absolute.
2010-10-29 11:55:27 +02:00
Ralf Habacker
80f851416f Unix compile fix. 2010-09-08 09:13:42 +02:00
Will Thompson
a44d08711c Revert "Bug 28460 - Refactored dbus configuration access."
This reverts commit 6f9077ee87, which
broke the build on Unix (see previous patch) and introduced a bunch of
warnings.
2010-06-17 15:14:22 +01:00
Ralf Habacker
6f9077ee87 Bug 28460 - Refactored dbus configuration access.
Libdbus uses several config variables. On unix these settings are read from
environment variables by using _dbus_getenv.

On other platforms like wince there are no environment variables available and
_dbus_getenv needs an emulation for those plattforms (see
dbus/dbus-sysdeps-wince-glue.c)

To cleanup this emulation the appended patch adds a config api by adding
_dbus_config_... functions.

Also having all client config related functions listed in one header file
provides a good overview about which config attributes  are available.

The default implementation retrieves the config values from environment
variables. For other os this could be easily extended or replaced by.
2010-06-14 18:27:04 +02:00
Ralf Habacker
14cc116254 Removed obsolate file. 2010-04-16 08:04:26 +02:00
Romain Pokrzywka
c60c9601f5 update WinCE cmake support 2010-04-13 15:42:10 +02:00
Ralf Habacker
e183399391 Additional fixes for 2154acb349 2010-03-22 10:58:53 +01:00
unknown
2154acb349 Make the windows binaries and build match the linux one with cmake buildsystem.
This is performed by including the files from the client lib in the internal one
and by removing the linking to dbus-1 for targets using the internal library.
2010-03-22 10:41:06 +01:00
Ralf Habacker
1fb6d3faf6 Removed def file support for cmake build system. 2010-03-22 10:41:06 +01:00
Ralf Habacker
96958b238f fixed def file usage for cmake mingw builds 2010-03-19 21:33:57 +01:00
Ralf Habacker
31d9f4d655 Merge branch 'master' of ssh://git.freedesktop.org/git/dbus/dbus 2010-02-09 19:44:12 +01:00
Romain Pokrzywka
e750a52a4d move dbus-1.def.cmake to the cmake subdir, as it's cmake specific 2010-02-07 00:32:48 +01:00
Romain Pokrzywka
18d6f550d4 add the LIBRARY header in the .def file, but for mingw only, msvc doesn't support it anymore. It's still needed when creating a .lib from a mingw-built dll 2010-02-07 00:32:47 +01:00
Romain Pokrzywka
83c70d45a8 and another .def.in for the verbose mode handling 2010-02-07 00:32:44 +01:00
Romain Pokrzywka
b0e0cd03e8 commented bits cleanup 2010-02-07 00:32:44 +01:00
Romain Pokrzywka
f554db982f dbus-spawn.h is internal, it shouldn't be installed 2010-02-07 00:32:40 +01:00
Romain Pokrzywka
bbd1c9fe82 now fix the build for the tests; turns out we need another set of exports, since some tests are compiled in the client lib and some are in the internal lib... 2010-02-07 00:32:39 +01:00
Romain Pokrzywka
ce69516585 refactor the cmake build to match with autotools: only export client symbols in dbus-1 and use and internal library for the rest. Currently this library is statically linked to the apps but it can be made dynamic if wanted 2010-02-07 00:32:39 +01:00
Romain Pokrzywka
5746ba8811 split the symbols into separate files matching the client/shared/util sections of the code, and generate the final .def file dynamically 2010-02-07 00:32:37 +01:00
Romain Pokrzywka
7487915ff4 make the def handling simpler with cmake, we don't need to specify the library name anyway 2010-02-07 00:32:36 +01:00
Ralf Habacker
14f376717e win32 fix: provide separate def file for cmake until there is full splitlib support for cmake 2010-02-02 14:26:50 +01:00
Ralf Habacker
413c3537b8 moved out dbus file related functions from sysdeps into separate files - tested on windows 2009-12-20 11:24:32 +01:00
Ralf Habacker
35eb740bda moved out DBusPipe implementation into separate files 2009-12-18 14:18:22 +01:00
Ralf Habacker
aab383a63e added new variable DBUS_BUILD_TIMESTAMP 2009-12-14 23:31:38 +01:00