mariadb/Makefile
Bradley C. Kuszmaul 9f6f2a18e5 Most of the work for making the checks output nice easy-to-read output.
Not quite all the output is pretty yet.  To get the pretty output set the {{{SUMMARIZE}}} make variable to nonzero and use the {{{-s}}} argument.  E.g.,
{{{
make check SUMMARIZE=1 -s
}}}
.
a complete useful invokation on Coyote is as follows:
{{{
make check SUMMARIZE=1 BDBDIR=/usr -s -j8 VGRIND= -k
}}}

Also, (almost) all the tests pass (even the recovery tests that really fail), since those tests won't really work until after milestone:"MySQL TokuDB Beta 1.0.2".
The one test that fails is {{{check_test_cursor_count}}}.  Perhaps we won't fix that for this release either.

Addresses #810, #811.


git-svn-id: file:///svn/tokudb@3917 c7de825b-a66e-492c-adef-691d508d4ae1
2008-05-12 10:58:07 +00:00

79 lines
2.5 KiB
Makefile

default: build
TAGS: */*.c */*.h
etags */*.c */*.h src/lock_tree/*.c src/lock_tree/*.h src/range_tree/*.c src/range_tree/*.h
SRCDIRS = newbrt src cxx utils db-benchmark-test db-benchmark-test-cxx
BUILDDIRS = $(SRCDIRS) man/texi
CSCOPE_SRCDIRS=$(SRCDIRS) buildheader include
CSCOPE_DIRS =$(shell find $(CSCOPE_SRCDIRS) -type d '(' -path '*/.*' -prune -o -print ')')
CSCOPE_FILES=$(shell find $(CSCOPE_DIRS) -maxdepth 1 -type f -name "*.[ch]")
cscope.files: $(CSCOPE_DIRS)
@echo "$(CSCOPE_FILES)" | tr " " "\n" > $@ # Very long command line quieted.
cscope.out: cscope.files $(CSCOPE_FILES)
cscope -b
src.dir: newbrt.dir
cxx.dir: src.dir
db-benchmark-test.dir: src.dir
db-benchmark-test-cxx.dir: cxx.dir
utils.dir: src.dir
%.dir:
cd $(patsubst %.dir, %, $@);$(MAKE) build
build: $(patsubst %,%.dir, $(SRCDIRS))
CHECKS = $(patsubst %,checkdir_%,$(SRCDIRS))
# This is the original check rule
# The stuff below allows "make -j2 -k check" to work
#check:
# for d in $(SRCDIRS); do (cd $$d; $(MAKE) -k check); done
checkdir_%:
cd $(patsubst checkdir_%,%,$@) ; $(MAKE) -k check
summarize: SUMMARIZE=1
summarize: VERBOSE=0
summarize: check
check: $(CHECKS)
clean:
for d in $(SRCDIRS); do (cd $$d; $(MAKE) -k clean); done
rm -rf lib/*.so lib/*.a
rm -rf cscope.files cscope.out
install:
./install.bash
# maybe we should have a coverage target in each makefile
build-coverage:
$(MAKE) build OPTFLAGS= GCOV_FLAGS="-fprofile-arcs -ftest-coverage"
# this is messy now since we dont have consistent make targets
check-coverage: check-coverage-newbrt check-coverage-src-tests check-coverage-utils check-coverage-cxx-tests \
check-coverage-db-benchmark-test check-coverage-db-benchmark-test-cxx \
check-coverage-range-tree-tests check-coverage-lock-tree-tests
check-coverage-newbrt:
(cd newbrt; $(MAKE) -k check VGRIND="")
check-coverage-src-tests:
(cd src/tests; $(MAKE) -k check.tdb VGRIND="")
check-coverage-utils:
(cd utils; $(MAKE) -k test-coverage)
check-coverage-cxx-tests:
(cd cxx/tests; $(MAKE) -k check VGRIND="")
check-coverage-db-benchmark-test:
(cd db-benchmark-test; $(MAKE) -k check VGRIND="")
check-coverage-db-benchmark-test-cxx:
(cd db-benchmark-test-cxx; $(MAKE) -k check VGRIND="")
check-coverage-range-tree-tests:
(cd src/range_tree/tests; $(MAKE) clean; $(MAKE) -k check.lin VGRIND="" OPTFLAGS=-O0 GCOV_FLAGS="-fprofile-arcs -ftest-coverage")
check-coverage-lock-tree-tests:
(cd src/lock_tree/tests; $(MAKE) clean; $(MAKE) -k check.lin VGRIND="" OPTFLAGS=-O0 GCOV_FLAGS="-fprofile-arcs -ftest-coverage")