SUBDIRS = gsupclient

AM_CFLAGS = \
	-Wall \
	$(LIBOSMOCORE_CFLAGS) \
	$(LIBOSMOGSM_CFLAGS) \
	$(LIBOSMOVTY_CFLAGS) \
	$(LIBOSMOCTRL_CFLAGS) \
	$(LIBOSMOABIS_CFLAGS) \
	$(SQLITE3_CFLAGS) \
	$(NULL)

AM_CPPFLAGS = -I$(top_srcdir)/include \
	-I$(top_builddir)/include \
	$(NULL)

EXTRA_DIST = \
	populate_hlr_db.pl \
	db_sql2c.sed \
	$(NULL)

BUILT_SOURCES = \
	db_bootstrap.h \
	$(NULL)
CLEANFILES = $(BUILT_SOURCES)

noinst_HEADERS = \
	db_bootstrap.h \
	$(NULL)

bin_PROGRAMS = \
	osmo-hlr \
	osmo-hlr-db-tool \
	osmo-euse-demo \
	$(NULL)

osmo_hlr_SOURCES = \
	auc.c \
	ctrl.c \
	db.c \
	luop.c \
	db_auc.c \
	db_hlr.c \
	gsup_router.c \
	gsup_server.c \
	hlr.c \
	logging.c \
	rand_urandom.c \
	hlr_vty.c \
	hlr_vty_subscr.c \
	gsup_send.c \
	hlr_ussd.c \
	$(NULL)

osmo_hlr_LDADD = \
	$(LIBOSMOCORE_LIBS) \
	$(LIBOSMOGSM_LIBS) \
	$(LIBOSMOVTY_LIBS) \
	$(LIBOSMOCTRL_LIBS) \
	$(LIBOSMOABIS_LIBS) \
	$(SQLITE3_LIBS) \
	$(NULL)

osmo_hlr_db_tool_SOURCES = \
	hlr_db_tool.c \
	db.c \
	db_hlr.c \
	logging.c \
	rand_urandom.c \
	dbd_decode_binary.c \
	$(NULL)

osmo_hlr_db_tool_LDADD = \
	$(LIBOSMOCORE_LIBS) \
	$(LIBOSMOGSM_LIBS) \
	$(SQLITE3_LIBS) \
	$(NULL)

osmo_euse_demo_SOURCES = \
	osmo-euse-demo.c \
	$(NULL)

osmo_euse_demo_LDADD = \
	$(top_builddir)/src/gsupclient/libosmo-gsup-client.la \
	$(LIBOSMOCORE_LIBS) \
	$(LIBOSMOGSM_LIBS) \
	$(NULL)

if DB_SQLITE_DEBUG
osmo_hlr_SOURCES += db_debug.c
osmo_hlr_db_tool_SOURCES += db_debug.c
endif

BOOTSTRAP_SQL = $(top_srcdir)/sql/hlr.sql

db_bootstrap.h: $(BOOTSTRAP_SQL) $(srcdir)/db_sql2c.sed
	echo "/* DO NOT EDIT THIS FILE. It is generated from files in osmo-hlr.git/sql/ */" > "$@"
	echo "#pragma once" >> "$@"
	echo "static const char *stmt_bootstrap_sql[] = {" >> "$@"
	cat "$(BOOTSTRAP_SQL)" \
		| sed -f "$(srcdir)/db_sql2c.sed" \
		>> "$@"
	echo "};" >> "$@"
