• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1
2AM_MAKEFLAGS = --no-print-directory
3
4lib_LTLIBRARIES =
5
6noinst_LTLIBRARIES =
7
8bin_PROGRAMS =
9
10sbin_PROGRAMS =
11
12noinst_PROGRAMS =
13
14dist_man_MANS =
15
16dist_noinst_MANS =
17
18CLEANFILES =
19
20EXTRA_DIST =
21
22includedir = @includedir@/bluetooth
23
24include_HEADERS =
25
26if CONFIGFILES
27dbusdir = $(sysconfdir)/dbus-1/system.d
28
29dbus_DATA = src/bluetooth.conf
30
31confdir = $(sysconfdir)/bluetooth
32
33conf_DATA =
34
35statedir = $(localstatedir)/lib/bluetooth
36
37state_DATA =
38endif
39
40plugindir = $(libdir)/bluetooth/plugins
41
42plugin_LTLIBRARIES =
43
44
45lib_headers = lib/bluetooth.h lib/hci.h lib/hci_lib.h lib/mgmt.h \
46		lib/sco.h lib/l2cap.h lib/sdp.h lib/sdp_lib.h lib/uuid.h \
47		lib/rfcomm.h lib/bnep.h lib/cmtp.h lib/hidp.h
48local_headers = $(foreach file,$(lib_headers), lib/bluetooth/$(notdir $(file)))
49
50include_HEADERS += $(lib_headers)
51
52lib_LTLIBRARIES += lib/libbluetooth.la
53
54lib_libbluetooth_la_SOURCES = $(lib_headers) \
55				lib/bluetooth.c lib/hci.c lib/sdp.c lib/uuid.c
56lib_libbluetooth_la_LDFLAGS = -version-info 14:1:11
57lib_libbluetooth_la_DEPENDENCIES = $(local_headers)
58
59CLEANFILES += $(local_headers)
60
61
62if SBC
63noinst_LTLIBRARIES += sbc/libsbc.la
64
65sbc_libsbc_la_SOURCES = sbc/sbc.h sbc/sbc.c sbc/sbc_math.h sbc/sbc_tables.h \
66			sbc/sbc_primitives.h sbc/sbc_primitives.c \
67			sbc/sbc_primitives_mmx.h sbc/sbc_primitives_mmx.c \
68			sbc/sbc_primitives_iwmmxt.h sbc/sbc_primitives_iwmmxt.c \
69			sbc/sbc_primitives_neon.h sbc/sbc_primitives_neon.c \
70			sbc/sbc_primitives_armv6.h sbc/sbc_primitives_armv6.c
71
72sbc_libsbc_la_CFLAGS = -finline-functions -fgcse-after-reload \
73					-funswitch-loops -funroll-loops
74
75noinst_PROGRAMS += sbc/sbcinfo sbc/sbcdec sbc/sbcenc
76
77sbc_sbcdec_SOURCES = sbc/sbcdec.c sbc/formats.h
78sbc_sbcdec_LDADD = sbc/libsbc.la
79
80sbc_sbcenc_SOURCES = sbc/sbcenc.c sbc/formats.h
81sbc_sbcenc_LDADD = sbc/libsbc.la
82
83if SNDFILE
84noinst_PROGRAMS += sbc/sbctester
85
86sbc_sbctester_LDADD = @SNDFILE_LIBS@ -lm
87sbc_sbctest_CFLAGS = @SNDFILE_CFLAGS@
88endif
89endif
90
91attrib_sources = attrib/att.h attrib/att.c attrib/gatt.h attrib/gatt.c \
92		attrib/gattrib.h attrib/gattrib.c attrib/client.h \
93		attrib/client.c
94
95gdbus_sources = gdbus/gdbus.h gdbus/mainloop.c gdbus/watch.c \
96					gdbus/object.c gdbus/polkit.c
97
98btio_sources = btio/btio.h btio/btio.c
99
100builtin_modules =
101builtin_sources =
102builtin_nodist =
103mcap_sources =
104
105if MCAP
106mcap_sources += health/mcap_lib.h health/mcap_internal.h \
107		health/mcap.h health/mcap.c \
108		health/mcap_sync.c
109endif
110
111if PNATPLUGIN
112builtin_modules += pnat
113builtin_sources += plugins/pnat.c
114endif
115
116if ECHOPLUGIN
117builtin_modules += echo
118builtin_sources += plugins/echo.c
119endif
120
121if AUDIOPLUGIN
122builtin_modules += audio
123builtin_sources += audio/main.c \
124			audio/manager.h audio/manager.c \
125			audio/gateway.h audio/gateway.c \
126			audio/headset.h audio/headset.c \
127			audio/control.h audio/control.c \
128			audio/device.h audio/device.c \
129			audio/source.h audio/source.c \
130			audio/sink.h audio/sink.c \
131			audio/a2dp.h audio/a2dp.c \
132			audio/avdtp.h audio/avdtp.c \
133			audio/ipc.h audio/ipc.c \
134			audio/unix.h audio/unix.c \
135			audio/media.h audio/media.c \
136			audio/transport.h audio/transport.c \
137			audio/telephony.h audio/a2dp-codecs.h
138builtin_nodist += audio/telephony.c
139
140noinst_LIBRARIES = audio/libtelephony.a
141
142audio_libtelephony_a_SOURCES = audio/telephony.h audio/telephony-dummy.c \
143				audio/telephony-maemo5.c audio/telephony-ofono.c \
144				audio/telephony-maemo6.c
145endif
146
147if SAPPLUGIN
148builtin_modules += sap
149builtin_sources += sap/main.c \
150			sap/manager.h sap/manager.c \
151			sap/server.h sap/server.c \
152			sap/sap.h
153
154builtin_nodist += sap/sap.c
155
156noinst_LIBRARIES = sap/libsap.a
157
158sap_libsap_a_SOURCES = sap/sap.h sap/sap-dummy.c
159endif
160
161if INPUTPLUGIN
162builtin_modules += input
163builtin_sources += input/main.c \
164			input/manager.h input/manager.c \
165			input/server.h input/server.c \
166			input/device.h input/device.c \
167			input/fakehid.c input/fakehid.h
168endif
169
170if SERIALPLUGIN
171builtin_modules += serial
172builtin_sources += serial/main.c \
173			serial/manager.h serial/manager.c \
174			serial/proxy.h serial/proxy.c \
175			serial/port.h serial/port.c
176endif
177
178if NETWORKPLUGIN
179builtin_modules += network
180builtin_sources += network/main.c \
181			network/manager.h network/manager.c \
182			network/common.h network/common.c \
183			network/server.h network/server.c \
184			network/connection.h network/connection.c
185endif
186
187if SERVICEPLUGIN
188builtin_modules += service
189builtin_sources += plugins/service.c
190endif
191
192if GATT_EXAMPLE_PLUGIN
193builtin_modules += gatt_example
194builtin_sources += plugins/gatt-example.c
195endif
196
197if HEALTHPLUGIN
198builtin_modules += health
199builtin_sources += health/hdp_main.c health/hdp_types.h \
200			health/hdp_manager.h health/hdp_manager.c \
201			health/hdp.h health/hdp.c \
202			health/hdp_util.h health/hdp_util.c
203endif
204
205builtin_modules += hciops mgmtops
206builtin_sources += plugins/hciops.c plugins/mgmtops.c
207
208if HAL
209builtin_modules += hal
210builtin_sources += plugins/hal.c
211else
212builtin_modules += formfactor
213builtin_sources += plugins/formfactor.c
214endif
215
216EXTRA_DIST += plugins/hal.c plugins/formfactor.c
217
218builtin_modules += storage
219builtin_sources += plugins/storage.c
220
221if MAEMO6PLUGIN
222builtin_modules += maemo6
223builtin_sources += plugins/maemo6.c
224endif
225
226if DBUSOOBPLUGIN
227builtin_modules += dbusoob
228builtin_sources += plugins/dbusoob.c
229endif
230
231sbin_PROGRAMS += src/bluetoothd
232
233src_bluetoothd_SOURCES = $(gdbus_sources) $(builtin_sources) \
234			$(attrib_sources) $(btio_sources) \
235			$(mcap_sources) src/bluetooth.ver \
236			src/main.c src/log.h src/log.c \
237			src/rfkill.c src/hcid.h src/sdpd.h \
238			src/sdpd-server.c src/sdpd-request.c \
239			src/sdpd-service.c src/sdpd-database.c \
240			src/attrib-server.h src/attrib-server.c \
241			src/sdp-xml.h src/sdp-xml.c \
242			src/textfile.h src/textfile.c \
243			src/glib-helper.h src/glib-helper.c \
244			src/oui.h src/oui.c src/uinput.h src/ppoll.h \
245			src/plugin.h src/plugin.c \
246			src/storage.h src/storage.c \
247			src/agent.h src/agent.c \
248			src/error.h src/error.c \
249			src/manager.h src/manager.c \
250			src/adapter.h src/adapter.c \
251			src/device.h src/device.c \
252			src/dbus-common.c src/dbus-common.h \
253			src/event.h src/event.c \
254			src/oob.h src/oob.c src/eir.h src/eir.c
255src_bluetoothd_LDADD = lib/libbluetooth.la @GLIB_LIBS@ @DBUS_LIBS@ \
256							@CAPNG_LIBS@ -ldl -lrt
257src_bluetoothd_LDFLAGS = -Wl,--export-dynamic \
258				-Wl,--version-script=$(srcdir)/src/bluetooth.ver
259
260src_bluetoothd_DEPENDENCIES = lib/libbluetooth.la
261
262builtin_files = src/builtin.h $(builtin_nodist)
263
264nodist_src_bluetoothd_SOURCES = $(builtin_files)
265
266CLEANFILES += $(builtin_files)
267
268man_MANS = src/bluetoothd.8
269
270if CONFIGFILES
271conf_DATA += src/main.conf
272endif
273
274EXTRA_DIST += src/genbuiltin src/bluetooth.conf \
275			src/main.conf network/network.conf \
276			input/input.conf serial/serial.conf \
277			audio/audio.conf audio/telephony-dummy.c \
278			audio/telephony-maemo5.c audio/telephony-ofono.c \
279			audio/telephony-maemo6.c sap/sap-dummy.c
280
281
282if ALSA
283alsadir = $(libdir)/alsa-lib
284
285alsa_LTLIBRARIES = audio/libasound_module_pcm_bluetooth.la \
286				audio/libasound_module_ctl_bluetooth.la
287
288audio_libasound_module_pcm_bluetooth_la_SOURCES = audio/pcm_bluetooth.c \
289					audio/rtp.h audio/ipc.h audio/ipc.c
290audio_libasound_module_pcm_bluetooth_la_LDFLAGS = -module -avoid-version #-export-symbols-regex [_]*snd_pcm_.*
291audio_libasound_module_pcm_bluetooth_la_LIBADD = sbc/libsbc.la \
292						lib/libbluetooth.la @ALSA_LIBS@
293audio_libasound_module_pcm_bluetooth_la_CFLAGS = @ALSA_CFLAGS@
294
295audio_libasound_module_ctl_bluetooth_la_SOURCES = audio/ctl_bluetooth.c \
296					audio/rtp.h audio/ipc.h audio/ipc.c
297audio_libasound_module_ctl_bluetooth_la_LDFLAGS = -module -avoid-version #-export-symbols-regex [_]*snd_ctl_.*
298audio_libasound_module_ctl_bluetooth_la_LIBADD = lib/libbluetooth.la @ALSA_LIBS@
299audio_libasound_module_ctl_bluetooth_la_CFLAGS = @ALSA_CFLAGS@
300
301if CONFIGFILES
302alsaconfdir = $(datadir)/alsa
303
304alsaconf_DATA = audio/bluetooth.conf
305endif
306endif
307
308if AUDIOPLUGIN
309if GSTREAMER
310gstreamerdir = $(libdir)/gstreamer-0.10
311
312gstreamer_LTLIBRARIES = audio/libgstbluetooth.la
313
314audio_libgstbluetooth_la_SOURCES = audio/gstbluetooth.c audio/gstpragma.h \
315				audio/gstsbcenc.h audio/gstsbcenc.c \
316				audio/gstsbcdec.h audio/gstsbcdec.c \
317				audio/gstsbcparse.h audio/gstsbcparse.c \
318				audio/gstavdtpsink.h audio/gstavdtpsink.c \
319				audio/gsta2dpsink.h audio/gsta2dpsink.c \
320				audio/gstsbcutil.h audio/gstsbcutil.c \
321				audio/gstrtpsbcpay.h audio/gstrtpsbcpay.c \
322				audio/rtp.h audio/ipc.h audio/ipc.c
323audio_libgstbluetooth_la_LDFLAGS = -module -avoid-version
324audio_libgstbluetooth_la_LIBADD = sbc/libsbc.la lib/libbluetooth.la \
325				@DBUS_LIBS@ @GSTREAMER_LIBS@ -lgstaudio-0.10 -lgstrtp-0.10
326audio_libgstbluetooth_la_CFLAGS = -fvisibility=hidden -fno-strict-aliasing \
327						$(AM_CFLAGS) @DBUS_CFLAGS@ @GSTREAMER_CFLAGS@
328endif
329endif
330
331EXTRA_DIST += audio/bluetooth.conf
332
333
334include Makefile.tools
335
336if UDEVRULES
337rulesdir = @UDEV_DIR@/rules.d
338
339udev_files = scripts/bluetooth.rules
340
341if HID2HCI
342udev_files += scripts/bluetooth-hid2hci.rules
343endif
344
345if PCMCIA
346udev_files += scripts/bluetooth-serial.rules
347endif
348
349rules_DATA = $(foreach file,$(udev_files), scripts/97-$(notdir $(file)))
350endif
351
352CLEANFILES += $(rules_DATA)
353
354EXTRA_DIST += scripts/bluetooth.rules \
355		scripts/bluetooth-hid2hci.rules scripts/bluetooth-serial.rules
356
357if PCMCIA
358udevdir = $(libexecdir)/udev
359
360dist_udev_SCRIPTS = scripts/bluetooth_serial
361endif
362
363EXTRA_DIST += doc/manager-api.txt \
364		doc/adapter-api.txt doc/device-api.txt \
365		doc/service-api.txt doc/agent-api.txt doc/attribute-api.txt \
366		doc/serial-api.txt doc/network-api.txt \
367		doc/input-api.txt doc/audio-api.txt doc/control-api.txt \
368		doc/hfp-api.txt doc/health-api.txt doc/sap-api.txt \
369		doc/media-api.txt doc/assigned-numbers.txt
370
371AM_YFLAGS = -d
372
373AM_CFLAGS = @DBUS_CFLAGS@ @GLIB_CFLAGS@ @CAPNG_CFLAGS@ \
374		-DBLUETOOTH_PLUGIN_BUILTIN -DPLUGINDIR=\""$(plugindir)"\"
375
376INCLUDES = -I$(builddir)/lib -I$(builddir)/src -I$(srcdir)/src \
377			-I$(srcdir)/audio -I$(srcdir)/sbc -I$(srcdir)/gdbus \
378			-I$(srcdir)/attrib -I$(srcdir)/btio
379
380if MCAP
381INCLUDES += -I$(builddir)/health
382endif
383
384pkgconfigdir = $(libdir)/pkgconfig
385
386pkgconfig_DATA = bluez.pc
387
388DISTCHECK_CONFIGURE_FLAGS = --disable-udevrules
389
390DISTCLEANFILES = $(pkgconfig_DATA)
391
392MAINTAINERCLEANFILES = Makefile.in \
393	aclocal.m4 configure config.h.in config.sub config.guess \
394	ltmain.sh depcomp compile missing install-sh mkinstalldirs ylwrap
395
396src/plugin.$(OBJEXT): src/builtin.h
397
398src/builtin.h: src/genbuiltin $(builtin_sources)
399	$(AM_V_GEN)$(srcdir)/src/genbuiltin $(builtin_modules) > $@
400
401audio/telephony.c: audio/@TELEPHONY_DRIVER@
402	$(AM_V_GEN)$(LN_S) $(abs_top_srcdir)/$< $@
403
404sap/sap.c: sap/@SAP_DRIVER@
405	$(AM_V_GEN)$(LN_S) $(abs_top_srcdir)/$< $@
406
407scripts/%.rules:
408	$(AM_V_GEN)cp $(subst 97-,,$@) $@
409
410$(lib_libbluetooth_la_OBJECTS): $(local_headers)
411
412lib/bluetooth/%.h: lib/%.h
413	$(AM_V_at)$(MKDIR_P) lib/bluetooth
414	$(AM_V_GEN)$(LN_S) $(abs_top_srcdir)/$< $@
415
416clean-local:
417	$(RM) -r lib/bluetooth
418