Refactor DEPENDENCIES
[awesomized/libmemcached] / libtest / include.am
index 59706ad8aaf30e8629f767b40b96272e27dc188f..17ec255c56ab490aec542217122079d9f9e2431d 100644 (file)
@@ -1,32 +1,18 @@
 # vim:ft=automake
-# Copyright (C) 2011 Data Differential, http://datadifferential.com/
-# All rights reserved.
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 3 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
 #
 # included from Top Level Makefile.am
 # All paths should be given relative to the root
 # 
 
 LIBTOOL_COMMAND= ${abs_top_builddir}/libtool --mode=execute
-VALGRIND_EXEC_COMMAND= $(LIBTOOL_COMMAND) valgrind --error-exitcode=1 --leak-check=yes --show-reachable=yes --track-fds=yes --malloc-fill=A5 --free-fill=DE
+VALGRIND_EXEC_COMMAND= $(LIBTOOL_COMMAND) valgrind --error-exitcode=1 --leak-check=yes --track-fds=yes --malloc-fill=A5 --free-fill=DE
 VALGRIND_COMMAND= TESTS_ENVIRONMENT="valgrind" $(VALGRIND_EXEC_COMMAND)
 HELGRIND_COMMAND= $(LIBTOOL_COMMAND) valgrind --tool=helgrind --read-var-info=yes --error-exitcode=1 --read-var-info=yes
 DRD_COMMAND= $(LIBTOOL_COMMAND) valgrind --tool=drd
+MASSIF_COMMAND= $(LIBTOOL_COMMAND) valgrind --tool=massif
 GDB_COMMAND= $(LIBTOOL_COMMAND) gdb -f -x libtest/run.gdb
 PTRCHECK_COMMAND= $(LIBTOOL_COMMAND) valgrind --tool=exp-ptrcheck --error-exitcode=1
+PAHOLE_COMMAND= $(LIBTOOL_COMMAND) --mode=execute pahole
 
 export LIBTOOL_COMMAND
 export VALGRIND_COMMAND
@@ -47,122 +33,131 @@ drd:
        @echo make check TESTS_ENVIRONMENT="\"$(DRD_COMMAND)\""
 
 EXTRA_DIST+= libtest/run.gdb
+EXTRA_DIST+= libtest/version.h
 
