-INCLUDES = -I$(top_builddir)/include -I$(top_builddir)/lib
-LDADDS = ../lib/libmemcached.la
+LDADDS = $(top_builddir)/libmemcached/libmemcached.la
-EXTRA_DIST = output.res output2.res\
+if BUILD_LIBMEMCACHEDUTIL
+LDADDS+= $(top_builddir)/libmemcached/libmemcachedutil.la
+endif
+
+EXTRA_DIST = \
r/memcat.res\
r/memcp.res\
r/memrm.res\
t/memslap.test\
t/memstat.test
-LIBS =
+LIBS =
-noinst_HEADERS = test.h server.h
+noinst_HEADERS = test.h server.h ketama_test_cases.h ketama_test_cases_spy.h hash_results.h libmemcached_world.h
noinst_PROGRAMS = testapp testplus udptest atomsmasher startservers
+noinst_LTLIBRARIES= libserver.la libtest.la
-testapp_SOURCES = test.c function.c ../src/generator.c ../src/execute.c server.c
-testapp_LDADD = $(LDADDS)
+libserver_la_SOURCES= server.c
+libtest_la_SOURCES= test.c
-testplus_SOURCES = test.c plus.cpp server.c
-testplus_LDADD = $(LDADDS)
+testapp_CFLAGS= $(AM_CFLAGS) $(NO_CONVERSION) $(NO_STRICT_ALIASING)
+testapp_SOURCES = function.c
+testapp_LDADD = $(top_builddir)/clients/libgenexec.la libtest.la libserver.la $(LDADDS)
-udptest_SOURCES = test.c udp.c server.c
-udptest_LDADD = $(LDADDS)
+testplus_SOURCES = plus.cpp
+testplus_LDADD = libtest.la libserver.la $(LDADDS)
-atomsmasher_SOURCES = test.c atomsmasher.c server.c ../src/generator.c ../src/execute.c
-atomsmasher_LDADD = $(LDADDS)
+udptest_SOURCES = udp.c
+udptest_LDADD = libtest.la libserver.la $(LDADDS)
-startservers_SOURCES = start.c server.c
-startservers_LDADD = $(LDADDS)
+atomsmasher_SOURCES = atomsmasher.c
+atomsmasher_LDADD = $(top_builddir)/clients/libgenexec.la libtest.la libserver.la $(LDADDS)
-record:
- ./testapp > output.res
+startservers_SOURCES = start.c
+startservers_LDADD = libserver.la $(LDADDS)
client-record:
sh t/memcat.test > r/memcat.res
sh t/memslap.test > r/memslap.res
sh t/memstat.test > r/memstat.res
-record-extended:
- ./testapp extended > output2.res
-
-test: testapp library_test
+test: testapp testplus library_test memcapable
echo "Tests completed"
library_test:
- ./testapp > output.cmp
- diff output.res output.cmp
+ ./testapp
+# ./testplus
+
+memcapable:
+ @MEMC_BINARY@ -d -P /tmp/Xumemc.pid -p 12555
+ @$(top_builddir)/clients/memcapable -p 12555 || echo "Your memcached server does not support all commands"
+ @cat /tmp/Xumemc.pid | xargs kill || echo "Failed to kill memcached server"
+ @rm /tmp/Xumemc.pid
clients:
- memcached -d -P /tmp/Xumemc.pid -p 12555
+ @MEMC_BINARY@ -d -P /tmp/Xumemc.pid -p 12555
export MEMCACHED_SERVERS="localhost:12555"
sh t/memcat.test > r/memcat.cmp
diff r/memcat.res r/memcat.cmp
rm /tmp/Xumemc.pid
valgrind:
- libtool --mode=execute valgrind --leak-check=yes --show-reachable=yes testapp
+ $(LIBTOOL) --mode=execute valgrind --leak-check=yes --show-reachable=yes testapp
+
+cachegrind:
+ rm -f cachegrind.out.*
+ $(LIBTOOL) --mode=execute valgrind --tool=cachegrind --branch-sim=yes testapp
+ cg_annotate cachegrind.out.* --auto=yes > /tmp/cachegrind.out
+
+callgrind:
+ rm -f callgrind.out.*
+ $(LIBTOOL) --mode=execute valgrind --tool=callgrind testapp
+ callgrind_annotate callgrind.out.* --auto=yes > /tmp/callgrind.out
+
+helgrind:
+ rm -f helgrind.out.*
+ $(LIBTOOL) --mode=execute valgrind --tool=helgrind testapp
+
+helgrind-slap:
+ $(LIBTOOL) --mode=execute valgrind --tool=helgrind ${top_builddir}/clients/memslap --server=localhost --concurrency=30
+
+test-no-outputdiff: test
+
+hudson-valgrind:
+ $(LIBTOOL) --mode=execute valgrind --leak-check=yes --show-reachable=yes --log-file=/tmp/valgrind.out testapp