
plugin_cflags = -Wall -Werror -fvisibility=hidden \
					-I$(srcdir)/gdbus @DBUS_CFLAGS@ \
					@GLIB_CFLAGS@ @SSL_ROOTS_CFLAGS@
plugin_ldflags = -no-undefined -module -avoid-version


if DEFAULT_PKCS11
builtin_cflags += -DDEFAULT_PKCS11=\"@DEFAULT_PKCS11@\"
plugin_cflags += -DDEFAULT_PKCS11=\"@DEFAULT_PKCS11@\"
endif

if LOOPBACK
if LOOPBACK_BUILTIN
builtin_modules += loopback
builtin_sources += plugins/loopback.c
else
plugin_LTLIBRARIES += plugins/loopback.la
plugin_objects += $(plugins_loopback_la_OBJECTS)
plugins_loopback_la_CFLAGS = $(plugin_cflags)
plugins_loopback_la_LDFLAGS = $(plugin_ldflags)
endif
endif

if ETHERNET
if ETHERNET_BUILTIN
builtin_modules += ethernet
builtin_sources += plugins/ethernet.c
else
plugin_LTLIBRARIES += plugins/ethernet.la
plugin_objects += $(plugins_ethernet_la_OBJECTS)
plugins_ethernet_la_CFLAGS = $(plugin_cflags)
plugins_ethernet_la_LDFLAGS = $(plugin_ldflags)
endif
endif

if NEWWIFI
if NEWWIFI_BUILTIN
builtin_modules += newwifi
builtin_sources += plugins/newwifi.c
else
plugin_LTLIBRARIES += plugins/newwifi.la
plugin_objects += $(plugins_newwifi_la_OBJECTS)
plugins_newwifi_la_SOURCES = plugins/newwifi.c
plugins_newwifi_la_CFLAGS = $(plugin_cflags) -DSCRIPTDIR=\""$(build_scriptdir)"\"
plugins_newwifi_la_LDFLAGS = $(plugin_ldflags)
endif
endif

if NSS
if NSS_BUILTIN
builtin_modules += nss
builtin_sources += plugins/nss.c
else
plugin_LTLIBRARIES += plugins/nss.la
plugin_objects += $(plugins_nss_la_OBJECTS)
plugins_nss_la_SOURCES = plugins/nss.c
plugins_nss_la_CFLAGS = $(plugin_cflags) -DSCRIPTDIR=\""$(build_scriptdir)"\"
plugins_nss_la_LDFLAGS = $(plugin_ldflags)
endif
endif


if BLUETOOTH
if BLUETOOTH_BUILTIN
builtin_modules += bluetooth
builtin_sources += plugins/bluetooth.c
else
plugin_LTLIBRARIES += plugins/bluetooth.la
plugin_objects += $(plugins_bluetooth_la_OBJECTS)
plugins_bluetooth_la_CFLAGS = $(plugin_cflags)
plugins_bluetooth_la_LDFLAGS = $(plugin_ldflags)
endif
endif

if MODEMMGR
if MODEMMGR_BUILTIN
builtin_modules += modemmgr
builtin_sources += plugins/modemmgr.c
builtin_cflags += -DPROVIDERDB=\"$(datadir)/@PROVIDERDB@\"
builtin_libadd += -lmobile-provider
else
plugin_LTLIBRARIES += plugins/modemmgr.la
plugin_objects += $(plugins_modemmgr_la_OBJECTS)
plugins_modemmgr_la_SOURCES = plugins/modemmgr.c
plugins_modemmgr_la_CFLAGS = $(plugin_cflags) \
			     -DPROVIDERDB=\"$(datadir)/@PROVIDERDB@\"
plugins_modemmgr_la_LDFLAGS = $(plugin_ldflags)
plugins_modemmgr_la_LIBADD = -lmobile-provider
endif
script_PROGRAMS += scripts/set_apn_helper
scripts_set_apn_helper_LDADD = @DBUS_LIBS@
endif

if DHCPCD
if DHCPCD_BUILTIN
builtin_modules += dhcpcd
builtin_sources += plugins/dhcpcd.c
builtin_cflags += -DDHCPCD=\"@DHCPCD@\"
else
plugin_LTLIBRARIES += plugins/dhcpcd.la
plugin_objects += $(plugins_dhcpcd_la_OBJECTS)
plugins_dhcpcd_la_CFLAGS = $(plugin_cflags) -DDHCPCD=\"@DHCPCD@\" \
					-DSTATEDIR=\""$(statedir)"\" \
					-DSCRIPTDIR=\""$(build_scriptdir)"\"
plugins_dhcpcd_la_LDFLAGS = $(plugin_ldflags)
endif
endif

