Update common to get this commit: mldrivers: New directory containing driver detection code Move the existing code from virt-v2v for handling driver detection. This is just code motion from virt-v2v, so that we can create a new tool (in guestfs-tools) called 'virt-drivers'. This so far only handles Linux (because virt-v2v doesn't do Windows driver detection), but we will add Windows support in future. This is just code motion.
215 lines
5.5 KiB
Makefile
215 lines
5.5 KiB
Makefile
# libguestfs
|
|
# Copyright (C) 2009-2020 Red Hat Inc.
|
|
#
|
|
# This program is free software; you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation; either version 2 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
|
|
|
include $(top_srcdir)/common-rules.mk
|
|
|
|
ACLOCAL_AMFLAGS = -I m4
|
|
|
|
SUBDIRS = common/mlstdutils
|
|
|
|
# Files and other test data used by the tests. Must be before any
|
|
# tests run, except tests/qemu.
|
|
SUBDIRS += test-data
|
|
|
|
SUBDIRS += gnulib/lib
|
|
|
|
SUBDIRS += common/qemuopts
|
|
SUBDIRS += common/utils
|
|
SUBDIRS += common/mlutils
|
|
SUBDIRS += common/mlpcre
|
|
SUBDIRS += common/options
|
|
SUBDIRS += common/mlgettext
|
|
SUBDIRS += common/mlxml
|
|
SUBDIRS += common/mltools
|
|
SUBDIRS += common/mlcustomize
|
|
SUBDIRS += common/mldrivers
|
|
SUBDIRS += common/mlv2v
|
|
SUBDIRS += lib
|
|
SUBDIRS += input
|
|
SUBDIRS += output
|
|
SUBDIRS += convert
|
|
SUBDIRS += v2v
|
|
SUBDIRS += inspector
|
|
SUBDIRS += in-place
|
|
|
|
SUBDIRS += tests
|
|
|
|
# bash-completion
|
|
SUBDIRS += bash
|
|
|
|
# Documentation
|
|
SUBDIRS += docs
|
|
|
|
# After all source files were used we can generate the translation strings
|
|
SUBDIRS += po
|
|
|
|
# po-docs must come after tools, inspector.
|
|
if HAVE_PO4A
|
|
SUBDIRS += po-docs
|
|
endif
|
|
|
|
EXTRA_DIST = \
|
|
.gitignore \
|
|
bugs-in-changelog.sh \
|
|
build-aux/config.rpath \
|
|
cfg.mk \
|
|
check-mli.sh \
|
|
common/.gitignore \
|
|
common/README \
|
|
COPYING \
|
|
ocaml-link.sh \
|
|
podcheck.pl \
|
|
scripts/git.orderfile \
|
|
tmp/.gitignore \
|
|
valgrind-suppressions \
|
|
website/bugs.png \
|
|
website/communicate.png \
|
|
website/documentation.png \
|
|
website/download.png \
|
|
website/draft.png \
|
|
website/draft.svg \
|
|
website/easytoread.css \
|
|
website/feed.css \
|
|
website/fish-5yrs.svg \
|
|
website/fish.png \
|
|
website/git.png \
|
|
website/index.css \
|
|
website/index.html.in \
|
|
website/pod.css \
|
|
website/standard.css
|
|
|
|
# When doing 'make dist' update a few files automatically.
|
|
#
|
|
# po/POTFILES - files with ordinary extensions, but not OCaml files
|
|
# po/POTFILES-ml - OCaml files, which need a special tool to translate
|
|
|
|
dist-hook: po/POTFILES po/POTFILES-ml
|
|
|
|
# For more information about translations, see po/Makefile.am.
|
|
po/POTFILES: configure.ac
|
|
rm -f $@ $@-t
|
|
cd $(srcdir); \
|
|
find $(DIST_SUBDIRS) -name '*.c' | \
|
|
grep -v -E '^(po-docs|tests|test-data)/' | \
|
|
grep -v -E '/(dummy\.c)$$' | \
|
|
grep -v -E '.*-(tests)\.c$$' | \
|
|
LC_ALL=C sort -u > $@-t
|
|
mv $@-t $@
|
|
|
|
po/POTFILES-ml: configure.ac
|
|
rm -f $@ $@-t
|
|
cd $(srcdir); \
|
|
find common/ml* lib in-place input inspector output v2v -name '*.ml' | \
|
|
grep -v '^common/mlprogress/' | \
|
|
grep -v '^common/mlvisit/' | \
|
|
grep -v '^lib/config.ml$$' | \
|
|
grep -v -E '.*_tests\.ml$$' | \
|
|
LC_ALL=C sort > $@-t
|
|
mv $@-t $@
|
|
|
|
# NB. podwrapper is an internal tool, so the man page mustn't be installed.
|
|
# It should be noinst_MANS but that doesn't work.
|
|
noinst_DATA = podwrapper.1
|
|
podwrapper.1: podwrapper.pl
|
|
$(PODWRAPPER) \
|
|
--section 1 \
|
|
--man $@-t \
|
|
--license GPLv2+ \
|
|
--warning safe \
|
|
$<
|
|
mv $@-t $@
|
|
|
|
# Make clean.
|
|
|
|
CLEANFILES += \
|
|
pod2htm?.tmp \
|
|
tmp/disk* \
|
|
tmp/run-* \
|
|
tmp/valgrind-*.log
|
|
|
|
clean-local:
|
|
-rm -rf tmp/libguestfs??????
|
|
-rm -rf tmp/guestfs.*
|
|
-rm -rf tmp/.guestfs-*
|
|
-rm -rf tmp/null.*
|
|
-find tmp -type s -delete
|
|
-find . -name '*~' -delete
|
|
|
|
check-valgrind: build-test-guests
|
|
@errors=0; \
|
|
for f in `grep -l '^$@:' $(SUBDIRS:%=%/Makefile.am)`; do \
|
|
echo $(MAKE) -C `dirname $$f` $@; \
|
|
$(MAKE) -C `dirname $$f` $@ || (( errors++ )); \
|
|
done; \
|
|
exit $$(( $$errors ? 1 : 0 ))
|
|
|
|
check-slow: build-test-guests
|
|
@errors=0; \
|
|
for f in `grep -l '^$@:' $(SUBDIRS:%=%/Makefile.am)`; do \
|
|
echo $(MAKE) -C `dirname $$f` $@; \
|
|
$(MAKE) -C `dirname $$f` $@ || (( errors++ )); \
|
|
done; \
|
|
exit $$(( $$errors ? 1 : 0 ))
|
|
|
|
build-test-guests:
|
|
$(MAKE) -C test-data/phony-guests check
|
|
|
|
# Some tests which run at the top level.
|
|
|
|
TESTS = check-mli.sh
|
|
|
|
# Commit everything in current directory to HEAD, and set commit
|
|
# message to current version (only for maintainer).
|
|
|
|
maintainer-commit:
|
|
git commit -a -m "Version $(VERSION)."
|
|
|
|
# Tag HEAD with current version (only for maintainer).
|
|
|
|
maintainer-tag:
|
|
git tag -a "v$(VERSION)" -m "Version $(VERSION) ($(BRANCH_TYPE))" -f
|
|
|
|
# Maintainer only: check no files are missing from EXTRA_DIST rules,
|
|
# and that all generated files have been included in the tarball.
|
|
# (Note you must have done 'make dist')
|
|
|
|
maintainer-check-extra-dist:
|
|
zcat $(PACKAGE_NAME)-$(VERSION).tar.gz | tar tf - | sort | \
|
|
sed 's,^$(PACKAGE_NAME)-$(VERSION)/,,' > tmp/tarfiles
|
|
( git ls-files ; \
|
|
cd common; git ls-files | sed 's,^,common/,' ) | \
|
|
grep -v '^common$$' | \
|
|
grep -v '^common/edit/' | \
|
|
grep -v '^common/errnostring/' | \
|
|
grep -v '^common/mlprogress/' | \
|
|
grep -v '^common/mlvisit/' | \
|
|
grep -v '^common/parallel/' | \
|
|
grep -v '^common/progress/' | \
|
|
grep -v '^common/protocol/' | \
|
|
grep -v '^common/structs/' | \
|
|
grep -v '^common/visit/' | \
|
|
grep -v '^common/windows/' | \
|
|
grep -v '^intltool-.*\.in' | \
|
|
grep -v '^\.gitmodules' | \
|
|
sort > tmp/gitfiles
|
|
comm -13 tmp/tarfiles tmp/gitfiles > tmp/comm-out
|
|
@echo Checking for differences between EXTRA_DIST and git ...
|
|
cat tmp/comm-out
|
|
[ ! -s tmp/comm-out ]
|
|
rm tmp/tarfiles tmp/gitfiles tmp/comm-out
|
|
@echo PASS: EXTRA_DIST tests
|