if TOOLS
if CONFIGFILES
conf_DATA += tools/rfcomm.conf
endif

bin_PROGRAMS += tools/rfcomm tools/l2ping \
				tools/hcitool tools/sdptool tools/ciptool

sbin_PROGRAMS += tools/hciattach tools/hciconfig

noinst_PROGRAMS += tools/avinfo tools/ppporc \
				tools/hcieventmask tools/hcisecfilter

tools/kword.c: tools/parser.h

tools_rfcomm_SOURCES = tools/rfcomm.c tools/parser.y tools/lexer.l \
					tools/kword.h tools/kword.c
EXTRA_tools_rfcomm_SOURCES = tools/parser.h tools/parser.c \
							tools/lexer.c
tools_rfcomm_LDADD = lib/libbluetooth.la

tools_l2ping_LDADD = lib/libbluetooth.la

tools_hciattach_SOURCES = tools/hciattach.c tools/hciattach.h \
						tools/hciattach_st.c \
						tools/hciattach_ti.c \
						tools/hciattach_tialt.c \
						tools/hciattach_ath3k.c \
						tools/hciattach_qualcomm.c
tools_hciattach_LDADD = lib/libbluetooth.la

tools_hciconfig_SOURCES = tools/hciconfig.c tools/csr.h tools/csr.c \
						src/textfile.h src/textfile.c
tools_hciconfig_LDADD = lib/libbluetooth.la

tools_hcitool_SOURCES = tools/hcitool.c src/oui.h src/oui.c \
						src/textfile.h src/textfile.c
tools_hcitool_LDADD = lib/libbluetooth.la

tools_sdptool_SOURCES = tools/sdptool.c src/sdp-xml.h src/sdp-xml.c
tools_sdptool_LDADD = lib/libbluetooth.la

tools_ciptool_LDADD = lib/libbluetooth.la

tools_avinfo_LDADD = lib/libbluetooth.la

tools_ppporc_LDADD = lib/libbluetooth.la

tools_hcieventmask_LDADD = lib/libbluetooth.la

if READLINE
bin_PROGRAMS += attrib/gatttool

attrib_gatttool_SOURCES = attrib/gatttool.c attrib/att.c attrib/gatt.c \
				attrib/gattrib.c btio/btio.c \
				attrib/gatttool.h attrib/interactive.c \
				attrib/utils.c
attrib_gatttool_LDADD = lib/libbluetooth.la @GLIB_LIBS@ @READLINE_LIBS@
endif

dist_man_MANS += tools/rfcomm.1 tools/l2ping.8 \
			tools/hciattach.8 tools/hciconfig.8 \
			tools/hcitool.1 tools/sdptool.1 tools/ciptool.1
else
EXTRA_DIST += tools/rfcomm.1 tools/l2ping.8 \
			tools/hciattach.8 tools/hciconfig.8 \
			tools/hcitool.1 tools/sdptool.1 tools/ciptool.1
endif

CLEANFILES += tools/lexer.c tools/parser.c tools/parser.h

EXTRA_DIST += tools/rfcomm.conf

if TRACER
sbin_PROGRAMS += tracer/hcitrace

tracer_hcitrace_SOURCES = tracer/main.c
tracer_hcitrace_LDADD = lib/libbluetooth.la \
				@GLIB_LIBS@ @DBUS_LIBS@ @CAPNG_LIBS@
tracer_hcitrace_DEPENDENCIES = lib/libbluetooth.la
endif

if BCCMD
sbin_PROGRAMS += tools/bccmd

tools_bccmd_SOURCES = tools/bccmd.c tools/csr.h tools/csr.c \
			tools/csr_hci.c tools/csr_h4.c tools/csr_3wire.c \
			tools/csr_bcsp.c tools/ubcsp.h tools/ubcsp.c
tools_bccmd_LDADD = lib/libbluetooth.la

if USB
tools_bccmd_SOURCES += tools/csr_usb.c
tools_bccmd_LDADD += @USB_LIBS@
endif

dist_man_MANS += tools/bccmd.8
else
EXTRA_DIST += tools/bccmd.8
endif

if HID2HCI
udevdir = @UDEV_DIR@

udev_PROGRAMS = tools/hid2hci

tools_hid2hci_LDADD = @USB_LIBS@ @UDEV_LIBS@

dist_man_MANS += tools/hid2hci.8
else
EXTRA_DIST += tools/hid2hci.8
endif

if DFUTOOL
bin_PROGRAMS += tools/dfutool

tools_dfutool_SOURCES = tools/dfutool.c tools/dfu.h tools/dfu.c
tools_dfutool_LDADD = @USB_LIBS@

