Commit graph

63 commits

Author SHA1 Message Date
Simon McVittie
2d3f48e8c8 build: Distribute update-authors.sh in tarballs
Newer versions of Meson require the script for a run_target() to be
present at configure time, even if the script isn't run.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-07-15 10:09:57 +01:00
Simon McVittie
c21d47836c CI: Add glue to build with mingw-w64 toolchain on Debian
Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-07-13 20:36:13 +01:00
Simon McVittie
e2f2c5dd42 build: Change how we create symlinks from Meson
Use install_symlink() in Meson versions that support it, or a script
with similar invocation in versions that do not. This will make it
straightforward to migrate to install_symlink() when we drop support
for Meson versions older than 0.61.0.

Based on an implementation in the game-data-packager package, which used
a shell script.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-07-13 20:36:13 +01:00
Simon McVittie
4fbdb14987 subprojects: Allow expat and GLib to be built as subprojects
This should let us build everything with a mingw-w64 toolchain, without
having to use prebuilt dependencies from MSYS.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-07-13 20:36:13 +01:00
Simon McVittie
9a64c6c095 build: Make update-authors convenience target runnable from Meson
Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-07-13 20:36:13 +01:00
Simon McVittie
1582f713a3 build: Distribute Meson build system in release tarballs
As long as we are treating Autotools as a first-class citizen, what we
release will be `make distcheck` output.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-07-13 20:36:13 +01:00
Simon McVittie
13e7b14e19 build: Include license files in releases
Fixes: 272928b "COPYING: Move full license text into LICENSES/"
Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-06-24 14:44:08 +01:00
Simon McVittie
1df1955b04 build: Fix update-authors rule to work out-of-tree
Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-02-23 19:42:46 +00:00
Simon McVittie
6d8280ec93 Merge branch 'code-coverage' into 'master'
Adapt to API change in AX_CODE_COVERAGE version 28

Closes #249

See merge request dbus/dbus!88

Reviewed-by: @pwithnall
2019-01-23 20:45:32 +00:00
Ralf Habacker
3bf97922bd Move cmake related build system to top level
Signed-off-by: Ralf Habacker <ralf.habacker@freenet.de>
2019-01-22 09:57:40 +01:00
Simon McVittie
2938c2125e Adapt to API change in AX_CODE_COVERAGE version 28
AX_CODE_COVERAGE recently changed the way it embedded its Makefile rules
in the output file: instead of using @CODE_COVERAGE_RULES@, users
are now meant to include aminclude_static.am.

The new AX_CODE_COVERAGE is only in the latest autoconf-archive release,
version 2019.01.06, which is inconveniently new, so bundle everything
we need for the moment.

This requires us to stop using the deprecated CODE_COVERAGE_LDFLAGS
(which we still used to support older versions of autoconf-archive)
and replace them with CODE_COVERAGE_LIBS.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2019-01-21 18:43:08 +00:00
Simon McVittie
cc00a7a6e9 CONTRIBUTING: Reformat as Markdown
Signed-off-by: Simon McVittie <smcv@collabora.com>
2018-10-19 09:58:42 +00:00
Simon McVittie
18aeb6975f build: Don't ship detailed changelogs for releases over 10 years old
Signed-off-by: Simon McVittie <smcv@collabora.com>
Reviewed-by: Philip Withnall <withnall@endlessm.com>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=107630
2018-08-29 17:56:53 +01:00
Simon McVittie
e4ec7ecbab Rename HACKING to CONTRIBUTING
Signed-off-by: Simon McVittie <smcv@collabora.com>
2018-08-22 17:48:42 +01:00
Simon McVittie
27b60e4c5b build: Include README.cmake in Autotools "make dist"
Our official source releases are Autotools "make dist" tarballs, but
there's no reason why CMake users can't use those too, and we already
include the CMake build files.

Signed-off-by: Simon McVittie <smcv@collabora.com>
Reviewed-by: Philip Withnall <withnall@endlessm.com>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=103420
2017-10-23 16:08:32 +01:00
Simon McVittie
7b21a8ab74 build: Distribute individual files and directories from cmake/
If we distribute the entire directory in "make dist" tarballs, then
we include the generated files cmake/DBus1Config.cmake and
cmake/DBus1ConfigVersion.cmake, which we should not.

