plugin_LTLIBRARIES =
+builtin_modules =
+builtin_sources =
+
if LOOPBACK
plugin_LTLIBRARIES += loopback.la
-
-loopback_la_SOURCES = loopback.c
endif
if ETHERNET
wifi_la_LIBADD = @GDBUS_LIBS@
endif
-if WIMAX
-plugin_LTLIBRARIES += wimax.la
-
-wimax_la_SOURCES = wimax.c
-endif
-
if BLUETOOTH
plugin_LTLIBRARIES += bluetooth.la
bluetooth_la_LIBADD = @GDBUS_LIBS@
endif
+if MODEMMGR
+plugin_LTLIBRARIES += modemmgr.la
+
+modemmgr_la_LIBADD = @GDBUS_LIBS@
+endif
+
if NOVATEL
plugin_LTLIBRARIES += novatel.la
plugin_LTLIBRARIES += udhcp.la
udhcp_la_SOURCES = udhcp.c inet.h inet.c task.h task.c
-udhcp_la_CFLAGS = @GLIB_CFLAGS@ @GDBUS_CFLAGS@ -DUDHCPC=\"@UDHCPC@\" \
+udhcp_la_CFLAGS = $(AM_CFLAGS) -DUDHCPC=\"@UDHCPC@\" \
-DSTATEDIR=\""$(statedir)"\" -DSCRIPTDIR=\""$(scriptdir)"\"
endif
plugin_LTLIBRARIES += dhclient.la
dhclient_la_SOURCES = dhclient.c inet.h inet.c
-dhclient_la_CFLAGS = @GLIB_CFLAGS@ @GDBUS_CFLAGS@ -DDHCLIENT=\"@DHCLIENT@\" \
+dhclient_la_CFLAGS = $(AM_CFLAGS) -DDHCLIENT=\"@DHCLIENT@\" \
-DSTATEDIR=\""$(statedir)"\" -DSCRIPTDIR=\""$(scriptdir)"\"
endif
if PPPD
plugin_LTLIBRARIES += pppd.la
-pppd_la_SOURCES = pppd.c
-pppd_la_CFLAGS = @GLIB_CFLAGS@ -DPPPD=\"@PPPD@\"
+pppd_la_CFLAGS = $(AM_CFLAGS) -DPPPD=\"@PPPD@\"
endif
if RESOLVCONF
plugin_LTLIBRARIES += resolvconf.la
-resolvconf_la_SOURCES = resolvconf.c
-resolvconf_la_CFLAGS = @GLIB_CFLAGS@ -DRESOLVCONF=\"@RESOLVCONF@\"
+resolvconf_la_CFLAGS = $(AM_CFLAGS) -DRESOLVCONF=\"@RESOLVCONF@\"
endif
if DNSPROXY
plugin_LTLIBRARIES += dnsproxy.la
-
-dnsproxy_la_SOURCES = dnsproxy.c
endif
if POLKIT
plugin_LTLIBRARIES += polkit.la
-polkit_la_SOURCES = polkit.c
polkit_la_LIBADD = @POLKIT_LIBS@ @GLIB_LIBS@
-polkit_la_CFLAGS = @GLIB_CFLAGS@ @POLKIT_CFLAGS@
+polkit_la_CFLAGS = $(AM_CFLAGS) @POLKIT_CFLAGS@
-policydir = $(datadir)/PolicyKit/policy
+if DATAFILES
+policydir = @POLKIT_DATADIR@
policy_DATA = connman.policy
endif
+endif
+
+if IOSPM
+plugin_LTLIBRARIES += iospm.la
+endif
+
+if IWMXSDK
+plugin_LTLIBRARIES += iwmxsdk.la
+
+iwmxsdk_la_SOURCES = iwmxsdk.c inet.h inet.c
+iwmxsdk_la_LIBADD = @IWMXSDK_LIBS@ @GLIB_LIBS@
+iwmxsdk_la_CFLAGS = $(AM_CFLAGS) @IWMXSDK_CFLAGS@
+endif
if FAKE
plugin_LTLIBRARIES += fake.la
-
-fake_la_SOURCES = fake.c
endif
-AM_LDFLAGS = -no-undefined -module -avoid-version \
- -export-symbols-regex connman_plugin_desc
+noinst_LTLIBRARIES = libbuiltin.la
+
+libbuiltin_la_SOURCES = $(builtin_sources)
+libbuiltin_la_LDFLAGS =
+libbuiltin_la_CFLAGS = $(AM_CFLAGS) -DCONNMAN_PLUGIN_BUILTIN
+
+BUILT_SOURCES = builtin.h
+
+nodist_libbuiltin_la_SOURCES = $(BUILT_SOURCES)
+
+AM_LDFLAGS = -no-undefined -module -avoid-version
statedir = $(localstatedir)/run/connman
scriptdir = $(libdir)/connman/scripts
endif
-AM_CFLAGS = @GLIB_CFLAGS@ @GDBUS_CFLAGS@
+AM_CFLAGS = -fvisibility=hidden @GLIB_CFLAGS@ @GDBUS_CFLAGS@
INCLUDES = -I$(top_builddir)/include
-EXTRA_DIST = connman.policy
+CLEANFILES = $(BUILT_SOURCES) connman.policy
+
+EXTRA_DIST = polkit.policy
MAINTAINERCLEANFILES = Makefile.in
+
+builtin.h:
+ echo "" > $@
+ list='$(builtin_modules)'; for i in $$list; \
+ do echo "extern struct connman_plugin_desc __connman_builtin_$$i;" > $@; done
+ echo "static struct connman_plugin_desc *__connman_builtin[] = {" >> $@
+ list='$(builtin_modules)'; for i in $$list; \
+ do echo "&__connman_builtin_$$i," >> $@; done
+ echo "NULL };" >> $@
+
+connman.policy: polkit.policy
+ cp $< $@