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