Update for 1.4.20
[xapian.git] / xapian-core / tests / perftest / Makefile.mk
blob3f842d0cb611ca3db0a465af2524d478198df3c4
1 ## Process this file with automake to produce Makefile.in
3 .PHONY: check-perf
5 check-perf: perftest/perftest$(EXEEXT) perftest/get_machine_info
6 VALGRIND= XAPIAN_TESTSUITE_LD_PRELOAD= $(TESTS_ENVIRONMENT) ./perftest/perftest$(EXEEXT)
8 ## Programs to build
9 check_PROGRAMS += perftest/perftest
11 # Ensure the get_machine_info script is up to date before running tests.
12 check_SCRIPTS += perftest/get_machine_info
13 perftest/get_machine_info: perftest/get_machine_info.in
14 cd .. && $(MAKE) tests/perftest/get_machine_info
16 ## Sources:
18 noinst_HEADERS += perftest/perftest.h
20 collated_perftest_sources = \
21 perftest/perftest_matchdecider.cc \
22 perftest/perftest_randomidx.cc
24 perftest_perftest_SOURCES = perftest/perftest.cc $(collated_perftest_sources) \
25 perftest/perftest_all.h perftest/perftest_collated.h \
26 perftest/freemem.cc perftest/freemem.h \
27 perftest/runprocess.cc perftest/runprocess.h \
28 $(testharness_sources)
29 perftest_perftest_LDFLAGS = $(NO_INSTALL) $(ldflags)
30 perftest_perftest_LDADD = ../libgetopt.la ../$(libxapian_la)
32 if MAINTAINER_MODE
33 BUILT_SOURCES += perftest/perftest_all.h perftest/perftest_collated.h \
34 $(collated_perftest_sources:.cc=.h) perftest/perftest_collated.stamp
36 perftest/perftest_all.h perftest/perftest_collated.h $(collated_perftest_sources:.cc=.h): perftest/perftest_collated.stamp
37 ## Recover from the removal of $@. A full explanation of these rules is in the
38 ## automake manual under the heading "Multiple Outputs".
39 @if test -f $@; then :; else \
40 trap 'rm -rf perftest/perftest_collated.lock perftest/perftest_collated.stamp' 1 2 13 15; \
41 if mkdir perftest/perftest_collated.lock 2>/dev/null; then \
42 rm -f perftest/perftest_collated.stamp; \
43 $(MAKE) $(AM_MAKEFLAGS) perftest/perftest_collated.stamp; \
44 rmdir perftest/perftest_collated.lock; \
45 else \
46 while test -d perftest/perftest_collated.lock; do sleep 1; done; \
47 test -f perftest/perftest_collated.stamp; exit $$?; \
48 fi; \
50 perftest/perftest_collated.stamp: $(collated_perftest_sources) collate-test perftest/Makefile.mk
51 $(PERL) "$(srcdir)/collate-test" "$(srcdir)" perftest/perftest_collated.h perftest/perftest_all.h $(collated_perftest_sources)
52 touch $@
53 endif
55 EXTRA_DIST += \
56 perftest/perftest_all.h perftest/perftest_collated.h \
57 $(collated_perftest_sources:.cc=.h)