1 include $(GLIB_MAKEFILE)
3 @GNOME_CODE_COVERAGE_RULES@
8 -I$(top_srcdir)/shared \
9 -I$(top_builddir)/shared \
10 -I$(top_builddir)/introspection \
11 -I$(top_srcdir)/libnm-core \
12 -I$(top_builddir)/libnm-core \
13 -I$(top_srcdir)/libnm \
14 -I$(top_builddir)/libnm \
15 -DG_LOG_DOMAIN=\""libnm"\" \
16 -DNETWORKMANAGER_COMPILATION=NM_NETWORKMANAGER_COMPILATION_LIB \
17 -DNM_VERSION_MAX_ALLOWED=NM_VERSION_NEXT_STABLE \
20 -DNMRUNDIR=\"$(nmrundir)\" \
21 $(CODE_COVERAGE_CFLAGS)
23 include $(top_srcdir)/libnm-core/Makefile.libnm-core
27 lib_LTLIBRARIES = libnm.la
29 libnmincludedir = $(includedir)/libnm
31 libnminclude_hfiles = \
32 $(top_builddir)/shared/nm-version-macros.h \
35 nm-active-connection.h \
41 nm-device-ethernet.h \
43 nm-device-infiniband.h \
44 nm-device-ip-tunnel.h \
47 nm-device-olpc-mesh.h \
59 nm-remote-connection.h \
65 libnminclude_nointrospect_hfiles = \
66 nm-secret-agent-old.h \
68 nm-vpn-service-plugin.h
70 libnminclude_HEADERS = \
71 $(libnminclude_hfiles) \
72 $(libnminclude_nointrospect_hfiles)
74 libnm_la_private_headers = \
84 nm-remote-connection-private.h \
89 nm-active-connection.c \
96 nm-device-ethernet.c \
98 nm-device-infiniband.c \
99 nm-device-ip-tunnel.c \
100 nm-device-macvlan.c \
102 nm-device-olpc-mesh.c \
120 nm-remote-connection.c \
121 nm-remote-settings.c \
122 nm-secret-agent-old.c \
123 nm-vpn-connection.c \
124 nm-vpn-plugin-old.c \
126 nm-vpn-service-plugin.c \
130 $(libnm_la_csources) \
131 $(libnm_la_private_headers)
133 GLIB_GENERATED = nm-enum-types.h nm-enum-types.c
134 nm_enum_types_sources = $(libnminclude_HEADERS)
135 GLIB_MKENUMS_H_FLAGS = --identifier-prefix NM --fhead '\#include <nm-core-enum-types.h>\n'
136 GLIB_MKENUMS_C_FLAGS = --identifier-prefix NM
139 $(top_builddir)/libnm-core/libnm-core.la \
140 $(top_builddir)/introspection/libnmdbus.la \
146 $(CODE_COVERAGE_LDFLAGS)
148 SYMBOL_VIS_FILE=$(srcdir)/libnm.ver
150 libnm_la_LDFLAGS = -Wl,--version-script=$(SYMBOL_VIS_FILE) \
151 -version-info "1:0:1"
155 BUILT_SOURCES = $(GLIB_GENERATED)
157 pkgconfigdir = $(libdir)/pkgconfig
158 pkgconfig_DATA = libnm.pc
160 DISTCLEANFILES = libnm.pc
162 EXTRA_DIST = libnm.pc.in libnm.ver
164 CLEANFILES = $(BUILT_SOURCES)
166 -include $(INTROSPECTION_MAKEFILE)
168 INTROSPECTION_COMPILER_ARGS = \
169 --includedir=$(top_srcdir)/libnm-core \
170 --includedir=$(top_builddir)/libnm-core \
171 --includedir=$(top_srcdir)/libnm \
172 --includedir=$(top_builddir)/libnm
174 if HAVE_INTROSPECTION
175 introspection_sources = \
176 $(libnm_core_headers) \
177 $(libnminclude_hfiles) \
178 $(libnm_core_sources) \
182 NM_1_0_gir_INCLUDES = Gio-2.0
183 NM_1_0_gir_PACKAGES = gio-2.0 gudev-1.0
184 NM_1_0_gir_EXPORT_PACKAGES = libnm
185 NM_1_0_gir_CFLAGS = $(AM_CPPFLAGS)
186 NM_1_0_gir_LIBS = libnm.la
187 NM_1_0_gir_FILES = $(introspection_sources)
188 NM_1_0_gir_SCANNERFLAGS = --warn-all --identifier-prefix=NM --symbol-prefix=nm
189 INTROSPECTION_GIRS += NM-1.0.gir
191 girdir = $(datadir)/gir-1.0
192 gir_DATA = $(INTROSPECTION_GIRS)
194 typelibdir = $(libdir)/girepository-1.0
195 typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib)
197 CLEANFILES += $(gir_DATA) $(typelib_DATA)
201 $(top_srcdir)/tools/check-exports.sh $(builddir)/.libs/libnm.so $(SYMBOL_VIS_FILE)
203 if BUILD_SETTING_DOCS
206 nm-property-docs.xml \
207 nm-setting-docs-overrides.xml \
208 nm-setting-docs.xml \
209 nm-keyfile-docs.xml \
212 docs_sources = $(filter-out %/nm-core-enum-types.c,$(libnm_core_sources))
214 nm-setting-docs-overrides.xml: generate-plugin-docs.pl $(docs_sources)
215 $(srcdir)/generate-plugin-docs.pl dbus $(top_srcdir)/libnm-core $@
217 nm-property-docs.xml: generate-setting-docs.py $(docs_sources) | NM-1.0.gir NM-1.0.typelib libnm.la
218 export GI_TYPELIB_PATH=$(abs_builddir)$${GI_TYPELIB_PATH:+:$$GI_TYPELIB_PATH}; \
219 export LD_LIBRARY_PATH=$(abs_builddir)/.libs$${LD_LIBRARY_PATH:+:$$LD_LIBRARY_PATH}; \
220 $(srcdir)/generate-setting-docs.py \
221 --gir $(builddir)/NM-1.0.gir \
224 nm-setting-docs.xml: generate-setting-docs.py $(docs_sources) nm-setting-docs-overrides.xml | NM-1.0.gir NM-1.0.typelib libnm.la
225 export GI_TYPELIB_PATH=$(abs_builddir)$${GI_TYPELIB_PATH:+:$$GI_TYPELIB_PATH}; \
226 export LD_LIBRARY_PATH=$(abs_builddir)/.libs$${LD_LIBRARY_PATH:+:$$LD_LIBRARY_PATH}; \
227 $(srcdir)/generate-setting-docs.py \
228 --gir $(builddir)/NM-1.0.gir \
229 --overrides $(builddir)/nm-setting-docs-overrides.xml \
232 nm-keyfile-docs.xml: generate-plugin-docs.pl $(docs_sources)
233 $(srcdir)/generate-plugin-docs.pl keyfile $(top_srcdir)/libnm-core $@
234 nm-ifcfg-rh-docs.xml: generate-plugin-docs.pl $(docs_sources)
235 $(srcdir)/generate-plugin-docs.pl ifcfg-rh $(top_srcdir)/libnm-core $@
237 CLEANFILES += $(noinst_DATA)
238 EXTRA_DIST += $(noinst_DATA)
242 EXTRA_DIST += generate-setting-docs.py generate-plugin-docs.pl