5
# Copyright (C) 2008-2010 Stewart Smith <stewart@flamingspork.com>
6
# This program is free software: you can redistribute it and/or modify it
7
# under the terms of the GNU General Public License version 3, as published
8
# by the Free Software Foundation.
10
# This program is distributed in the hope that it will be useful, but
11
# WITHOUT ANY WARRANTY; without even the implied warranties of
12
# MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
13
# PURPOSE. See the GNU General Public License for more details.
15
# You should have received a copy of the GNU General Public License along
16
# with this program. If not, see <http://www.gnu.org/licenses/>.
19
ACLOCAL_AMFLAGS = -I m4
20
#LDADD = libeatmydata.la
28
nobase_include_HEADERS =
30
CLEANFILES = $(bin_SCRIPTS) $(libexec_SCRIPTS)
31
DISTCLEANFILES = config/top.h
44
debian/README.Debian \
51
bin_SCRIPTS = eatmydata
52
libexec_SCRIPTS = eatmydata.sh
55
-e 's!@''libdir''@!$(libdir)!g' \
56
-e 's!@''libexecdir''@!$(libexecdir)!g'
58
eatmydata: eatmydata.in Makefile
59
$(do_subst) $(srcdir)/eatmydata.in > $@
62
eatmydata.sh: eatmydata.sh.in Makefile
63
$(do_subst) $(srcdir)/eatmydata.sh.in > $@
69
lib_LTLIBRARIES += libeatmydata.la
71
libeatmydata_la_SOURCES = \
72
libeatmydata/libeatmydata.c
75
libeatmydata/visibility.h
77
libeatmydata_la_CFLAGS = \
80
-DBUILDING_LIBEATMYDATA
82
libeatmydata_la_LIBADD = $(LIBDL_LIBS) -lpthread
83
libeatmydata_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(LIBEATMYDATA_VERSION)
86
libeatmydata/test/fsynctest \
87
libeatmydata/test/tst-cancel4 \
88
libeatmydata/test/eatmydatatest \
89
libeatmydata/test/eatmydatatest_largefile
91
libeatmydata_test_tst_cancel4_LDADD= -lpthread
94
# Simple libeatmydata application
97
TESTS = $(check_PROGRAMS)
99
TESTS_ENVIRONMENT = ${top_srcdir}/test_run.sh
102
@LIBEATMYDATA_TEST_ARGS="v" make check
105
@LIBEATMYDATA_TEST_ARGS="vvv" make check
108
@LIBEATMYDATA_TEST_PREFIX="valgrind -q --leak-check=full --show-reachable=yes --suppressions=valgrind.suppressions" make check
110
check-valgrind-debug:
111
@LIBEATMYDATA_TEST_PREFIX="valgrind -q --leak-check=full --show-reachable=yes --suppressions=valgrind.suppressions" LIBEATMYDATA_TEST_ARGS="vvv" make check
114
@LIBEATMYDATA_TEST_PREFIX="gdb -q" make check
117
@LIBEATMYDATA_TEST_PREFIX="/usr/bin/time" make check
120
@LIBEATMYDATA_TEST_PREFIX="strace -c" make check
123
@LIBEATMYDATA_TEST_PREFIX="truss -c" make check
126
@echo "/**" > docs/mainpage.h
127
@echo "@mainpage README" >> docs/mainpage.h
128
@echo "<pre>" >> docs/mainpage.h
129
@cat ${top_srcdir}/README >> docs/mainpage.h
130
@echo "</pre>" >> docs/mainpage.h
131
@echo "*/" >> docs/mainpage.h
132
${DOXYGEN} ${top_srcdir}/docs/Doxyfile
135
lcov: lcov-clean check
137
@echo "------------------------------------------------------"
138
@echo "Make sure ./configure was run with '--enable-coverage'"
139
@echo "------------------------------------------------------"
141
cd libeatmydata && lcov --directory . --base-directory .. --capture --output-file lcov.out
142
cd libeatmydata && lcov --directory . --base-directory .. --extract lcov.out `pwd`/\* --output-file lcov_extract.out
143
genhtml -o lcov -t libeatmydata libeatmydata/lcov_extract.out
146
find . -name '*.gcno' -exec rm {} \;
147
find . -name '*.gcda' -exec rm {} \;
148
find . -name 'lcov*.out' -exec rm {} \;