1## the "name-test" subdir in fact contains a bunch of tests now that need a temporary bus 2## to be running to do stuff with. The directory should be renamed. 3## We want to build the current directory first to pick up the testutils lib 4SUBDIRS= . name-test 5DIST_SUBDIRS=name-test 6 7INCLUDES=-I$(top_srcdir) $(DBUS_TEST_CFLAGS) 8 9libdbus_testutils_la_SOURCES = test-utils.h test-utils.c 10 11noinst_LTLIBRARIES = libdbus-testutils.la 12 13if DBUS_BUILD_TESTS 14## break-loader removed for now 15## most of these binaries are used in tests but are not themselves tests 16TEST_BINARIES=test-service test-names test-shell-service shell-test spawn-test test-segfault test-exit test-sleep-forever 17 18## these are the things to run in make check (i.e. they are actual tests) 19## (binaries in here must also be in TEST_BINARIES) 20TESTS=shell-test 21else 22TEST_BINARIES= 23TESTS= 24endif 25 26if DBUS_GCOV_ENABLED 27GCOV_BINARIES=decode-gcov 28else 29GCOV_BINARIES= 30endif 31 32noinst_PROGRAMS= $(TEST_BINARIES) $(GCOV_BINARIES) 33 34test_service_SOURCES= \ 35 test-service.c 36 37test_names_SOURCES= \ 38 test-names.c 39 40##break_loader_SOURCES= \ 41## break-loader.c 42 43test_shell_service_SOURCES = \ 44 test-shell-service.c 45 46shell_test_SOURCES= \ 47 shell-test.c 48 49spawn_test_SOURCES= \ 50 spawn-test.c 51 52test_exit_SOURCES = \ 53 test-exit.c 54 55test_segfault_SOURCES = \ 56 test-segfault.c 57 58test_sleep_forever_SOURCES = \ 59 test-sleep-forever.c 60 61decode_gcov_SOURCES= \ 62 decode-gcov.c 63 64# When any programs are not linked to libdbus-internal, fix this. 65AM_CPPFLAGS=-DDBUS_STATIC_BUILD 66TEST_LIBS=$(top_builddir)/dbus/libdbus-internal.la $(DBUS_TEST_LIBS) 67 68test_service_LDADD=libdbus-testutils.la $(TEST_LIBS) 69test_service_LDFLAGS=@R_DYNAMIC_LDFLAG@ 70test_names_LDADD=libdbus-testutils.la $(TEST_LIBS) 71test_names_LDFLAGS=@R_DYNAMIC_LDFLAG@ 72## break_loader_LDADD= $(TEST_LIBS) 73## break_loader_LDFLAGS=@R_DYNAMIC_LDFLAG@ 74test_shell_service_LDADD=libdbus-testutils.la $(TEST_LIBS) 75test_shell_service_LDFLAGS=@R_DYNAMIC_LDFLAG@ 76shell_test_LDADD=libdbus-testutils.la $(TEST_LIBS) 77shell_test_LDFLAGS=@R_DYNAMIC_LDFLAG@ 78spawn_test_LDADD=$(TEST_LIBS) 79spawn_test_LDFLAGS=@R_DYNAMIC_LDFLAG@ 80decode_gcov_LDADD=$(TEST_LIBS) 81decode_gcov_LDFLAGS=@R_DYNAMIC_LDFLAG@ 82 83EXTRA_DIST= 84 85## keep these in creation order, i.e. uppermost dirs first 86TESTDIRS= \ 87 data \ 88 data/valid-messages \ 89 data/invalid-messages \ 90 data/incomplete-messages \ 91 data/auth \ 92 data/sha-1 \ 93 data/valid-config-files \ 94 data/valid-config-files-system \ 95 data/valid-config-files/basic.d \ 96 data/valid-config-files/session.d \ 97 data/valid-config-files/system.d \ 98 data/valid-service-files \ 99 data/valid-service-files-system \ 100 data/invalid-service-files-system \ 101 data/invalid-config-files \ 102 data/invalid-config-files-system \ 103 data/equiv-config-files \ 104 data/equiv-config-files/basic \ 105 data/equiv-config-files/basic/basic.d \ 106 data/equiv-config-files/entities \ 107 data/equiv-config-files/entities/basic.d 108 109 110FIND_TESTS=find . -type f -a \( -name "*.message" -o -name "*.message-raw" -o -name "*.auth-script" -o -name "*.sha1" -o -name "*.txt" -o -name "*.conf" -o -name "*.service" \) 111 112dist-hook: 113 for D in $(TESTDIRS); do \ 114 test -d $(distdir)/$$D || mkdir $(distdir)/$$D || exit 1 ; \ 115 done ; \ 116 FILES=`(cd $(srcdir) && $(FIND_TESTS) -o -name "*.in" -a -not -name Makefile.in | grep -Ev "(.svn|CVS)" )` ; \ 117 for F in $$FILES; do \ 118 echo '-- Disting file '$$F ; \ 119 cp -f $(srcdir)/$$F $(distdir)/$$F || exit 1 ; \ 120 done 121 122## copy tests to builddir so that generated tests and static tests 123## are all in one place. 124all-local: 125 for D in $(TESTDIRS); do \ 126 test -d $(top_builddir)/test/$$D || mkdir $(top_builddir)/test/$$D || exit 1 ; \ 127 done ; \ 128 if ! (test $(srcdir) = . || test $(srcdir) -ef .) ; then \ 129 FILES=`(cd $(srcdir) && $(FIND_TESTS) | grep -Ev "(.svn|CVS)" )` ; \ 130 for F in $$FILES; do \ 131 SRC=$(srcdir)/$$F ; \ 132 DEST=$(top_builddir)/test/$$F ; \ 133 echo '-- Copying test file '$$F ; \ 134 cp $$SRC $$DEST || exit 1 ; \ 135 chmod u+w $$DEST || exit 1 ; \ 136 done ; \ 137 else \ 138 echo '-- No need to copy test data as srcdir = builddir' ; \ 139 fi ; \ 140 echo '-- Copying' $(top_builddir)/bus/*.conf 'to test directory' ; \ 141 cp $(top_builddir)/bus/*.conf $(top_builddir)/test/data/valid-config-files || exit 1 ; \ 142 chmod u+w $(top_builddir)/test/data/valid-config-files/*.conf || exit 1 143 144## this doesn't clean generated test data files when srcdir=builddir 145clean-local: 146 if test $(srcdir) != . ; then \ 147 FILES=`(cd $(top_builddir)/test && $(FIND_TESTS) | grep -Ev "(.svn|CVS)" )` ; \ 148 for F in $$FILES; do \ 149 DEST=$(top_builddir)/test/$$F ; \ 150 echo '-- Deleting test file '$$F ; \ 151 rm $$DEST || exit 1 ; \ 152 done ; \ 153 REVERSEDIRS= ; \ 154 for D in $(TESTDIRS); do \ 155 REVERSEDIRS="$$D $$REVERSEDIRS" ; \ 156 done ; \ 157 for D in $$REVERSEDIRS; do \ 158 rmdir $(top_builddir)/test/$$D || exit 1 ; \ 159 done ; \ 160 fi 161