dist_man_MANS += tools/dfutool.1
else
EXTRA_DIST += tools/dfutool.1
endif


if USB
noinst_PROGRAMS += tools/dfubabel tools/avctrl

tools_dfubabel_LDADD = @USB_LIBS@

tools_avctrl_LDADD = @USB_LIBS@
endif

EXTRA_DIST += tools/dfubabel.1 tools/avctrl.8


if CUPS
cupsdir = $(libdir)/cups/backend

cups_PROGRAMS = cups/bluetooth

cups_bluetooth_SOURCES = $(gdbus_sources) cups/main.c cups/cups.h \
					cups/sdp.c cups/spp.c cups/hcrp.c

cups_bluetooth_LDADD = @GLIB_LIBS@ @DBUS_LIBS@ lib/libbluetooth.la
endif


if TEST
sbin_PROGRAMS += test/hciemu

bin_PROGRAMS += test/l2test test/rctest

noinst_PROGRAMS += test/gaptest test/sdptest test/scotest \
			test/attest test/hstest test/avtest test/ipctest \
					test/lmptest test/bdaddr test/agent \
					test/btiotest test/test-textfile \
					test/uuidtest

test_hciemu_LDADD = @GLIB_LIBS@ lib/libbluetooth.la

test_l2test_LDADD = lib/libbluetooth.la

test_rctest_LDADD = lib/libbluetooth.la

test_gaptest_LDADD = @DBUS_LIBS@

test_sdptest_LDADD = lib/libbluetooth.la

test_scotest_LDADD = lib/libbluetooth.la

test_attest_LDADD = lib/libbluetooth.la

test_hstest_LDADD = lib/libbluetooth.la

test_avtest_LDADD = lib/libbluetooth.la

test_lmptest_LDADD = lib/libbluetooth.la

test_ipctest_SOURCES = test/ipctest.c audio/ipc.h audio/ipc.c
test_ipctest_LDADD= @GLIB_LIBS@ sbc/libsbc.la

test_bdaddr_SOURCES = test/bdaddr.c src/oui.h src/oui.c
test_bdaddr_LDADD = lib/libbluetooth.la

test_agent_LDADD = @DBUS_LIBS@

test_btiotest_SOURCES = test/btiotest.c btio/btio.h btio/btio.c
test_btiotest_LDADD = @GLIB_LIBS@ lib/libbluetooth.la

test_uuidtest_SOURCES = test/uuidtest.c
test_uuidtest_LDADD = lib/libbluetooth.la

test_test_textfile_SOURCES = test/test-textfile.c src/textfile.h src/textfile.c

dist_man_MANS += test/rctest.1 test/hciemu.1

EXTRA_DIST += test/bdaddr.8
else
EXTRA_DIST += test/rctest.1 test/hciemu.1 test/bdaddr.8
endif

EXTRA_DIST += test/apitest test/sap-client test/hsplay test/hsmicro \
		test/dbusdef.py test/monitor-bluetooth test/list-devices \
		test/test-discovery test/test-manager test/test-adapter \
		test/test-device test/test-service test/test-serial \
		test/test-telephony test/test-network test/simple-agent \
		test/simple-service test/simple-endpoint test/test-audio \
		test/test-input test/test-attrib test/test-sap-server \
		test/test-oob test/service-record.dtd test/service-did.xml \
		test/service-spp.xml test/service-opp.xml test/service-ftp.xml


if HIDD
bin_PROGRAMS += compat/hidd

compat_hidd_SOURCES = compat/hidd.c compat/hidd.h src/uinput.h \
				compat/sdp.h compat/sdp.c compat/fakehid.c \
						src/textfile.h src/textfile.c
compat_hidd_LDADD = -lm lib/libbluetooth.la

dist_man_MANS += compat/hidd.1
else
EXTRA_DIST += compat/hidd.1
endif

if PAND
bin_PROGRAMS += compat/pand

compat_pand_SOURCES = compat/pand.c compat/pand.h \
				compat/bnep.c compat/sdp.h compat/sdp.c \
						src/textfile.h src/textfile.c
compat_pand_LDADD = lib/libbluetooth.la

dist_man_MANS += compat/pand.1
else
EXTRA_DIST += compat/pand.1
endif

if DUND
bin_PROGRAMS += compat/dund

compat_dund_SOURCES = compat/dund.c compat/dund.h compat/lib.h \
			compat/sdp.h compat/sdp.c compat/dun.c compat/msdun.c \
						src/textfile.h src/textfile.c
compat_dund_LDADD = lib/libbluetooth.la

dist_man_MANS += compat/dund.1
else
EXTRA_DIST += compat/dund.1
endif