mirror of
git://sourceware.org/git/lvm2.git
synced 2024-12-21 13:34:40 +03:00
895ee61642
test distclean uses tools so must distclean tools after test
185 lines
4.8 KiB
Makefile
185 lines
4.8 KiB
Makefile
#
|
|
# Copyright (C) 2001-2004 Sistina Software, Inc. All rights reserved.
|
|
# Copyright (C) 2004-2010 Red Hat, Inc. All rights reserved.
|
|
#
|
|
# This file is part of LVM2.
|
|
#
|
|
# This copyrighted material is made available to anyone wishing to use,
|
|
# modify, copy, or redistribute it subject to the terms and conditions
|
|
# of the GNU General Public License v.2.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program; if not, write to the Free Software Foundation,
|
|
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
|
|
srcdir = @srcdir@
|
|
top_srcdir = @top_srcdir@
|
|
top_builddir = @top_builddir@
|
|
|
|
SUBDIRS = doc include man
|
|
|
|
ifeq ("@UDEV_RULES@", "yes")
|
|
SUBDIRS += udev
|
|
endif
|
|
|
|
ifeq ("@INTL@", "yes")
|
|
SUBDIRS += po
|
|
endif
|
|
|
|
SUBDIRS += lib tools daemons libdm libdaemon
|
|
|
|
ifeq ("@APPLIB@", "yes")
|
|
SUBDIRS += liblvm
|
|
endif
|
|
|
|
ifeq ("@PYTHON_BINDINGS@", "yes")
|
|
SUBDIRS += python
|
|
endif
|
|
|
|
SUBDIRS += scripts
|
|
|
|
# FIXME Should use intermediate Makefiles here!
|
|
ifeq ($(MAKECMDGOALS),distclean)
|
|
SUBDIRS = doc include man test scripts \
|
|
libdaemon lib tools daemons libdm \
|
|
udev po liblvm python \
|
|
unit-tests/datastruct unit-tests/mm unit-tests/regex
|
|
tools.distclean: test.distclean
|
|
endif
|
|
DISTCLEAN_DIRS += lcov_reports*
|
|
DISTCLEAN_TARGETS += config.cache config.log config.status make.tmpl
|
|
|
|
include make.tmpl
|
|
|
|
libdm: include
|
|
lib: libdm libdaemon
|
|
liblvm: lib
|
|
daemons: lib libdaemon tools
|
|
tools: lib libdaemon device-mapper
|
|
po: tools daemons
|
|
scripts: liblvm libdm
|
|
|
|
lib.device-mapper: include.device-mapper
|
|
libdm.device-mapper: include.device-mapper
|
|
liblvm.device-mapper: include.device-mapper
|
|
daemons.device-mapper: libdm.device-mapper
|
|
tools.device-mapper: libdm.device-mapper
|
|
device-mapper: tools.device-mapper daemons.device-mapper man.device-mapper
|
|
|
|
ifeq ("@INTL@", "yes")
|
|
lib.pofile: include.pofile
|
|
tools.pofile: lib.pofile
|
|
daemons.pofile: lib.pofile
|
|
po.pofile: tools.pofile daemons.pofile
|
|
pofile: po.pofile
|
|
endif
|
|
|
|
ifeq ("@PYTHON_BINDINGS@", "yes")
|
|
python: liblvm
|
|
endif
|
|
|
|
ifneq ("$(CFLOW_CMD)", "")
|
|
tools.cflow: libdm.cflow lib.cflow
|
|
daemons.cflow: tools.cflow
|
|
cflow: include.cflow
|
|
endif
|
|
|
|
ifneq ("@CSCOPE_CMD@", "")
|
|
cscope.out:
|
|
@CSCOPE_CMD@ -b -R -s$(top_srcdir)
|
|
all: cscope.out
|
|
endif
|
|
DISTCLEAN_TARGETS += cscope.out
|
|
|
|
check check_cluster check_local check_lvmetad unit: all
|
|
$(MAKE) -C test $(@)
|
|
|
|
install_system_dirs:
|
|
$(INSTALL_DIR) $(DESTDIR)$(DEFAULT_SYS_DIR)
|
|
$(INSTALL_ROOT_DIR) $(DESTDIR)$(DEFAULT_ARCHIVE_DIR)
|
|
$(INSTALL_ROOT_DIR) $(DESTDIR)$(DEFAULT_BACKUP_DIR)
|
|
$(INSTALL_ROOT_DIR) $(DESTDIR)$(DEFAULT_CACHE_DIR)
|
|
$(INSTALL_ROOT_DIR) $(DESTDIR)$(DEFAULT_LOCK_DIR)
|
|
$(INSTALL_ROOT_DIR) $(DESTDIR)$(DEFAULT_RUN_DIR)
|
|
$(INSTALL_ROOT_DATA) /dev/null $(DESTDIR)$(DEFAULT_CACHE_DIR)/.cache
|
|
|
|
install_initscripts:
|
|
$(MAKE) -C scripts install_initscripts
|
|
|
|
install_systemd_generators:
|
|
$(MAKE) -C scripts install_systemd_generators
|
|
|
|
install_systemd_units:
|
|
$(MAKE) -C scripts install_systemd_units
|
|
|
|
ifeq ("@PYTHON_BINDINGS@", "yes")
|
|
install_python_bindings:
|
|
$(MAKE) -C liblvm/python install_python_bindings
|
|
endif
|
|
|
|
install_tmpfiles_configuration:
|
|
$(MAKE) -C scripts install_tmpfiles_configuration
|
|
|
|
LCOV_TRACES = libdm.info lib.info tools.info \
|
|
daemons/dmeventd.info daemons/clvmd.info
|
|
CLEAN_TARGETS += $(LCOV_TRACES)
|
|
|
|
ifneq ("$(LCOV)", "")
|
|
.PHONY: lcov-reset lcov lcov-dated $(LCOV_TRACES)
|
|
|
|
ifeq ($(MAKECMDGOALS),lcov-dated)
|
|
LCOV_REPORTS_DIR := lcov_reports-$(shell date +%Y%m%d%k%M%S)
|
|
lcov-dated: lcov
|
|
else
|
|
LCOV_REPORTS_DIR := lcov_reports
|
|
endif
|
|
|
|
lcov-reset:
|
|
$(LCOV) --zerocounters $(addprefix -d , $(basename $(LCOV_TRACES)))
|
|
|
|
# maybe use subdirs processing to create tracefiles...
|
|
$(LCOV_TRACES):
|
|
$(LCOV) -b $(basename $@) -d $(basename $@) \
|
|
--ignore-errors source -c -o - | $(SED) \
|
|
-e "s/\(dmeventd_lvm.[ch]\)/plugins\/lvm2\/\1/" \
|
|
-e "s/dmeventd_\(mirror\|snapshot\|thin\|raid\)\.c/plugins\/\1\/dmeventd_\1\.c/" \
|
|
>$@
|
|
|
|
ifneq ("$(GENHTML)", "")
|
|
lcov: $(LCOV_TRACES)
|
|
$(RM) -r $(LCOV_REPORTS_DIR)
|
|
$(MKDIR_P) $(LCOV_REPORTS_DIR)
|
|
for i in $(LCOV_TRACES); do \
|
|
test -s $$i && lc="$$lc $$i"; \
|
|
done; \
|
|
test -z "$$lc" || $(GENHTML) -p @abs_top_builddir@ \
|
|
-o $(LCOV_REPORTS_DIR) $$lc
|
|
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
|
|
endif
|