1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-21 13:34:40 +03:00

[build] include test/unit/Makefile rather than recursive build

FIXME: unit tests are not currently run as part of make check.
This commit is contained in:
Joe Thornber 2018-02-02 15:39:17 +00:00 committed by David Teigland
parent b03e55a513
commit 8ae3b244fc
3 changed files with 19 additions and 60 deletions

View File

@ -212,28 +212,7 @@ endif
endif
ifeq ("$(TESTING)", "yes")
# testing and report generation
RUBY=ruby1.9 -Ireport-generators/lib -Ireport-generators/test
.PHONY: unit-test ruby-test test-programs
# FIXME: put dependencies on libdm and liblvm
# FIXME: Should be handled by Makefiles in subdirs, not here at top level.
test-programs:
cd unit-tests/regex && $(MAKE)
cd unit-tests/datastruct && $(MAKE)
cd unit-tests/mm && $(MAKE)
unit-test: test-programs
$(RUBY) report-generators/unit_test.rb $(shell find . -name TESTS)
$(RUBY) report-generators/title_page.rb
memcheck: test-programs
$(RUBY) report-generators/memcheck.rb $(shell find . -name TESTS)
$(RUBY) report-generators/title_page.rb
ruby-test:
$(RUBY) report-generators/test/ts.rb
include test/unit/Makefile
endif
ifneq ($(shell which ctags),)

View File

@ -27,7 +27,7 @@ datarootdir = @datarootdir@
LVM_TEST_RESULTS ?= results
SUBDIRS = api unit
SUBDIRS = api
SOURCES = lib/not.c lib/harness.c
CXXSOURCES = lib/runner.cpp
CXXFLAGS += $(EXTRA_EXEC_CFLAGS)

View File

@ -1,4 +1,4 @@
# Copyright (C) 2011-2017 Red Hat, Inc. All rights reserved.
# Copyright (C) 2011-2018 Red Hat, Inc. All rights reserved.
#
# This file is part of LVM2.
#
@ -10,44 +10,24 @@
# along with this program; if not, write to the Free Software Foundation,
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = @top_builddir@
UNIT_SOURCE=\
test/unit/bcache_t.c \
test/unit/bitset_t.c\
test/unit/config_t.c\
test/unit/dmlist_t.c\
test/unit/dmstatus_t.c\
test/unit/matcher_t.c\
test/unit/percent_t.c\
test/unit/string_t.c\
test/unit/run.c
UNIT_OBJECTS=$(UNIT_SOURCE:%.c=%.o)
VPATH = $(srcdir)
UNITS = \
bcache_t.c \
bitset_t.c\
config_t.c\
dmlist_t.c\
dmstatus_t.c\
matcher_t.c\
percent_t.c\
string_t.c\
run.c
UNIT_LDLIBS += $(LVMINTERNAL_LIBS) -ldevmapper -laio -lcunit
ifeq ("@TESTING@", "yes")
SOURCES = $(UNITS)
TARGETS = run
endif
include $(top_builddir)/make.tmpl
ifeq ($(MAKECMDGOALS),distclean)
SOURCES = $(UNITS)
endif
ifeq ("$(TESTING)", "yes")
LDLIBS += $(LVMINTERNAL_LIBS) -ldevmapper -laio @CUNIT_LIBS@
CFLAGS += @CUNIT_CFLAGS@
check: unit
$(TARGETS): $(OBJECTS) $(top_builddir)/libdm/libdevmapper.$(LIB_SUFFIX)
test/unit/run: $(UNIT_OBJECTS) libdm/libdevmapper.$(LIB_SUFFIX) lib/liblvm-internal.a
$(CC) $(CFLAGS) $(LDFLAGS) $(EXTRA_EXEC_LDFLAGS) -L$(top_builddir)/libdm \
-o $@ $(OBJECTS) $(LDLIBS)
-o $@ $(UNIT_OBJECTS) $(UNIT_LDLIBS)
unit: $(TARGETS) $(top_builddir)/lib/liblvm-internal.a
unit-test: test/unit/run
@echo Running unit tests
LD_LIBRARY_PATH=$(top_builddir)/libdm ./$(TARGETS)
endif
LD_LIBRARY_PATH=libdm test/unit/run