Use simpler way of creating include directory
[platform/upstream/connman.git] / Makefile.am
1
2 AM_MAKEFLAGS = --no-print-directory
3
4 includedir = @includedir@/connman
5
6 include_HEADERS = include/types.h include/log.h include/plugin.h \
7                         include/security.h include/notifier.h \
8                         include/storage.h include/service.h \
9                         include/device.h include/network.h include/inet.h
10
11 nodist_include_HEADERS = include/version.h
12
13 noinst_HEADERS = include/driver.h include/element.h include/property.h \
14                         include/rtnl.h include/wifi.h include/task.h \
15                         include/dbus.h include/rfkill.h include/option.h \
16                         include/resolver.h include/ipconfig.h \
17                         include/profile.h include/provider.h
18
19 local_headers = $(foreach file,$(include_HEADERS) $(nodist_include_HEADERS) \
20                         $(noinst_HEADERS), include/connman/$(notdir $(file)))
21
22
23 gdbus_sources = gdbus/gdbus.h gdbus/mainloop.c gdbus/object.c gdbus/watch.c
24
25 if DATAFILES
26 dbusdir = @DBUS_DATADIR@
27
28 dbus_DATA = src/connman.conf
29 endif
30
31 plugin_LTLIBRARIES =
32
33 plugin_objects =
34
35 builtin_modules =
36 builtin_sources =
37 builtin_libadd =
38 builtin_cflags =
39
40 noinst_PROGRAMS =
41
42 sbin_PROGRAMS = src/connmand
43
44 src_connmand_SOURCES = $(gdbus_sources) $(builtin_sources) \
45                         src/main.c src/connman.h src/log.c src/selftest.c \
46                         src/error.c src/plugin.c src/task.c src/element.c \
47                         src/device.c src/network.c src/connection.c \
48                         src/manager.c src/profile.c src/service.c \
49                         src/agent.c src/notifier.c src/provider.c \
50                         src/security.c src/resolver.c src/ipconfig.c \
51                         src/ipv4.c src/storage.c src/rfkill.c src/rtnl.c \
52                         src/inet.c src/wifi.c src/dbus.c
53
54 if UDEV
55 src_connmand_SOURCES += src/udev.c
56 else
57 src_connmand_SOURCES += src/udev-compat.c
58 endif
59
60 src_connmand_LDADD = $(builtin_libadd) @GLIB_LIBS@ @GTHREAD_LIBS@ \
61                                                 @DBUS_LIBS@ @UDEV_LIBS@ -ldl
62
63 src_connmand_LDFLAGS = -Wl,--export-dynamic -Wl,--version-script=src/connman.ver
64
65 src_connmand_DEPENDENCIES = src/connman.ver
66
67 CLEANFILES = src/connman.ver src/connman.exp src/connman.conf \
68                                                 src/builtin.h $(local_headers)
69
70 statedir = $(localstatedir)/run/connman
71
72 plugindir = $(libdir)/connman/plugins
73
74 scriptdir = $(libdir)/connman/scripts
75
76 storagedir = $(localstatedir)/lib/connman
77
78 if MAINTAINER_MODE
79 build_plugindir = $(abs_top_srcdir)/plugins/.libs
80 build_scriptdir = $(abs_top_srcdir)/scripts
81 else
82 build_plugindir = $(plugindir)
83 build_scriptdir = $(scriptdir)
84 endif
85
86 AM_CFLAGS = @UDEV_CFLAGS@ @NETLINK_CFLAGS@ @DBUS_CFLAGS@ \
87                 @GLIB_CFLAGS@ @GTHREAD_CFLAGS@ $(builtin_cflags) \
88                                 -DCONNMAN_PLUGIN_BUILTIN \
89                                 -DSTATEDIR=\""$(statedir)"\" \
90                                 -DPLUGINDIR=\""$(build_plugindir)"\" \
91                                 -DSCRIPTDIR=\""$(build_scriptdir)"\" \
92                                 -DSTORAGEDIR=\""$(storagedir)\""
93
94 INCLUDES = -I$(builddir)/include -I$(builddir)/src -I$(srcdir)/gdbus
95
96 EXTRA_DIST = src/genbuiltin src/connman-dbus.conf src/connman-polkit.conf
97
98
99 script_DATA =
100 script_PROGRAMS =
101 script_LTLIBRARIES =
102
103 include Makefile.plugins
104
105 if CLIENT
106 noinst_PROGRAMS += client/cm
107
108 client_cm_SOURCES = client/main.c
109 client_cm_LDADD = @DBUS_LIBS@
110 endif
111
112 if TOOLS
113 noinst_PROGRAMS += tools/wifi-scan tools/addr-test tools/tap-test
114
115 tools_wifi_scan_LDADD = @GLIB_LIBS@ @NETLINK_LIBS@
116 endif
117
118 EXTRA_DIST += test/get-state test/list-profiles test/list-services \
119                 test/connect-service test/list-connections \
120                 test/select-connection test/list-devices test/enable-device \
121                 test/disable-device test/start-scanning test/list-networks \
122                 test/set-passphrase test/set-address test/test-profile \
123                 test/simple-agent test/show-introspection test/test-compat \
124                 test/test-manager test/test-connman test/monitor-connman \
125                 test/monitor-services test/debug-connman
126
127 EXTRA_DIST += doc/overview-api.txt doc/behavior-api.txt \
128                                 doc/ipconfig-api.txt doc/plugin-api.txt \
129                                 doc/manager-api.txt doc/agent-api.txt \
130                                 doc/profile-api.txt doc/service-api.txt \
131                                 doc/device-lowlevel-api.txt \
132                                 doc/network-lowlevel-api.txt \
133                                 doc/connection-lowlevel-api.txt
134
135 pkgconfigdir = $(libdir)/pkgconfig
136
137 pkgconfig_DATA = connman.pc
138
139 DISTCHECK_CONFIGURE_FLAGS = --disable-gtk-doc \
140                                 --disable-datafiles \
141                                 --enable-loopback \
142                                 --enable-ethernet \
143                                 --enable-wifi \
144                                 --enable-bluetooth \
145                                 --enable-ofono \
146                                 --enable-udhcp \
147                                 --enable-dhclient \
148                                 --enable-resolvconf \
149                                 --enable-dnsproxy \
150                                 --enable-novatel \
151                                 --enable-huawei \
152                                 --enable-hso \
153                                 --enable-mbm \
154                                 --enable-udev \
155                                 --enable-polkit \
156                                 --enable-client \
157                                 --enable-tools
158
159 DISTCLEANFILES = $(pkgconfig_DATA)
160
161 MAINTAINERCLEANFILES = Makefile.in \
162         aclocal.m4 configure config.h.in config.sub config.guess \
163         ltmain.sh depcomp compile missing install-sh mkinstalldirs
164
165
166 src/plugin.$(OBJEXT): src/builtin.h
167
168 src/builtin.h: src/genbuiltin $(builtin_sources)
169         $(AM_V_GEN)$(srcdir)/src/genbuiltin $(builtin_modules) > $@
170
171 src/connman.exp: $(src_connmand_OBJECTS)
172         $(AM_V_GEN)$(NM) $^ | $(AWK) '{ print $$3 }' | sort -u | \
173                                 $(EGREP) -e '^connman_' -e '^g_dbus_' > $@
174
175 src/connman.ver: src/connman.exp
176         $(AM_V_at)echo "{ global:" > $@
177         $(AM_V_GEN)$(SED) -e "s/\(.*\)/\1;/" $< >> $@
178         $(AM_V_at)echo "local: *; };" >> $@
179
180 src/connman.conf: src/connman-dbus.conf src/connman-polkit.conf
181 if POLKIT
182         $(AM_V_GEN)cp $(srcdir)/src/connman-polkit.conf $@
183 else
184         $(AM_V_GEN)cp $(srcdir)/src/connman-dbus.conf $@
185 endif
186
187 $(src_connmand_OBJECTS) $(plugin_objects): $(local_headers)
188
189 include/connman/version.h: include/version.h
190         $(AM_V_at)$(MKDIR_P) include/connman
191         $(AM_V_GEN)$(LN_S) $(abs_top_builddir)/$< $@
192
193 include/connman/%.h: include/%.h
194         $(AM_V_at)$(MKDIR_P) include/connman
195         $(AM_V_GEN)$(LN_S) $(abs_top_srcdir)/$< $@
196
197 clean-local: include/connman
198         @$(RM) -r $<