Signed-off-by: Simon McVittie <smcv@collabora.com>
Reviewed-by: Philip Withnall <withnall@endlessm.com>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=103420
2017-10-23 16:08:32 +01:00
Simon McVittie
60993c27e1 build: Don't explicitly clean up configure-generated files
cmake/DBus1Config.cmake, cmake/DBus1ConfigVersion.cmake and dbus-1.pc
are all generated by AC_CONFIG_FILES, so they are automatically listed
in $(CONFIG_CLEAN_FILES) and cleaned in "make distclean" without further
help from us.

Signed-off-by: Simon McVittie <smcv@collabora.com>
Reviewed-by: Philip Withnall <withnall@endlessm.com>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=103420
2017-10-23 16:08:32 +01:00
Ralf Habacker
d160c1a71a cmake, autotools: Add find package config support for cmake clients
With this support cmake and autotools generates cmake equivalent of
pkgconfig files on configure time named DBus1Config*.cmake. These
files are installed into the related directory where cmake expects
find_package related config files.

For instructions how to use this feature with clients see readme.cmake.

With previous DBus versions each cmake client using DBus as dependency
needed a related FindDBus*.cmake in its source distribution or in
the cmake binary packages. With the 'config' find package style support
provided by this patch this requirement has been removed.

The generated config file uses pkgconfig on unix or autotools to
fetch package build flags, which is the prefered way. On Windows
we do not want to require CMake users to have pkg-config installed
so it uses cmake buildin target export support for exporting all
targets into DBus1ConfigTargets*.cmake.

[smcv: make sure variable substitution works in Autotools too]

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=99721
Reviewed-by: Simon McVittie <smcv@collabora.com>
Reviewed-by: Ralf Habacker <ralf.habacker@freenet.de>
Signed-off-by: Simon McVittie <smcv@collabora.com>
2017-03-20 14:18:45 +00:00
Thomas Zimmermann
be04ba8354 Use AX_CODE_COVERAGE for test-coverage statistics
DBus uses custom rules in its Makefiles to implement test-coverage
statistics.

This patch implements test-coverage statistics with the autoconf macro
AX_CODE_COVERAGE. The script automatically tests for tools (e.g., gcov,
lcov), sets build variables and creates Makefile rules.

Run 'configure' with '--enable-code-coverage' to enable support for
test-coverage statistics. Run 'make check-code-coverage' to run the
tests and generate the statistics.

Signed-off-by: Thomas Zimmermann <tdz@users.sourceforge.net>
[smcv: do not alter compiler.m4; move AM_CXXFLAGS to the one place we
compile C++]
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=88922
2016-08-15 14:30:51 +01:00
Colin Walters
325c018c1f build: Dist autogen.sh
For convenience of people who have to patch the autotools.
See also http://people.gnome.org/~walters/docs/build-api.txt

https://bugs.freedesktop.org/show_bug.cgi?id=60330
2013-02-05 12:50:55 -05:00
Simon McVittie
96cb1542c2 include README.valgrind in tarballs 2012-11-09 15:28:16 +00:00
Colin Walters
d9f470a7f4 build: Ensure docs are enabled for distcheck
https://bugs.freedesktop.org/show_bug.cgi?id=55426

Signed-off-by: Colin Walters <walters@verbum.org>
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2012-11-09 14:06:29 +00:00
Simon McVittie
a45df5f10a Build docs after running tests, and remove redundant DIST_SUBDIRS
If DIST_SUBDIRS isn't set, it defaults to SUBDIRS, so it's just noise.

Running tests before building documentation is an easy way to speed up the
hack/make check/fix cycle, by not wasting time rebuilding the
documentation (which is often slow) until all the tests compile and pass.

