From: Lucas De Marchi <lucas.demarchi@profusion.mobi>
To: linux-bluetooth@vger.kernel.org
Subject: [PATCH BlueZ 2/2] build-sys: Don't build gdbus several times
Date: Wed, 3 Jul 2013 09:29:20 -0300 [thread overview]
Message-ID: <1372854560-8731-2-git-send-email-lucas.demarchi@profusion.mobi> (raw)
In-Reply-To: <1372854560-8731-1-git-send-email-lucas.demarchi@profusion.mobi>
We are currently compiling gdbus 3 times: one for tests, one for
bluetoothd and another for obexd.
$ ls gdbus/*watch.o
gdbus/bluetoothd-watch.o gdbus/obexd-watch.o gdbus/watch.o
Instead of prepending $(gdbus_sources) to several _SOURCES variable, use
a convenience library.
---
Makefile.am | 16 +++++++++++-----
Makefile.obexd | 5 +++--
Makefile.tools | 29 +++++++++++++++--------------
3 files changed, 29 insertions(+), 21 deletions(-)
diff --git a/Makefile.am b/Makefile.am
index df1b61b..c5b2fd5 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -112,6 +112,11 @@ builtin_nodist =
include Makefile.plugins
+noinst_LTLIBRARIES += gdbus/libgdbus-internal.la
+gdbus_libgdbus_internal_la_SOURCES = $(gdbus_sources)
+gdbus_libgdbus_internal_la_LDFLAGS = $(AM_LDFLAGS) @DBUS_LIBS@ @GLIB_LIBS@
+gdbus_libgdbus_internal_la_CFLAGS = $(AM_CFLAGS) @DBUS_CFLAGS@ @GLIB_CFLAGS@
+
if MAINTAINER_MODE
plugin_LTLIBRARIES += plugins/external-dummy.la
plugins_external_dummy_la_SOURCES = plugins/external-dummy.c
@@ -122,7 +127,7 @@ endif
libexec_PROGRAMS += src/bluetoothd
-src_bluetoothd_SOURCES = $(gdbus_sources) $(builtin_sources) \
+src_bluetoothd_SOURCES = $(builtin_sources) \
$(attrib_sources) $(btio_sources) \
src/bluetooth.ver \
src/main.c src/log.h src/log.c \
@@ -148,8 +153,8 @@ src_bluetoothd_SOURCES = $(gdbus_sources) $(builtin_sources) \
src/eir.h src/eir.c \
src/shared/util.h src/shared/util.c \
src/shared/mgmt.h src/shared/mgmt.c
-src_bluetoothd_LDADD = lib/libbluetooth-internal.la @GLIB_LIBS@ @DBUS_LIBS@ \
- -ldl -lrt
+src_bluetoothd_LDADD = lib/libbluetooth-internal.la gdbus/libgdbus-internal.la \
+ @GLIB_LIBS@ @DBUS_LIBS@ -ldl -lrt
src_bluetoothd_LDFLAGS = $(AM_LDFLAGS) -Wl,--export-dynamic \
-Wl,--version-script=$(srcdir)/src/bluetooth.ver
@@ -245,8 +250,9 @@ unit_test_sdp_LDADD = lib/libbluetooth-internal.la @GLIB_LIBS@
unit_tests += unit/test-gdbus-client
-unit_test_gdbus_client_SOURCES = $(gdbus_sources) unit/test-gdbus-client.c
-unit_test_gdbus_client_LDADD = @GLIB_LIBS@ @DBUS_LIBS@
+unit_test_gdbus_client_SOURCES = unit/test-gdbus-client.c
+unit_test_gdbus_client_LDADD = gdbus/libgdbus-internal.la \
+ @GLIB_LIBS@ @DBUS_LIBS@
unit_tests += unit/test-gobex-header unit/test-gobex-packet unit/test-gobex \
unit/test-gobex-transfer unit/test-gobex-apparam
diff --git a/Makefile.obexd b/Makefile.obexd
index 0d9b4c6..d5377cb 100644
--- a/Makefile.obexd
+++ b/Makefile.obexd
@@ -54,7 +54,7 @@ obexd_builtin_sources += obexd/client/mns.c obexd/src/map_ap.h \
libexec_PROGRAMS += obexd/src/obexd
-obexd_src_obexd_SOURCES = $(gdbus_sources) $(btio_sources) $(gobex_sources) \
+obexd_src_obexd_SOURCES = $(btio_sources) $(gobex_sources) \
$(obexd_builtin_sources) \
obexd/src/main.c obexd/src/obexd.h \
obexd/src/plugin.h obexd/src/plugin.c \
@@ -80,7 +80,8 @@ obexd_src_obexd_SOURCES = $(gdbus_sources) $(btio_sources) $(gobex_sources) \
obexd/client/driver.h obexd/client/driver.c \
obexd/src/map_ap.h
obexd_src_obexd_LDADD = lib/libbluetooth-internal.la \
- @ICAL_LIBS@ @DBUS_LIBS@ @GLIB_LIBS@ -ldl
+ gdbus/libgdbus-internal.la \
+ @ICAL_LIBS@ @DBUS_LIBS@ @GLIB_LIBS@ -ldl
obexd_src_obexd_LDFLAGS = -Wl,--export-dynamic
diff --git a/Makefile.tools b/Makefile.tools
index e59420f..a9b0182 100644
--- a/Makefile.tools
+++ b/Makefile.tools
@@ -2,11 +2,12 @@
if CLIENT
bin_PROGRAMS += client/bluetoothctl
-client_bluetoothctl_SOURCES = $(gdbus_sources) client/main.c \
+client_bluetoothctl_SOURCES = client/main.c \
client/display.h client/display.c \
client/agent.h client/agent.c \
monitor/uuid.h monitor/uuid.c
-client_bluetoothctl_LDADD = @GLIB_LIBS@ @DBUS_LIBS@ -lreadline
+client_bluetoothctl_LDADD = gdbus/libgdbus-internal.la @GLIB_LIBS@ @DBUS_LIBS@ \
+ -lreadline
endif
if MONITOR
@@ -57,14 +58,12 @@ tools_l2cap_tester_SOURCES = tools/l2cap-tester.c monitor/bt.h \
src/shared/tester.h src/shared/tester.c
tools_l2cap_tester_LDADD = lib/libbluetooth-internal.la @GLIB_LIBS@
-tools_gap_tester_SOURCES = $(gdbus_sources) \
- tools/gap-tester.c monitor/bt.h \
+tools_gap_tester_SOURCES = tools/gap-tester.c monitor/bt.h \
emulator/btdev.h emulator/btdev.c \
emulator/bthost.h emulator/bthost.c \
src/shared/hciemu.h src/shared/hciemu.c \
src/shared/tester.h src/shared/tester.c
-
-tools_gap_tester_LDADD = @GLIB_LIBS@ @DBUS_LIBS@
+tools_gap_tester_LDADD = gdbus/libgdbus-internal.la @GLIB_LIBS@ @DBUS_LIBS@
endif
if TOOLS
@@ -188,12 +187,13 @@ tools_btmgmt_LDADD = lib/libbluetooth-internal.la @GLIB_LIBS@
tools_btiotest_SOURCES = tools/btiotest.c btio/btio.h btio/btio.c
tools_btiotest_LDADD = lib/libbluetooth-internal.la @GLIB_LIBS@
-tools_mpris_player_SOURCES = $(gdbus_sources) tools/mpris-player.c
-tools_mpris_player_LDADD = @GLIB_LIBS@ @DBUS_LIBS@
+tools_mpris_player_SOURCES = tools/mpris-player.c
+tools_mpris_player_LDADD = gdbus/libgdbus-internal.la @GLIB_LIBS@ @DBUS_LIBS@
-tools_bluetooth_player_SOURCES = $(gdbus_sources) tools/bluetooth-player.c \
+tools_bluetooth_player_SOURCES = tools/bluetooth-player.c \
client/display.h client/display.c
-tools_bluetooth_player_LDADD = @GLIB_LIBS@ @DBUS_LIBS@ -lreadline
+tools_bluetooth_player_LDADD = gdbus/libgdbus-internal.la \
+ @GLIB_LIBS@ @DBUS_LIBS@ -lreadline
EXTRA_DIST += tools/bdaddr.1
endif
@@ -222,8 +222,8 @@ endif
if EXPERIMENTAL
noinst_PROGRAMS += profiles/iap/iapd
-profiles_iap_iapd_SOURCES = $(gdbus_sources) profiles/iap/main.c
-profiles_iap_iapd_LDADD = @GLIB_LIBS@ @DBUS_LIBS@
+profiles_iap_iapd_SOURCES = profiles/iap/main.c
+profiles_iap_iapd_LDADD = gdbus/libgdbus-internal.la @GLIB_LIBS@ @DBUS_LIBS@
endif
if CUPS
@@ -231,14 +231,15 @@ cupsdir = $(libdir)/cups/backend
cups_PROGRAMS = profiles/cups/bluetooth
-profiles_cups_bluetooth_SOURCES = $(gdbus_sources) profiles/cups/main.c \
+profiles_cups_bluetooth_SOURCES = profiles/cups/main.c \
profiles/cups/cups.h \
profiles/cups/sdp.c \
profiles/cups/spp.c \
profiles/cups/hcrp.c
profiles_cups_bluetooth_LDADD = @GLIB_LIBS@ @DBUS_LIBS@ \
- lib/libbluetooth-internal.la
+ lib/libbluetooth-internal.la \
+ gdbus/libgdbus-internal.la
endif
test_scripts += test/sap_client.py test/bluezutils.py \
--
1.8.3.2
next prev parent reply other threads:[~2013-07-03 12:29 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-03 12:29 [PATCH BlueZ 1/2] build-sys: Rename lib suffix to -internal Lucas De Marchi
2013-07-03 12:29 ` Lucas De Marchi [this message]
2013-07-18 14:44 ` [PATCH BlueZ 2/2] build-sys: Don't build gdbus several times Marcel Holtmann
2013-07-18 14:43 ` [PATCH BlueZ 1/2] build-sys: Rename lib suffix to -internal Marcel Holtmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1372854560-8731-2-git-send-email-lucas.demarchi@profusion.mobi \
--to=lucas.demarchi@profusion.mobi \
--cc=linux-bluetooth@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).