Makefile.am 3.92 KB
Newer Older
1 2
PYCOVERAGE_RUN = @PYCOVERAGE_RUN@

3 4 5
PYTESTS = dhcp4_test.py
EXTRA_DIST = $(PYTESTS)

Tomek Mrugalski's avatar
Tomek Mrugalski committed
6 7 8
# Explicitly specify paths to dynamic libraries required by loadable python
# modules. That is required on Mac OS systems. Otherwise we will get exception
# about python not being able to load liblog library.
9 10
LIBRARY_PATH_PLACEHOLDER =
if SET_ENV_LIBRARY_PATH
11
LIBRARY_PATH_PLACEHOLDER += $(ENV_LIBRARY_PATH)=$(abs_top_builddir)/src/lib/cryptolink/.libs:$(abs_top_builddir)/src/lib/dns/.libs:$(abs_top_builddir)/src/lib/dns/python/.libs:$(abs_top_builddir)/src/lib/cc/.libs:$(abs_top_builddir)/src/lib/config/.libs:$(abs_top_builddir)/src/lib/log/.libs:$(abs_top_builddir)/src/lib/util/.libs:$(abs_top_builddir)/src/lib/util/threads/.libs:$(abs_top_builddir)/src/lib/exceptions/.libs:$(abs_top_builddir)/src/lib/util/io/.libs:$(abs_top_builddir)/src/lib/datasrc/.libs:$$$(ENV_LIBRARY_PATH)
12 13
endif

14 15 16 17 18
# test using command-line arguments, so use check-local target instead of TESTS
check-local:
	for pytest in $(PYTESTS) ; do \
	echo Running test: $$pytest ; \
	PYTHONPATH=$(COMMON_PYTHON_PATH):$(abs_top_srcdir)/src/bin:$(abs_top_builddir)/src/bin/bind10:$(abs_top_builddir)/src/lib/util/io/.libs \
19
	B10_LOCKFILE_DIR_FROM_BUILD=$(abs_top_builddir) \
20 21 22 23
	$(LIBRARY_PATH_PLACEHOLDER) \
		$(PYCOVERAGE_RUN) $(abs_srcdir)/$$pytest || exit ; \
	done

24 25 26 27 28 29 30 31 32 33
AM_CPPFLAGS = -I$(top_srcdir)/src/lib -I$(top_builddir)/src/lib
AM_CPPFLAGS += -I$(top_builddir)/src/bin # for generated spec_config.h header
AM_CPPFLAGS += -I$(top_srcdir)/src/bin
AM_CPPFLAGS += -I$(top_builddir)/src/lib/cc
AM_CPPFLAGS += -I$(top_srcdir)/src/lib/asiolink
AM_CPPFLAGS += $(BOOST_INCLUDES)
AM_CPPFLAGS += -DTEST_DATA_DIR=\"$(abs_top_srcdir)/src/lib/testutils/testdata\"
AM_CPPFLAGS += -DTEST_DATA_BUILDDIR=\"$(abs_top_builddir)/src/bin/dhcp6/tests\"
AM_CPPFLAGS += -DINSTALL_PROG=\"$(abs_top_srcdir)/install-sh\"

34
CLEANFILES = $(builddir)/interfaces.txt $(builddir)/logger_lockfile
35 36

AM_CXXFLAGS = $(B10_CXXFLAGS)
37 38 39 40
if USE_CLANGPP
# Disable unused parameter warning caused by some Boost headers when compiling with clang
AM_CXXFLAGS += -Wno-unused-parameter
endif
41 42 43 44 45

if USE_STATIC_LINK
AM_LDFLAGS = -static
endif

46
TESTS_ENVIRONMENT = \
47
        $(LIBTOOL) --mode=execute $(VALGRIND_COMMAND)
48

49 50
TESTS =
if HAVE_GTEST
51 52 53 54 55 56 57 58 59 60
# Build shared libraries for testing.
lib_LTLIBRARIES = libco1.la libco2.la

libco1_la_SOURCES  = callout_library_1.cc callout_library_common.h
libco1_la_CXXFLAGS = $(AM_CXXFLAGS)
libco1_la_CPPFLAGS = $(AM_CPPFLAGS)

libco2_la_SOURCES  = callout_library_2.cc callout_library_common.h
libco2_la_CXXFLAGS = $(AM_CXXFLAGS)
libco2_la_CPPFLAGS = $(AM_CPPFLAGS)
61 62 63

TESTS += dhcp4_unittests

64
dhcp4_unittests_SOURCES = ../dhcp4_srv.h ../dhcp4_srv.cc ../ctrl_dhcp4_srv.cc
65
dhcp4_unittests_SOURCES += ../dhcp4_log.h ../dhcp4_log.cc
66
dhcp4_unittests_SOURCES += ../config_parser.cc ../config_parser.h
67 68
dhcp4_unittests_SOURCES += dhcp4_unittests.cc
dhcp4_unittests_SOURCES += dhcp4_srv_unittest.cc
69
dhcp4_unittests_SOURCES += ctrl_dhcp4_srv_unittest.cc
70
dhcp4_unittests_SOURCES += config_parser_unittest.cc
71
nodist_dhcp4_unittests_SOURCES = ../dhcp4_messages.h ../dhcp4_messages.cc
72
nodist_dhcp4_unittests_SOURCES += marker_file.h test_libraries.h
73 74 75 76

dhcp4_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
dhcp4_unittests_LDFLAGS = $(AM_LDFLAGS) $(GTEST_LDFLAGS)
dhcp4_unittests_LDADD = $(GTEST_LDADD)
77
dhcp4_unittests_LDADD += $(top_builddir)/src/lib/asiolink/libb10-asiolink.la
78 79
dhcp4_unittests_LDADD += $(top_builddir)/src/lib/cc/libb10-cc.la
dhcp4_unittests_LDADD += $(top_builddir)/src/lib/config/libb10-cfgclient.la
80
dhcp4_unittests_LDADD += $(top_builddir)/src/lib/dhcp/libb10-dhcp++.la
81
dhcp4_unittests_LDADD += $(top_builddir)/src/lib/dhcpsrv/libb10-dhcpsrv.la
82
dhcp4_unittests_LDADD += $(top_builddir)/src/lib/exceptions/libb10-exceptions.la
83
dhcp4_unittests_LDADD += $(top_builddir)/src/lib/log/libb10-log.la
84
dhcp4_unittests_LDADD += $(top_builddir)/src/lib/util/libb10-util.la
85
dhcp4_unittests_LDADD += $(top_builddir)/src/lib/hooks/libb10-hooks.la
86 87 88
endif

noinst_PROGRAMS = $(TESTS)