https://bugs.freedesktop.org/show_bug.cgi?id=34405
Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
2011-07-18 19:14:57 +01:00
Simon McVittie
fb06b43956 Honour aclocal flags in Makefile.am, rather than gluing them onto ACLOCAL
Part of a patch by Javier Jardón.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=32245
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2011-02-24 15:58:01 +00:00
Simon McVittie
9a97f82079 Import compiler.m4 and lcov.am from telepathy-glib, and use them to replace gcov
Reviewed-by: Colin Walters <walters@verbum.org>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=10887
2011-02-17 17:07:12 +00:00
Ralf Habacker
2521c59437 Dist additional README's too. 2010-12-21 08:23:27 +01:00
Will Thompson
75ef1d2ed4 Merge branch 'documentation-build-system' 2010-10-26 17:11:10 +01:00
Andre Heinecke
c8293868a3 Dist Readme.win instead of Readme.windbus 2010-10-13 08:01:25 +02:00
Will Thompson
36133656ac Squash warnings and spurious output from autogen.sh 2010-10-05 11:45:48 +01:00
Ralf Habacker
b6449b91cc Include cmake subdirectory in source distribution. 2010-09-10 09:14:06 +02:00
Lennart Poettering
bffc52a385 systemd: install systemd socket and service file by default 2010-07-09 23:35:54 +02:00
Lennart Poettering
e7743435c2 build-sys: add make target for updating AUTHORS file 2010-06-23 16:13:43 +02:00
Tor Lillqvist
dfbf2050f6 Rename README.win to README.windbus to match its origin
Also add it to EXTRA_DIST.
2009-12-01 09:20:28 +01:00
John (J5) Palmieri
b4cbb84fe0 getting ready for 1.2 stable branch
* ChangeLog.pre-1-2: rename ChangeLog
* NEWS.pre-1-2: rename NEWS
* Makefile.am: list the pre files in EXTRA_DIST; the pre-1-0 files had not
  been added yet so do that too
2008-04-04 15:37:50 -04:00
Havoc Pennington
8de13aed87 2006-10-21 Havoc Pennington <hp@redhat.com>
* Makefile.am (EXTRA_DIST): dist cleanup-man-pages.sh so it's in
	the tarball if packagers want to run it

	* cleanup-man-pages.sh: Add a script which munges all the internal
	API man pages out of the Doxygen output. This reduces the size of
	the installed man pages from 7 to 2 megs, and avoids
	namespace-polluting pages. Right now (like Doxygen) this script
	isn't in the build, it's something packagers can do manually.
2006-10-22 00:31:08 +00:00
John (J5) Palmieri
a929c9a3b4 * Remove all bindings 2006-07-14 16:20:12 +00:00
Thiago Macieira
86bb5584d3 Oops, forgot part of the patch. Same ChangeLog entry. 2006-04-30 11:07:01 +00:00
Thiago Macieira
ddb4764899 * Makefile.am:
* configure.in:
        * dbus-qt4-1.pc.in: Add a pkg-config file for libdbus-qt4-1.
	Thanks to Brad Hards for providing the patch
2006-04-30 10:47:47 +00:00
Harald Fernengel
57b6fd3894 bring Qt3 library back. Some apps that are not in the KDE trunk are using it. 2005-09-30 15:20:08 +00:00
Colin Walters
254f4d8592 2005-03-20 Colin Walters <walters@verbum.org>
* Makefile.am (SUBDIRS, DIST_SUBDIRS): Build tools before test.
2005-03-21 02:31:09 +00:00
Havoc Pennington
b8a309ac94 2004-12-24 Havoc Pennington <hp@redhat.com>
* test/decode-gcov.c: change to use .gcno and .gcda files, but the
	file format has also changed and I haven't adapted to that yet

	* Makefile.am: load .gcno files from latest gcc
2004-12-24 17:54:01 +00:00
Havoc Pennington
8d413c6e71 2004-07-24 Havoc Pennington <hp@redhat.com>
* Makefile.am (DIST_SUBDIRS): add DIST_SUBDIRS, problem solved by
	Owen

	* test/Makefile.am (DIST_SUBDIRS): here also
2004-07-25 03:52:48 +00:00
Owen Fraser-Green
8bc62a2864 Various mono related changes to facilitate GAC support. 2004-05-15 19:31:12 +00:00
Owen Fraser-Green
c916037773 First checkin of the Mono bindings. 2004-03-23 12:10:32 +00:00
Havoc Pennington
8a4d94fe70 2003-10-16 Havoc Pennington <hp@redhat.com>
* glib/dbus-gtest-main.c: bracket with #ifdef DBUS_BUILD_TESTS

	* Makefile.am (GCOV_DIRS): remove "test", we don't care about test
	coverage of the tests
	(coverage-report.txt): don't move the .da and .bbg files around
2003-10-17 16:23:19 +00:00
Havoc Pennington
cd077dc8f2 2003-10-14 Havoc Pennington <hp@redhat.com>
* test/decode-gcov.c: support gcc 3.3 also, though gcc 3.3 seems
	to have a bug keeping it from outputting the .da files sometimes
	(string_get_string): don't append garbage nul bytes to the string.
