We're going to have a few more CI-related files in a second, and
it makes sense to have a separate directory for them rather than
littering the root directory.
$(CI_SCRATCHDIR) can now also be created inside the CI directory,
and as a bonus the make rune necessary to start CI builds without
running configure first becomes shorter.
Signed-off-by: Andrea Bolognani <abologna(a)redhat.com>
---
.gitignore | 2 +-
.travis.yml | 8 ++++----
Makefile.am | 4 ++--
Makefile.ci => ci/Makefile | 17 ++++++++---------
4 files changed, 15 insertions(+), 16 deletions(-)
rename Makefile.ci => ci/Makefile (96%)
diff --git a/.gitignore b/.gitignore
index dd5d35c762..82495e8692 100644
--- a/.gitignore
+++ b/.gitignore
@@ -44,7 +44,7 @@
/autom4te.cache
/build-aux/*
/build/
-/ci-tree/
+/ci/scratch/
/confdefs.h
/config.cache
/config.guess
diff --git a/.travis.yml b/.travis.yml
index b510c81083..db573fd496 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -22,28 +22,28 @@ matrix:
- IMAGE="ubuntu-18"
- MAKE_ARGS="syntax-check distcheck"
script:
- - make -f Makefile.ci ci-build@$IMAGE CI_MAKE_ARGS="$MAKE_ARGS"
+ - make -C ci/ ci-build@$IMAGE CI_MAKE_ARGS="$MAKE_ARGS"
- services:
- docker
env:
- IMAGE="centos-7"
- MAKE_ARGS="syntax-check distcheck"
script:
- - make -f Makefile.ci ci-build@$IMAGE CI_MAKE_ARGS="$MAKE_ARGS"
+ - make -C ci/ ci-build@$IMAGE CI_MAKE_ARGS="$MAKE_ARGS"
- services:
- docker
env:
- IMAGE="fedora-rawhide"
- MINGW="mingw32"
script:
- - make -f Makefile.ci ci-build@$IMAGE CI_CONFIGURE="$MINGW-configure"
+ - make -C ci/ ci-build@$IMAGE CI_CONFIGURE="$MINGW-configure"
- services:
- docker
env:
- IMAGE="fedora-rawhide"
- MINGW="mingw64"
script:
- - make -f Makefile.ci ci-build@$IMAGE CI_CONFIGURE="$MINGW-configure"
+ - make -C ci/ ci-build@$IMAGE CI_CONFIGURE="$MINGW-configure"
- compiler: clang
language: c
os: osx
diff --git a/Makefile.am b/Makefile.am
index 27c49280c4..b743b4b08b 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -35,7 +35,6 @@ EXTRA_DIST = \
libvirt-qemu.pc.in \
libvirt-lxc.pc.in \
libvirt-admin.pc.in \
- Makefile.ci \
Makefile.nonreentrant \
autogen.sh \
cfg.mk \
@@ -51,6 +50,7 @@ EXTRA_DIST = \
build-aux/prohibit-duplicate-header.pl \
build-aux/useless-if-before-free \
build-aux/vc-list-files \
+ ci/Makefile \
$(NULL)
pkgconfigdir = $(libdir)/pkgconfig
@@ -123,4 +123,4 @@ gen-AUTHORS:
fi
ci-%:
- $(MAKE) -f Makefile.ci $@
+ $(MAKE) -C ci/ $@
diff --git a/Makefile.ci b/ci/Makefile
similarity index 96%
rename from Makefile.ci
rename to ci/Makefile
index 86e936aef8..350eb636cd 100644
--- a/Makefile.ci
+++ b/ci/Makefile
@@ -1,16 +1,15 @@
# -*- makefile -*-
# vim: filetype=make
-# Figure out name and path to this file. This isn't
-# portable but we only care for modern GNU make
-CI_MAKEFILE = $(abspath $(firstword $(MAKEFILE_LIST)))
+# The root directory of the libvirt.git checkout
+CI_GIT_ROOT = $(shell git rev-parse --show-toplevel)
+
+# The root directory for all CI-related contents
+CI_ROOTDIR = $(CI_GIT_ROOT)/ci
# The directory holding content on the host that we will
# expose to the container.
-CI_SCRATCHDIR = $(shell pwd)/ci-tree
-
-# The root directory of the libvirt.git checkout
-CI_GIT_ROOT = $(shell git rev-parse --show-toplevel)
+CI_SCRATCHDIR = $(CI_ROOTDIR)/scratch
# The directory holding the clone of the git repo that
# we will expose to the container
@@ -178,7 +177,7 @@ ci-prepare-tree: ci-check-engine
cp /etc/group $(CI_SCRATCHDIR); \
echo "Cloning $(CI_GIT_ROOT) to $(CI_HOST_SRCDIR)"; \
git clone $(CI_GIT_ARGS) $(CI_GIT_ROOT) $(CI_HOST_SRCDIR) || exit 1; \
- for mod in $$(git submodule | awk '{ print $$2 }') ; \
+ for mod in $$(git submodule | awk '{ print $$2 }' | sed -E 's,^../,,g')
; \
do \
test -f $(CI_GIT_ROOT)/$$mod/.git || continue ; \
echo "Cloning $(CI_GIT_ROOT)/$$mod to $(CI_HOST_SRCDIR)/$$mod"; \
@@ -221,7 +220,7 @@ ci-build@%: ci-prepare-tree
@test "$(CI_CLEAN)" = "1" && rm -rf $(CI_SCRATCHDIR) || :
ci-check@%:
- $(MAKE) -f $(CI_MAKEFILE) ci-build@$* CI_MAKE_ARGS="check"
+ $(MAKE) -C $(CI_ROOTDIR) ci-build@$* CI_MAKE_ARGS="check"
ci-shell@%: ci-prepare-tree
$(CI_ENGINE) run $(CI_ENGINE_ARGS) $(CI_IMAGE_PREFIX)$*$(CI_IMAGE_TAG) /bin/bash
--
2.21.0