if BOOTSTAT
if BOOTSTAT_BUILTIN
builtin_modules += bootstat
builtin_sources += plugins/bootstat.c
builtin_cflags +=
builtin_libadd += -lbootstat
else
plugin_LTLIBRARIES += plugins/bootstat.la
plugin_objects += $(plugins_bootstat_la_OBJECTS)
plugins_bootstat_la_CFLAGS = $(plugin_cflags)
plugins_bootstat_la_LIBADD = -lbootstat
plugins_bootstat_la_LDFLAGS = $(plugin_ldflags) -lbootstat
endif
endif

if CROSMETRICS
if CROSMETRICS_BUILTIN
builtin_modules += crosmetrics
builtin_sources += plugins/crosmetrics.c
builtin_cflags +=
builtin_libadd += -lmetrics
else
plugin_LTLIBRARIES += plugins/crosmetrics.la
plugin_objects += $(plugins_crosmetrics_la_OBJECTS)
plugins_crosmetrics_la_CFLAGS = $(plugin_cflags)
plugins_crosmetrics_la_LIBADD = -lmetrics
plugins_crosmetrics_la_LDFLAGS = $(plugin_ldflags) -lmetrics
endif
endif

if OPENVPN
if OPENVPN_BUILTIN
builtin_modules += openvpn
builtin_sources += plugins/openvpn.c
builtin_cflags += -DOPENVPN=\"@OPENVPN@\"
else
plugin_LTLIBRARIES += plugins/openvpn.la
plugin_objects += $(plugins_openvpn_la_OBJECTS)
plugins_openvpn_la_SOURCES = plugins/vpn.h plugins/vpn.c plugins/openvpn.c
plugins_openvpn_la_CFLAGS = $(plugin_cflags) -DOPENVPN=\"@OPENVPN@\" \
					-DSTATEDIR=\""$(statedir)"\" \
					-DSCRIPTDIR=\""$(build_scriptdir)"\"
plugins_openvpn_la_LDFLAGS = $(plugin_ldflags)
endif
endif

if L2TPIPSEC
if L2TPIPSEC_BUILTIN
builtin_modules += l2tpipsec
builtin_sources += plugins/l2tpipsec.c
builtin_cflags += -DL2TPIPSEC=\"@L2TPIPSEC@\"
else
plugin_LTLIBRARIES += plugins/l2tpipsec.la
plugin_objects += $(plugins_l2tpipsec_la_OBJECTS)
plugins_l2tpipsec_la_SOURCES = plugins/vpn.h plugins/vpn.c plugins/l2tipsec.c
plugins_l2tpipsec_la_CFLAGS = $(plugin_cflags) -DL2TPIPSEC=\"@L2TPIPSEC@\" \
					-DSTATEDIR=\""$(statedir)"\" \
					-DSCRIPTDIR=\""$(build_scriptdir)"\"
plugins_l2tpipsec_la_LDFLAGS = $(plugin_ldflags)
endif
endif

if L2TPIPSEC_BUILTIN
builtin_sources += plugins/vpn.h plugins/vpn.c
else
if OPENVPN_BUILTIN
builtin_sources += plugins/vpn.h plugins/vpn.c
endif
endif

if PPPD
if PPPD_BUILTIN
builtin_modules += pppd
builtin_sources += plugins/pppd.c
builtin_cflags += -DPPPD=\"@PPPD@\"
else
plugin_LTLIBRARIES += plugins/pppd.la
plugin_objects += $(plugins_pppd_la_OBJECTS)
plugins_pppd_la_CFLAGS = $(plugin_cflags) -DPPPD=\"@PPPD@\"
plugins_pppd_la_LDFLAGS = $(plugin_ldflags)
endif
endif

if RESOLVCONF
if RESOLVCONF_BUILTIN
builtin_modules += resolvconf
builtin_sources += plugins/resolvconf.c
builtin_cflags += -DRESOLVCONF=\"@RESOLVCONF@\"
else
plugin_LTLIBRARIES += plugins/resolvconf.la
plugin_objects += $(plugins_resolvconf_la_OBJECTS)
plugins_resolvconf_la_CFLAGS = $(plugin_cflags) -DRESOLVCONF=\"@RESOLVCONF@\"
plugins_resolvconf_la_LDFLAGS = $(plugin_ldflags)
endif
endif

if DNSPROXY
if DNSPROXY_BUILTIN
builtin_modules += dnsproxy
builtin_sources += plugins/dnsproxy.c
else
plugin_LTLIBRARIES += plugins/dnsproxy.la
plugin_objects += $(plugins_dnsproxy_la_OBJECTS)
plugins_dnsproxy_la_CFLAGS = $(plugin_cflags)
plugins_dnsproxy_la_LDFLAGS = $(plugin_ldflags)
endif
endif