2003-10-15 21:09:40 +00:00
Havoc Pennington
3251264ac4 2003-10-14 Havoc Pennington <hp@redhat.com>
* bus/bus.c (bus_context_check_security_policy): revamp this to
	work more sanely with new policy-based requested reply setup

	* bus/connection.c (bus_transaction_send_from_driver): set bus
	driver messages as no reply

	* bus/policy.c (bus_client_policy_check_can_receive): handle a
	requested_reply attribute on allow/deny rules

	* bus/system.conf: add <allow requested_reply="true"/>

	* bus/driver.c (bus_driver_handle_message): fix check for replies
	sent to the bus driver, which was backward. How did this ever work
	at all though? I think I'm missing something.

	* dbus/dbus-message.c (decode_header_data): require error and
	method return messages to have a reply serial field to be valid
	(_dbus_message_loader_queue_messages): break up this function;
	validate that reply serial and plain serial are nonzero;
	clean up the OOM/error handling.
	(get_uint_field): don't return -1 from this
	(dbus_message_create_header): fix signed/unsigned bug

	* bus/connection.c (bus_connections_expect_reply): save serial of
	the incoming message, not reply serial
2003-10-14 22:16:03 +00:00
Seth Nickell
f4cffc0e49 2003-09-21 Seth Nickell <seth@gnome.org>
First checkin of the Python bindings.

	* python/.cvsignore:
	* python/Makefile.am:
	* python/dbus_bindings.pyx.in:
	* python/dbus_h_wrapper.h:

	Pieces for Pyrex to operate on, building a dbus_bindings.so
	python module for low-level access to the DBus APIs.

	* python/dbus.py:

	High-level Python module for accessing DBus objects.

	* configure.in:
	* Makefile.am:

	Build stuff for the python bindings.

	* acinclude.m4:

	Extra macro needed for finding the Python C header files.
2003-09-22 05:45:59 +00:00
Havoc Pennington
583994cb3b 2003-09-15 Havoc Pennington <hp@pobox.com>
* dbus/dbus-pending-call.c: add the get/set object data
	boilerplate as for DBusConnection, etc. Use generic object data
	for the notify callback.

	* glib/dbus-gparser.c (parse_node): parse child nodes

	* tools/dbus-viewer.c: more hacking on the dbus-viewer

	* glib/dbus-gutils.c (_dbus_gutils_split_path): add a file to
	contain functions shared between the convenience lib and the
	installed lib

	* glib/Makefile.am (libdbus_glib_1_la_LDFLAGS): add
	-export-symbols-regex to the GLib library

	* dbus/dbus-object-tree.c (_dbus_object_tree_dispatch_and_unlock):
	fix the locking in here, and add a default handler for
	Introspect() that just returns sub-nodes.

2003-09-14  Havoc Pennington  <hp@pobox.com>

	* glib/dbus-gthread.c (dbus_g_thread_init): rename to make g_foo
	rather than gfoo consistent

	* glib/dbus-gproxy.h: delete for now, move contents to
	dbus-glib.h, because the include files don't work right since we
	aren't in the dbus/ subdir.

	* glib/dbus-gproxy.c (dbus_gproxy_send): finish implementing
	(dbus_gproxy_end_call): finish
	(dbus_gproxy_begin_call): finish

	* glib/dbus-gmain.c (dbus_set_g_error): new

	* glib/dbus-gobject.c (handle_introspect): include information
	about child nodes in the introspection

	* dbus/dbus-connection.c (dbus_connection_list_registered): new
	function to help in implementation of introspection

	* dbus/dbus-object-tree.c
	(_dbus_object_tree_list_registered_and_unlock): new function

2003-09-12  Havoc Pennington  <hp@pobox.com>

	* glib/dbus-gidl.h: add common base class for all the foo_info
	types

        * tools/dbus-viewer.c: add GTK-based introspection UI thingy
	similar to kdcop

	* test/Makefile.am: try test srcdir -ef . in addition to test
	srcdir = ., one of them should work (yeah lame)

        * glib/Makefile.am: build the "idl" parser stuff as a convenience
	library

	* glib/dbus-gparser.h: make description_load routines return
	NodeInfo* not Parser*

	* Makefile.am (SUBDIRS): build test dir after all library dirs

	* configure.in: add GTK+ detection
2003-09-17 03:52:07 +00:00
Havoc Pennington
93b5a19c9f 2003-06-22 Havoc Pennington <hp@pobox.com>
* mono/*, gcj/*, configure.in, Makefile.am:
	Check in makefiles and subdirs for mono and gcj bindings.
	Neither binding actually exists, just trying to get through
	all the build and other boring bits.
2003-06-22 05:53:06 +00:00