-CLEANFILES+= \
-            tmp_chroot/var/log/* \
-            tmp_chroot/var/run/* \
-            tmp_chroot/var/tmp/*
+BUILT_SOURCES+= libtest/version.h
 
-.PHONY: distclean-libtest-check
-distclean-libtest-check:
+.PHONY: clean-libtest-check
+clean-libtest-check:
        -rm -rf tmp_chroot
 
-noinst_HEADERS+= \
-                libtest/binaries.h \
-                libtest/cpu.hpp \
-                libtest/blobslap_worker.h \
-                libtest/callbacks.h \
-                libtest/cmdline.h \
-                libtest/collection.h \
-                libtest/common.h \
-                libtest/comparison.hpp \
-                libtest/core.h \
-                libtest/dream.h \
-                libtest/error.h \
-                libtest/failed.h \
-                libtest/fatal.hpp \
-                libtest/framework.h \
-                libtest/gearmand.h \
-                libtest/get.h \
-                libtest/has.hpp \
-                libtest/http.hpp \
-                libtest/is_pid.hpp \
-                libtest/is_local.hpp \
-                libtest/killpid.h \
-                libtest/libtool.hpp \
-                libtest/memcached.h \
-                libtest/port.h \
-                libtest/runner.h \
-                libtest/server.h \
-                libtest/server_container.h \
-                libtest/signal.h \
-                libtest/socket.hpp \
-                libtest/stats.h \
-                libtest/stream.h \
-                libtest/strerror.h \
-                libtest/string.hpp \
-                libtest/test.h \
-                libtest/test.hpp \
-                libtest/tmpfile.hpp \
-                libtest/vchar.hpp \
-                libtest/visibility.h \
-                libtest/wait.h
+noinst_HEADERS+= libtest/client.hpp
+noinst_HEADERS+= libtest/formatter.hpp
+noinst_HEADERS+= libtest/timer.hpp
+noinst_HEADERS+= libtest/alarm.h
+noinst_HEADERS+= libtest/binaries.h 
+noinst_HEADERS+= libtest/cpu.hpp 
+noinst_HEADERS+= libtest/blobslap_worker.h 
+noinst_HEADERS+= libtest/callbacks.h 
+noinst_HEADERS+= libtest/dns.hpp 
+noinst_HEADERS+= libtest/cmdline.h 
+noinst_HEADERS+= libtest/collection.h 
+noinst_HEADERS+= libtest/common.h 
+noinst_HEADERS+= libtest/comparison.hpp 
+noinst_HEADERS+= libtest/core.h 
+noinst_HEADERS+= libtest/dream.h 
+noinst_HEADERS+= libtest/error.h 
+noinst_HEADERS+= libtest/failed.h 
+noinst_HEADERS+= libtest/fatal.hpp 
+noinst_HEADERS+= libtest/framework.h 
+noinst_HEADERS+= libtest/gearmand.h 
+noinst_HEADERS+= libtest/drizzled.h 
+noinst_HEADERS+= libtest/get.h 
+noinst_HEADERS+= libtest/has.hpp 
+noinst_HEADERS+= libtest/http.hpp 
+noinst_HEADERS+= libtest/is_pid.hpp 
+noinst_HEADERS+= libtest/is_local.hpp 
+noinst_HEADERS+= libtest/killpid.h 
+noinst_HEADERS+= libtest/libtool.hpp 
+noinst_HEADERS+= libtest/memcached.h 
+noinst_HEADERS+= libtest/memcached.hpp
+noinst_HEADERS+= libtest/poll_error.hpp
+noinst_HEADERS+= libtest/port.h 
+noinst_HEADERS+= libtest/result.hpp 
+noinst_HEADERS+= libtest/runner.h 
+noinst_HEADERS+= libtest/server.h 
+noinst_HEADERS+= libtest/server_container.h 
+noinst_HEADERS+= libtest/signal.h 
+noinst_HEADERS+= libtest/socket.hpp 
+noinst_HEADERS+= libtest/stream.h 
+noinst_HEADERS+= libtest/strerror.h 
+noinst_HEADERS+= libtest/string.hpp 
+noinst_HEADERS+= libtest/test.h 
+noinst_HEADERS+= libtest/test.hpp 
+noinst_HEADERS+= libtest/thread.hpp
+noinst_HEADERS+= libtest/tmpfile.hpp 
+noinst_HEADERS+= libtest/vchar.hpp 
+noinst_HEADERS+= libtest/version.h 
+noinst_HEADERS+= libtest/visibility.h 
+noinst_HEADERS+= libtest/wait.h
 
 noinst_LTLIBRARIES+= libtest/libtest.la
-libtest_libtest_la_SOURCES= \
-                           libtest/binaries.cc \
-                           libtest/cmdline.cc \
-                           libtest/comparison.cc \
-                           libtest/core.cc \
-                           libtest/cpu.cc \
-                           libtest/dream.cc \
-                           libtest/fatal.cc \
-                           libtest/framework.cc \
-                           libtest/has.cc \
-                           libtest/http.cc \
-                           libtest/is_local.cc \
-                           libtest/killpid.cc \
-                           libtest/libtool.cc \
-                           libtest/port.cc \
-                           libtest/runner.cc \
-                           libtest/server.cc \
-                           libtest/server_container.cc \
-                           libtest/signal.cc \
-                           libtest/socket.cc \
-                           libtest/strerror.cc \
-                           libtest/test.cc \
-                           libtest/tmpfile.cc \
-                           libtest/vchar.cc
 
 libtest_libtest_la_CXXFLAGS=
-libtest_libtest_la_DEPENDENCIES=
+EXTRA_libtest_libtest_la_DEPENDENCIES=
 libtest_libtest_la_LIBADD=
+libtest_libtest_la_SOURCES=
+
+libtest_libtest_la_SOURCES+= libtest/alarm.cc 
+libtest_libtest_la_SOURCES+= libtest/binaries.cc 
+libtest_libtest_la_SOURCES+= libtest/cmdline.cc 
+libtest_libtest_la_SOURCES+= libtest/collection.cc 
+libtest_libtest_la_SOURCES+= libtest/comparison.cc 
+libtest_libtest_la_SOURCES+= libtest/core.cc 
+libtest_libtest_la_SOURCES+= libtest/cpu.cc 
+libtest_libtest_la_SOURCES+= libtest/dns.cc 
+libtest_libtest_la_SOURCES+= libtest/dream.cc 
+libtest_libtest_la_SOURCES+= libtest/drizzled.cc 
+libtest_libtest_la_SOURCES+= libtest/fatal.cc 
+libtest_libtest_la_SOURCES+= libtest/formatter.cc 
+libtest_libtest_la_SOURCES+= libtest/client.cc 
+libtest_libtest_la_SOURCES+= libtest/framework.cc 
+libtest_libtest_la_SOURCES+= libtest/has.cc 
+libtest_libtest_la_SOURCES+= libtest/http.cc 
+libtest_libtest_la_SOURCES+= libtest/is_local.cc 
+libtest_libtest_la_SOURCES+= libtest/killpid.cc 
+libtest_libtest_la_SOURCES+= libtest/libtool.cc 
+libtest_libtest_la_SOURCES+= libtest/main.cc 
+libtest_libtest_la_SOURCES+= libtest/port.cc 
+libtest_libtest_la_SOURCES+= libtest/result.cc 
+libtest_libtest_la_SOURCES+= libtest/runner.cc 
+libtest_libtest_la_SOURCES+= libtest/server.cc 
+libtest_libtest_la_SOURCES+= libtest/server_container.cc 
+libtest_libtest_la_SOURCES+= libtest/signal.cc 
+libtest_libtest_la_SOURCES+= libtest/socket.cc 
+libtest_libtest_la_SOURCES+= libtest/strerror.cc 
+libtest_libtest_la_SOURCES+= libtest/timer.cc 
+libtest_libtest_la_SOURCES+= libtest/tmpfile.cc 
+libtest_libtest_la_SOURCES+= libtest/vchar.cc
 
-libtest_libtest_la_CXXFLAGS+= ${NO_CONVERSION}
 libtest_libtest_la_CXXFLAGS+= -DBUILDING_LIBTEST
-libtest_libtest_la_CXXFLAGS+= $(PTHREAD_CFLAGS)
+libtest_libtest_la_CXXFLAGS+= @PTHREAD_CFLAGS@
 libtest_libtest_la_CXXFLAGS+= -DLIBTEST_TEMP="\"tmp_chroot\""
 libtest_libtest_la_CXXFLAGS+= $(CURL_CFLAGS)
 
-libtest_libtest_la_LIBADD+= $(PTHREAD_LIBS)
+libtest_libtest_la_LIBADD+= @PTHREAD_LIBS@
 libtest_libtest_la_LIBADD+= $(CURL_LIBS)
+libtest_libtest_la_LIBADD+= @RT_LIB@
 
-libtest_libtest_la_DEPENDENCIES+= libtest_tmp_dir
-libtest_libtest_la_DEPENDENCIES+=libtest/abort
-libtest_libtest_la_DEPENDENCIES+=libtest/wait
+EXTRA_libtest_libtest_la_DEPENDENCIES+= libtest_tmp_dir
+EXTRA_libtest_libtest_la_DEPENDENCIES+= libtest/abort
+EXTRA_libtest_libtest_la_DEPENDENCIES+= libtest/wait
 
 # Declare unittest so that we can append to it
 libtest_unittest_CXXFLAGS=
 libtest_unittest_LDADD=
-libtest_unittest_DEPENDENCIES=
 
 # We are either building in tree, or with
 if BUILDING_LIBMEMCACHED
-libtest_libtest_la_DEPENDENCIES+= libmemcached/libmemcached.la
-libtest_libtest_la_DEPENDENCIES+= libmemcached/libmemcachedutil.la
 libtest_libtest_la_LIBADD+= libmemcached/libmemcached.la
-libtest_libtest_la_LIBADD+= libmemcached/libmemcachedutil.la
 libtest_libtest_la_SOURCES+= libtest/memcached.cc
 libtest_libtest_la_CXXFLAGS+= -DHAVE_LIBMEMCACHED
 
 libtest_unittest_CXXFLAGS+= -DHAVE_LIBMEMCACHED
 libtest_unittest_LDADD+= libmemcached/libmemcached.la
-libtest_unittest_LDADD+= libmemcached/libmemcachedutil.la
-libtest_unittest_DEPENDENCIES+= libmemcached/libmemcached.la
-libtest_unittest_DEPENDENCIES+= libmemcached/libmemcachedutil.la
 else
 if HAVE_LIBMEMCACHED
-libtest_libtest_la_LIBADD+= $(libmemcached_LIBS)
+libtest_libtest_la_LIBADD+= $(LIBMEMCACHED_UTIL_LDFLAGS)
 libtest_libtest_la_SOURCES+= libtest/memcached.cc
 else
 libtest_libtest_la_CXXFLAGS+= -DHAVE_LIBMEMCACHED=0
@@ -170,21 +165,22 @@ libtest_unittest_CXXFLAGS+= -DHAVE_LIBMEMCACHED=0
 endif
 endif
 
+if HAVE_LIBDRIZZLE
+
+libtest_libtest_la_LIBADD+= $(libdrizzle_LIBS)
+libtest_libtest_la_CXXFLAGS+= $(libdrizzle_CFLAGS)
+
+endif
+
 if BUILDING_GEARMAN
-libtest_libtest_la_DEPENDENCIES+= libgearman/libgearman.la
-libtest_libtest_la_LIBADD+= libgearman/libgearman.la
 libtest_libtest_la_SOURCES+= libtest/blobslap_worker.cc
 libtest_libtest_la_SOURCES+= libtest/gearmand.cc
 libtest_libtest_la_SOURCES+= util/instance.cc
 libtest_libtest_la_SOURCES+= util/operation.cc
 
 libtest_unittest_LDADD+= libgearman/libgearman.la
-libtest_unittest_DEPENDENCIES+= libgearman/libgearman.la
-libtest_unittest_DEPENDENCIES+= gearmand/gearmand
 else
 if HAVE_LIBGEARMAN
-libtest_libtest_la_DEPENDENCIES+= libgearman/libgearman.la
-libtest_libtest_la_LIBADD+= $(libgearman_LIBS)
 libtest_libtest_la_SOURCES+= libtest/blobslap_worker.cc
 libtest_libtest_la_SOURCES+= libtest/gearmand.cc
 libtest_libtest_la_SOURCES+= util/instance.cc
@@ -192,25 +188,14 @@ libtest_libtest_la_SOURCES+= util/operation.cc
 endif
 endif
 
-libtest_tmp_dir: tmp_chroot/var/log tmp_chroot/var/tmp tmp_chroot/var/run
-
-tmp_chroot:
-       @$(mkdir_p) tmp_chroot
+TMP_DIR := tmp_chroot/etc tmp_chroot/var/log tmp_chroot/var/tmp tmp_chroot/var/run tmp_chroot/var/drizzle
 
-tmp_chroot/var: tmp_chroot
-       @$(mkdir_p) tmp_chroot/var
+.PHONY: libtest_tmp_dir
+libtest_tmp_dir: | $(TMP_DIR)
 
-tmp_chroot/var/log: tmp_chroot/var
-       @$(mkdir_p) tmp_chroot/var/log
+$(TMP_DIR):
+       @$(mkdir_p) $(TMP_DIR)
 
-tmp_chroot/var/tmp: tmp_chroot/var
-       @$(mkdir_p) tmp_chroot/var/tmp
-
-tmp_chroot/var/run: tmp_chroot/var
-       @$(mkdir_p) tmp_chroot/var/run
-
-
-libtest_unittest_DEPENDENCIES+= libtest/libtest.la
 libtest_unittest_LDADD+= libtest/libtest.la
 libtest_unittest_SOURCES= libtest/unittest.cc
 check_PROGRAMS+= libtest/unittest
@@ -219,7 +204,7 @@ test-unittest: libtest/unittest
        @libtest/unittest
 
 valgrind-unittest: libtest/unittest
-       @$(VALGRIND_COMMAND) libtest/unittest TESTS_ENVIRONMENT="valgrind"
+       @$(VALGRIND_COMMAND) libtest/unittest
 
 gdb-unittest: libtest/unittest
        @$(GDB_COMMAND) libtest/unittest
@@ -240,5 +225,23 @@ libtest_wait_SOURCES+= libtest/wait.cc
 libtest_wait_SOURCES+= libtest/dream.cc
 noinst_PROGRAMS+= libtest/wait
 
+libtest_core_count_SOURCES=
+libtest_core_count_SOURCES+= libtest/cpu.cc
+libtest_core_count_SOURCES+= libtest/core_count.cc
+noinst_PROGRAMS+= libtest/core-count
+
 libtest_abort_SOURCES= libtest/abort.cc
 noinst_PROGRAMS+= libtest/abort
+
+libtest_backtrace_SOURCES=
+libtest_backtrace_LDADD=
+libtest_backtrace_SOURCES+= libtest/backtrace_test.cc
+libtest_backtrace_SOURCES+= libmemcached/backtrace.cc
+libtest_backtrace_LDADD+= @DL_LIB@
+noinst_PROGRAMS+= libtest/backtrace
+test-backtrace: libtest/backtrace
+       @libtest/backtrace
+
+gdb-backtrace: libtest/backtrace
+       @$(GDB_COMMAND) libtest/backtrace
+