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

AM_CFLAGS = \
	-Wall \
	-fno-strict-aliasing \
	$(LIBOSMOCORE_CFLAGS) \
	$(LIBOSMOGSM_CFLAGS) \
	$(LIBOSMOVTY_CFLAGS) \
	$(LIBOSMOCTRL_CFLAGS) \
	$(LIBOSMOABIS_CFLAGS) \
	$(LIBOSMOGB_CFLAGS) \
	$(COVERAGE_CFLAGS) \
	$(LIBCARES_CFLAGS) \
	$(LIBGTP_CFLAGS) \
	$(NULL)
if BUILD_IU
AM_CFLAGS += \
	$(LIBASN1C_CFLAGS) \
	$(LIBOSMOSIGTRAN_CFLAGS) \
	$(LIBOSMORANAP_CFLAGS) \
	$(NULL)
endif

OSMO_LIBS = \
	$(LIBOSMOCORE_LIBS) \
	$(LIBOSMOGSM_LIBS) \
	$(LIBOSMOVTY_LIBS) \
	$(LIBOSMOCTRL_LIBS) \
	$(LIBOSMOGB_LIBS) \
	$(LIBGTP_LIBS) \
	$(NULL)

bin_PROGRAMS = \
	osmo-gbproxy \
	osmo-sgsn \
	osmo-gtphub \
	$(NULL)

osmo_gbproxy_SOURCES = \
	gb_proxy.c \
	gb_proxy_main.c \
	gb_proxy_vty.c \
	gb_proxy_patch.c \
	gb_proxy_tlli.c \
	gb_proxy_peer.c \
	gprs_gb_parse.c \
	gprs_llc_parse.c \
	crc24.c \
	gprs_utils.c \
	$(NULL)
osmo_gbproxy_LDADD = \
	$(OSMO_LIBS) \
	-lrt \
	$(NULL)

osmo_sgsn_SOURCES = \
	gprs_gmm.c \
	gprs_sgsn.c \
	gprs_sndcp.c \
	gprs_sndcp_comp.c \
	gprs_sndcp_dcomp.c \
	gprs_sndcp_pcomp.c \
	gprs_sndcp_vty.c \
	gprs_sndcp_xid.c \
	sgsn_main.c \
	sgsn_vty.c \
	sgsn_libgtp.c \
	gprs_llc.c \
	gprs_llc_parse.c \
	gprs_llc_vty.c \
	crc24.c \
	sgsn_ctrl.c \
	sgsn_auth.c \
	gprs_subscriber.c \
	gprs_utils.c \
	sgsn_cdr.c \
	sgsn_ares.c \
	slhc.c \
	gprs_llc_xid.c \
	v42bis.c \
	gsup_client.c \
	oap_client.c \
	$(NULL)
osmo_sgsn_LDADD = \
	$(OSMO_LIBS) \
	$(LIBOSMOABIS_LIBS) \
	$(LIBCARES_LIBS) \
	$(LIBGTP_LIBS) \
	-lrt \
	-lm \
	$(NULL)
if BUILD_IU
osmo_sgsn_LDADD += \
	$(LIBOSMOSIGTRAN_LIBS) \
	$(LIBOSMORANAP_LIBS) \
	$(LIBASN1C_LIBS) \
	$(NULL)
endif

osmo_gtphub_SOURCES = \
	gtphub_main.c \
	gtphub.c \
	gtphub_sock.c \
	gtphub_ares.c \
	gtphub_vty.c \
	sgsn_ares.c \
	gprs_utils.c \
	$(NULL)
osmo_gtphub_LDADD = \
	$(LIBOSMOCORE_LIBS) \
	$(LIBOSMOGSM_LIBS) \
	$(LIBOSMOVTY_LIBS) \
	$(LIBCARES_LIBS) \
	$(LIBGTP_LIBS) \
	$(LIBOSMOSIGTRAN_LIBS) \
	-lrt \
	$(NULL)
