mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-02-03 20:40:34 +01:00
For libnm library, "nm-dbus-interface.h" contains defines like the D-Bus paths of NetworkManager. It is desirable to have this header usable without having a dependency on "glib.h", for example for a QT application. For that, commitc0852964a8removed that dependancy. For libnm-glib library, the analog to "nm-dbus-interface.h" is "NetworkManager.h", and the same applies there. Commit159e827a72removed that include. However, that broke build on PackageKit [1] which expected to get the version macros by including "NetworkManager.h". So at least for libnm-glib, we need to preserve old behavior so that a user including "NetworkManager.h" gets the version macros, but not "glib.h". Extract the version macros to a new header file "nm-version-macros.h". This header doesn't include "glib.h" and can be included from "NetworkManager.h". This gives as previous behavior and a glib-free include. For libnm we still don't include "nm-version-macros.h" to "nm-dbus-interface.h". Very few users will actually need the version macros, but not using libnm. Users that use libnm, should just include (libnm's) "NetworkManager.h" to get all headers. As a special case, a user who doesn't want to use glib/libnm, but still needs both "nm-dbus-interface.h" and "nm-version-macros.h", can include them both separately. [1] https://github.com/hughsie/PackageKit/issues/85 Fixes:4545a7fe96(cherry picked from commit7bf10a75db)
147 lines
3.3 KiB
Makefile
147 lines
3.3 KiB
Makefile
SUBDIRS = config
|
|
|
|
AM_CPPFLAGS = \
|
|
-I$(top_srcdir)/include \
|
|
-I$(top_builddir)/include \
|
|
-I$(top_srcdir)/libnm-core \
|
|
-I$(top_builddir)/libnm-core \
|
|
-I$(top_srcdir)/src/platform \
|
|
-I$(top_srcdir)/src/dhcp-manager \
|
|
-I$(top_srcdir)/src/devices \
|
|
-I$(top_srcdir)/src \
|
|
-I$(top_builddir)/src \
|
|
-DG_LOG_DOMAIN=\""NetworkManager"\" \
|
|
-DNETWORKMANAGER_COMPILATION \
|
|
-DNM_VERSION_MAX_ALLOWED=NM_VERSION_NEXT_STABLE \
|
|
$(GLIB_CFLAGS) \
|
|
$(DBUS_CFLAGS)
|
|
|
|
noinst_PROGRAMS = \
|
|
test-general \
|
|
test-general-with-expect \
|
|
test-ip4-config \
|
|
test-ip6-config \
|
|
test-route-manager-linux \
|
|
test-route-manager-fake \
|
|
test-dcb \
|
|
test-resolvconf-capture \
|
|
test-wired-defname
|
|
|
|
####### ip4 config test #######
|
|
|
|
test_ip4_config_SOURCES = \
|
|
test-ip4-config.c
|
|
|
|
test_ip4_config_LDADD = \
|
|
$(top_builddir)/src/libNetworkManager.la
|
|
|
|
####### ip6 config test #######
|
|
|
|
test_ip6_config_SOURCES = \
|
|
test-ip6-config.c
|
|
|
|
test_ip6_config_LDADD = \
|
|
$(top_builddir)/src/libNetworkManager.la
|
|
|
|
####### route manager test #######
|
|
|
|
test_route_manager_fake_CPPFLAGS = \
|
|
$(AM_CPPFLAGS) \
|
|
-I$(top_srcdir)/src/platform/tests \
|
|
-DSETUP=nm_fake_platform_setup \
|
|
-DKERNEL_HACKS=0
|
|
|
|
test_route_manager_fake_SOURCES = \
|
|
$(top_srcdir)/src/platform/tests/test-common.c \
|
|
test-route-manager.c
|
|
|
|
test_route_manager_fake_LDADD = \
|
|
$(top_builddir)/src/libNetworkManager.la
|
|
|
|
test_route_manager_linux_SOURCES = \
|
|
$(top_srcdir)/src/platform/tests/test-common.c \
|
|
test-route-manager.c
|
|
|
|
test_route_manager_linux_CPPFLAGS = \
|
|
$(AM_CPPFLAGS) \
|
|
-I$(top_srcdir)/src/platform/tests \
|
|
-DSETUP=nm_linux_platform_setup \
|
|
-DKERNEL_HACKS=1
|
|
|
|
test_route_manager_linux_LDADD = \
|
|
$(top_builddir)/src/libNetworkManager.la
|
|
|
|
####### DCB test #######
|
|
|
|
test_dcb_SOURCES = \
|
|
test-dcb.c
|
|
|
|
test_dcb_LDADD = \
|
|
$(top_builddir)/src/libNetworkManager.la
|
|
|
|
####### resolv.conf capture test #######
|
|
|
|
test_resolvconf_capture_SOURCES = \
|
|
test-resolvconf-capture.c
|
|
|
|
test_resolvconf_capture_LDADD = \
|
|
$(top_builddir)/src/libNetworkManager.la
|
|
|
|
####### general test #######
|
|
|
|
test_general_SOURCES = \
|
|
test-general.c
|
|
|
|
test_general_LDADD = \
|
|
$(top_builddir)/src/libNetworkManager.la
|
|
|
|
####### general-with-expect test #######
|
|
|
|
test_general_with_expect_SOURCES = \
|
|
test-general-with-expect.c
|
|
|
|
test_general_with_expect_LDADD = \
|
|
$(top_builddir)/src/libNetworkManager.la
|
|
|
|
####### wired defname test #######
|
|
|
|
test_wired_defname_SOURCES = \
|
|
test-wired-defname.c
|
|
|
|
test_wired_defname_LDADD = \
|
|
$(top_builddir)/src/libNetworkManager.la
|
|
|
|
####### secret agent interface test #######
|
|
|
|
EXTRA_DIST = test-secret-agent.py
|
|
|
|
###########################################
|
|
|
|
@VALGRIND_RULES@
|
|
TESTS = \
|
|
test-ip4-config \
|
|
test-ip6-config \
|
|
test-route-manager-fake \
|
|
test-route-manager-linux \
|
|
test-dcb \
|
|
test-resolvconf-capture \
|
|
test-general \
|
|
test-general-with-expect \
|
|
test-wired-defname
|
|
|
|
|
|
if ENABLE_TESTS
|
|
|
|
check-local:
|
|
@for t in bond bridge ethernet gre infiniband macvlan tun veth vlan vxlan; do \
|
|
# Ensure the device subclass factory registration constructors exist \
|
|
# which could inadvertently break if src/Makefile.am gets changed \
|
|
if ! LC_ALL=C nm $(top_builddir)/src/NetworkManager | LC_ALL=C grep -q "register_device_factory_internal_$$t" ; then \
|
|
echo "Testing device factory symbols... FAILED" ; \
|
|
exit 1 ; \
|
|
fi \
|
|
done
|
|
@echo "Testing device factory symbols... PASSED"
|
|
|
|
endif
|
|
|