Cleaned up clients/ and tests/ to not build things multiple times, and to not
[awesomized/libmemcached] / tests / Makefile.am
index deb825c42ed979dea5e51d4e4e2037584c978b32..5f3afcb26452b4050d91bee6d8c9b2e4c402fa5d 100644 (file)
-INCLUDES = -I$(top_builddir)/include\r
-LDADDS = ../lib/libmemcached.la\r
-\r
-LIBS = \r
-\r
-noinst_PROGRAMS = testapp\r
-\r
-testapp_SOURCES = test.c\r
-testapp_LDADD = $(LDADDS)\r
-\r
-record:\r
-       ./testapp > output.res\r
-\r
-record-extended:\r
-       ./testapp extended > output2.res\r
-\r
-test: testapp\r
-       ./testapp > output.cmp\r
-       diff output.res output.cmp\r
-\r
-test-extended: testapp\r
-       ./testapp extended > output.cmp\r
-       diff output2.res output.cmp\r
-\r
-valgrind:\r
-       libtool --mode=execute valgrind --leak-check=yes --show-reachable=yes  testapp\r
-\r
-valgrind-extended:\r
-       libtool --mode=execute valgrind --leak-check=yes --show-reachable=yes  testapp extended\r
+LDADDS = $(top_builddir)/libmemcached/libmemcached.la
+
+if BUILD_LIBMEMCACHEDUTIL
+LDADDS+= $(top_builddir)/libmemcachedutil/libmemcachedutil.la
+endif
+
+EXTRA_DIST = output.res output2.res\
+               r/memcat.res\
+               r/memcp.res\
+               r/memrm.res\
+               r/memslap.res\
+               r/memstat.res\
+               t/memcat.test\
+               t/memcp.test\
+               t/memrm.test\
+               t/memslap.test\
+               t/memstat.test
+
+LIBS = 
+
+noinst_HEADERS = test.h server.h ketama_test_cases.h
+noinst_PROGRAMS = testapp testplus udptest atomsmasher startservers
+noinst_LTLIBRARIES= libserver.la libtest.la
+
+libserver_la_SOURCES= server.c
+libtest_la_SOURCES= test.c
+
+testapp_CFLAGS= $(AM_CFLAGS) $(NO_CONVERSION) $(NO_STRICT_ALIASING)
+testapp_SOURCES = function.c
+testapp_LDADD = $(LDADDS) $(top_builddir)/clients/libgenexec.la libtest.la libserver.la
+
+testplus_SOURCES = plus.cpp
+testplus_LDADD = $(LDADDS) libtest.la libserver.la
+
+udptest_SOURCES = udp.c
+udptest_LDADD = $(LDADDS) libtest.la libserver.la
+
+atomsmasher_SOURCES = atomsmasher.c
+atomsmasher_LDADD = $(LDADDS) $(top_builddir)/clients/libgenexec.la libtest.la libserver.la 
+
+startservers_SOURCES = start.c
+startservers_LDADD = $(LDADDS) libserver.la
+
+record:
+       ./testapp > output.res
+
+client-record:
+       sh t/memcat.test > r/memcat.res
+       sh t/memcp.test > r/memcp.res
+       sh t/memrm.test > r/memrm.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
+       echo "Tests completed"
+
+library_test:
+       ./testapp > output.cmp
+       diff output.res output.cmp
+
+clients:
+       memcached -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
+       sh t/memcp.test > r/memcp.cmp
+       diff r/memcp.res r/memcp.cmp
+       sh t/memrm.test > r/memrm.cmp
+       diff r/memrm.res r/memrm.cmp
+       sh t/memslap.test > r/memslap.cmp
+       diff r/memslap.res r/memslap.cmp
+       sh t/memstat.test > r/memstat.cmp
+       diff r/memstat.res r/memstat.cmp
+       cat /tmp/Xumemc.pid | xargs kill
+       rm /tmp/Xumemc.pid
+
+valgrind:
+       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: testapp
+       ./testapp > /dev/null
+       @echo "Test completed"