if RESOLVFILES
if RESOLVFILES_BUILTIN
builtin_modules += resolvfiles
builtin_sources += plugins/resolvfiles.c
else
plugin_LTLIBRARIES += plugins/resolvfiles.la
plugin_objects += $(plugins_resolvfiles_la_OBJECTS)
plugins_resolvfiles_la_CFLAGS = $(plugin_cflags)
plugins_resolvfiles_la_LDFLAGS = $(plugin_ldflags)
endif
endif

if POLKIT
if POLKIT_BUILTIN
builtin_modules += polkit
builtin_sources += plugins/polkit.c
builtin_libadd += @POLKIT_LIBS@
builtin_cflags += @POLKIT_CFLAGS@
else
plugin_LTLIBRARIES += plugins/polkit.la
plugin_objects += $(plugins_polkit_la_OBJECTS)
plugins_polkit_la_CFLAGS = $(plugin_cflags) @POLKIT_CFLAGS@
plugins_polkit_la_LIBADD = @POLKIT_LIBS@ @GLIB_LIBS@
plugins_polkit_la_LDFLAGS = $(plugin_ldflags)
endif

if DATAFILES
policydir = @POLKIT_DATADIR@

policy_DATA = plugins/flimflam.policy
endif
endif


if IWMX
plugin_LTLIBRARIES += plugins/iwmxsdk.la
plugin_objects += $(plugins_iwmxsdk_la_OBJECTS)
plugins_iwmxsdk_la_SOURCES = plugins/iwmx.h plugins/iwmx.c plugins/iwmxsdk.c
plugins_iwmxsdk_la_CFLAGS = $(plugin_cflags) @IWMXSDK_CFLAGS@
plugins_iwmxsdk_la_LIBADD = @IWMXSDK_LIBS@ @GLIB_LIBS@
plugins_iwmxsdk_la_LDFLAGS = $(plugin_ldflags)
endif

if FAKE
plugin_LTLIBRARIES += plugins/fake.la
plugin_objects += $(plugins_fake_la_OBJECTS)
plugins_fake_la_CFLAGS = $(plugin_cflags)
plugins_fake_la_LDFLAGS = $(plugin_ldflags)
endif

if ROT47
if ROT47_BUILTIN
builtin_modules += crypto_rot47
builtin_sources += plugins/crypto_rot47.c
else
plugin_LTLIBRARIES += plugins/crypto_rot47.la
plugin_objects += $(plugins_rot47_la_OBJECTS)
plugins_crypto_rot47_la_CFLAGS = $(plugin_cflags)
plugins_crypto_rot47_la_LDFLAGS = $(plugin_ldflags)
endif
endif

if DESCBC
if DESCBC_BUILTIN
builtin_modules += crypto_descbc
builtin_sources += plugins/crypto_descbc.c
else
plugin_LTLIBRARIES += plugins/crypto_descbc.la
plugin_objects += $(plugins_descbc_la_OBJECTS)
plugins_crypto_descbc_la_CFLAGS = $(plugin_cflags)
plugins_crypto_descbc_la_LDFLAGS = $(plugin_ldflags)
endif
endif

if HOSTROUTE
if HOSTROUTE_BUILTIN
builtin_modules += hostroute
builtin_sources += plugins/hostroute.c
else
plugin_LTLIBRARIES += plugins/hostroute.la
plugin_objects += $(plugins_hostroute_la_OBJECTS)
plugins_hostroute_la_CFLAGS = $(plugin_cflags)
plugins_hostroute_la_LDFLAGS = $(plugin_ldflags)
endif
endif

if PPPD
script_PROGRAMS += scripts/pppd-script
script_SCRIPTS += scripts/60-flimflam.sh

scripts_pppd_script_LDADD = @DBUS_LIBS@
endif

if L2TPIPSEC
script_LTLIBRARIES += scripts/libppp-plugin.la
scripts_libppp_plugin_la_LIBADD = @DBUS_LIBS@
endif

if NEWWIFI
script_DATA += scripts/wpa_supplicant.conf
endif

if NSS
script_PROGRAMS += scripts/nss-get-cert
scripts_nss_get_cert_CFLAGS = @NSS_CFLAGS@
scripts_nss_get_cert_LDADD = @NSS_LIBS@
endif

if OPENVPN
script_PROGRAMS += scripts/openvpn-script

scripts_openvpn_script_LDADD = @DBUS_LIBS@
endif

EXTRA_DIST += plugins/polkit.policy scripts/dhclient.conf

plugins/flimflam.policy: plugins/polkit.policy
if POLKIT
	$(AM_V_GEN)cp $< $@
endif
