mirror of
git://sourceware.org/git/libabigail.git
synced 2025-01-02 23:42:05 +00:00
3e93b0f222
If the 'big-tests' sub-directory (or a symbolic link to it) is present then this patch configures it. By default, the patch defines a new git sub-module into the 'big-tests' sub-directory. That git sub-module is the repository git://sourceware.org/git/libabigail-tests. Users can now add the --recurse-submodules option to git clone when they clone git://sourceware.org/git/libabigail, so that it clones git big-tests submodule as well. The patch adds a new 'big-tests' target (to the top-most Makefile.am) which runs "make check" in the big-tests sub-directory. The patch also adds a new 'full-check' target that runs targets check, check-self-compare and big-tests. * Makefile.am: Add big-tests,clean-big-tests and full-check targets. * configure.ac: Add an --enable-big-tests option. For now, this option is mandatory to handle the optional 'big-tests' support. If the --enable-big-tests option is provided and if the 'big-tests' sub-directory is present, configure the big-tests/ sub-package. * .gitmodules: New sub-module configuration to get git://sourceware.org/git/libabigail-tests and stick into ... * big-tests: ... this directory as a sub-module. * CONTRIBUTING: Update this to explain how to get the Big Tests going. * tests/Makefile.am: Update the test summary for the check-self-compare target. Signed-off-by: Dodji Seketeli <dodji@redhat.com>
104 lines
2.5 KiB
Makefile
104 lines
2.5 KiB
Makefile
## SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
SUBDIRS = include src tools tests doc bash-completion
|
|
ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
|
|
headers = config.h
|
|
|
|
m4datadir = $(datadir)/aclocal
|
|
m4data_DATA = $(srcdir)/abigail.m4
|
|
|
|
pkgconfigdir = $(libdir)/pkgconfig
|
|
pkgconfig_DATA = libabigail.pc
|
|
|
|
dist_noinst_DATA = default.abignore
|
|
abigaillibdir = $(pkglibdir)
|
|
abigaillib_DATA = default.abignore
|
|
|
|
#bashcompletiondir = $(datadir)/bash-completion/completions
|
|
#dist_bashcompletion_DATA =
|
|
|
|
EXTRA_DIST = \
|
|
autoconf-archive/ax_check_python_modules.m4 \
|
|
autoconf-archive/ax_prog_python_version.m4 \
|
|
autoconf-archive/ax_compare_version.m4 \
|
|
NEWS README LICENSE.txt license-change-2020.txt \
|
|
COMPILING COMMIT-LOG-GUIDELINES VISIBILITY \
|
|
ChangeLog gen-changelog.py \
|
|
$(headers) $(m4data_DATA) \
|
|
libabigail.pc.in
|
|
|
|
# automake already tells which subdir is being entered.
|
|
# Don't make make repeat.
|
|
AM_MAKEFLAGS = --no-print-directory
|
|
|
|
.PHONY: doc big-tests
|
|
|
|
doc: html-doc man info
|
|
|
|
html-doc:
|
|
$(MAKE) -C doc html-doc
|
|
$(MAKE) -C doc/manuals html-doc
|
|
|
|
man:
|
|
$(MAKE) -C doc/manuals man
|
|
|
|
info:
|
|
$(MAKE) -C doc/manuals info
|
|
|
|
check-valgrind:
|
|
$(MAKE) -C tests check-valgrind
|
|
|
|
check-valgrind-recursive:
|
|
$(MAKE) -C tests check-valgrind-memcheck-recursive
|
|
|
|
update-changelog:
|
|
python $(srcdir)/gen-changelog.py > $(srcdir)/ChangeLog
|
|
|
|
TARBALL = $(PACKAGE_NAME)-$(VERSION).tar.xz
|
|
RELEASED_BRANCH = master
|
|
|
|
$(TARBALL): distcheck
|
|
|
|
tag-release-only:
|
|
git tag -m "$(PACKAGE_NAME) release $(VERSION)" \
|
|
"$(PACKAGE_NAME)-$(VERSION)" $(RELEASED_BRANCH)
|
|
|
|
tag-release: tag-release-only
|
|
|
|
upload-release-only:
|
|
scp $(TARBALL) sourceware.org:/var/ftp/pub/libabigail
|
|
|
|
tarball: $(TARBALL)
|
|
|
|
upload-release: tarball tag-release upload-release-only
|
|
|
|
release: upload-release
|
|
|
|
upload-release: tarball-and-tag-and-upload
|
|
|
|
tarball-and-tag-and-upload: tarball-and-all
|
|
|
|
tarball-and-all: tag-and-all
|
|
$(MAKE) tarball
|
|
|
|
tag-and-all: distcheck check-self-compare
|
|
$(MAKE) tag-release-only
|
|
|
|
# the default for GZIP_ENV is --best, which is pretty slow for check runs
|
|
# distcheck-fast therefore compresses with --fast instead
|
|
distcheck-fast:
|
|
$(MAKE) distcheck GZIP_ENV="--fast" XZ_OPT="-0"
|
|
|
|
# This makes us compare libabigail.so against its own ABIXML
|
|
# representation. It's super slow (more than 5 minutes on one of my
|
|
# old boxes) so I do this only before releases.
|
|
check-self-compare:
|
|
$(MAKE) -C tests check-self-compare
|
|
|
|
big-tests:
|
|
test -d big-tests && $(MAKE) -C big-tests check
|
|
|
|
clean-big-tests:
|
|
test -d big-tests && $(MAKE) -C big-tests clean
|
|
|
|
full-check: check check-self-compare big-tests
|