xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Juergen Gross <jgross@suse.com>
To: minios-devel@lists.xenproject.org, xen-devel@lists.xenproject.org
Cc: Juergen Gross <jgross@suse.com>,
	samuel.thibault@ens-lyon.org, wei.liu2@citrix.com
Subject: [PATCH 2/3] mini-os: add testbuild target to Makefile
Date: Fri,  2 Sep 2016 10:56:46 +0200	[thread overview]
Message-ID: <1472806607-4970-3-git-send-email-jgross@suse.com> (raw)
In-Reply-To: <1472806607-4970-1-git-send-email-jgross@suse.com>

Add a "testbuild" target to the Makefile to test building a set of
pre-defined configurations.

Configurations tested are stored under arch/<arch>/testbuild in form
of configuration files. All configurations found there are built in
a local directory.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 Makefile                      | 10 ++++++++++
 arch/x86/arch.mk              |  2 ++
 arch/x86/testbuild/all-no     | 18 ++++++++++++++++++
 arch/x86/testbuild/all-yes    | 19 +++++++++++++++++++
 arch/x86/testbuild/balloon    |  2 ++
 arch/x86/testbuild/newxen     |  1 +
 arch/x86/testbuild/newxen-yes | 20 ++++++++++++++++++++
 arch/x86/testbuild/std        |  0
 8 files changed, 72 insertions(+)
 create mode 100644 arch/x86/testbuild/all-no
 create mode 100644 arch/x86/testbuild/all-yes
 create mode 100644 arch/x86/testbuild/balloon
 create mode 100644 arch/x86/testbuild/newxen
 create mode 100644 arch/x86/testbuild/newxen-yes
 create mode 100644 arch/x86/testbuild/std

diff --git a/Makefile b/Makefile
index 8e8e56e..81b936f 100644
--- a/Makefile
+++ b/Makefile
@@ -178,6 +178,16 @@ clean:	arch_clean
 	$(RM) $(OBJ_DIR)/lwip.a $(LWO)
 	rm -f tags TAGS
 
+.PHONY: testbuild
+TEST_CONFIGS := $(wildcard $(CURDIR)/$(TARGET_ARCH_DIR)/testbuild/*)
+testbuild:
+	for arch in $(MINIOS_TARGET_ARCHS); do \
+		for conf in $(TEST_CONFIGS); do \
+			$(MAKE) clean; \
+			MINIOS_TARGET_ARCH=$$arch MINIOS_CONFIG=$$conf $(MAKE) || exit 1; \
+		done; \
+	done
+	$(MAKE) clean
 
 define all_sources
      ( find . -name '*.[chS]' -print )
diff --git a/arch/x86/arch.mk b/arch/x86/arch.mk
index 673a19d..c87885f 100644
--- a/arch/x86/arch.mk
+++ b/arch/x86/arch.mk
@@ -3,6 +3,8 @@
 # (including x86_32, x86_32y and x86_64).
 #
 
+MINIOS_TARGET_ARCHS := x86_32 x86_64
+
 ifeq ($(MINIOS_TARGET_ARCH),x86_32)
 ARCH_CFLAGS  := -m32 -march=i686
 ARCH_LDFLAGS := -m elf_i386
diff --git a/arch/x86/testbuild/all-no b/arch/x86/testbuild/all-no
new file mode 100644
index 0000000..78720c3
--- /dev/null
+++ b/arch/x86/testbuild/all-no
@@ -0,0 +1,18 @@
+CONFIG_PARAVIRT = n
+CONFIG_START_NETWORK = n
+CONFIG_SPARSE_BSS = n
+CONFIG_QEMU_XS_ARGS = n
+CONFIG_TEST = n
+CONFIG_PCIFRONT = n
+CONFIG_BLKFRONT = n
+CONFIG_TPMFRONT = n
+CONFIG_TPM_TIS = n
+CONFIG_TPMBACK = n
+CONFIG_NETFRONT = n
+CONFIG_FBFRONT = n
+CONFIG_KBDFRONT = n
+CONFIG_CONSFRONT = n
+CONFIG_XENBUS = n
+CONFIG_XC = n
+CONFIG_LWIP = n
+CONFIG_BALLOON = n
diff --git a/arch/x86/testbuild/all-yes b/arch/x86/testbuild/all-yes
new file mode 100644
index 0000000..303c56b
--- /dev/null
+++ b/arch/x86/testbuild/all-yes
@@ -0,0 +1,19 @@
+CONFIG_PARAVIRT = y
+CONFIG_START_NETWORK = y
+CONFIG_SPARSE_BSS = y
+CONFIG_QEMU_XS_ARGS = y
+CONFIG_TEST = y
+CONFIG_PCIFRONT = y
+CONFIG_BLKFRONT = y
+CONFIG_TPMFRONT = y
+CONFIG_TPM_TIS = y
+CONFIG_TPMBACK = y
+CONFIG_NETFRONT = y
+CONFIG_FBFRONT = y
+CONFIG_KBDFRONT = y
+CONFIG_CONSFRONT = y
+CONFIG_XENBUS = y
+CONFIG_XC = y
+# LWIP is special: it needs support from outside
+CONFIG_LWIP = n
+CONFIG_BALLOON = y
diff --git a/arch/x86/testbuild/balloon b/arch/x86/testbuild/balloon
new file mode 100644
index 0000000..6fa5eef
--- /dev/null
+++ b/arch/x86/testbuild/balloon
@@ -0,0 +1,2 @@
+CONFIG_PARAVIRT = n
+CONFIG_BALLOON = y
diff --git a/arch/x86/testbuild/newxen b/arch/x86/testbuild/newxen
new file mode 100644
index 0000000..b412924
--- /dev/null
+++ b/arch/x86/testbuild/newxen
@@ -0,0 +1 @@
+XEN_INTERFACE_VERSION=__XEN_LATEST_INTERFACE_VERSION__
diff --git a/arch/x86/testbuild/newxen-yes b/arch/x86/testbuild/newxen-yes
new file mode 100644
index 0000000..907a8a0
--- /dev/null
+++ b/arch/x86/testbuild/newxen-yes
@@ -0,0 +1,20 @@
+CONFIG_PARAVIRT = y
+CONFIG_START_NETWORK = y
+CONFIG_SPARSE_BSS = y
+CONFIG_QEMU_XS_ARGS = y
+CONFIG_TEST = y
+CONFIG_PCIFRONT = y
+CONFIG_BLKFRONT = y
+CONFIG_TPMFRONT = y
+CONFIG_TPM_TIS = y
+CONFIG_TPMBACK = y
+CONFIG_NETFRONT = y
+CONFIG_FBFRONT = y
+CONFIG_KBDFRONT = y
+CONFIG_CONSFRONT = y
+CONFIG_XENBUS = y
+CONFIG_XC = y
+# LWIP is special: it needs support from outside
+CONFIG_LWIP = n
+CONFIG_BALLOON = y
+XEN_INTERFACE_VERSION=__XEN_LATEST_INTERFACE_VERSION__
diff --git a/arch/x86/testbuild/std b/arch/x86/testbuild/std
new file mode 100644
index 0000000..e69de29
-- 
2.6.6


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

  parent reply	other threads:[~2016-09-02  8:56 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-09-02  8:56 [PATCH 0/3] mini-os: test and document config variations Juergen Gross
2016-09-02  8:56 ` [PATCH 1/3] mini-os: fix builds with uncommon config settings Juergen Gross
2016-09-03  0:38   ` Samuel Thibault
2016-09-02  8:56 ` Juergen Gross [this message]
2016-09-03  0:41   ` [PATCH 2/3] mini-os: add testbuild target to Makefile Samuel Thibault
2016-09-05  6:12     ` Juergen Gross
2016-09-02  8:56 ` [PATCH 3/3] mini-os: update README to reflect recent changes Juergen Gross
2016-09-03  0:43   ` Samuel Thibault
2016-09-05 11:17 ` [PATCH 0/3] mini-os: test and document config variations Wei Liu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1472806607-4970-3-git-send-email-jgross@suse.com \
    --to=jgross@suse.com \
    --cc=minios-devel@lists.xenproject.org \
    --cc=samuel.thibault@ens-lyon.org \
    --cc=wei.liu2@citrix.com \
    --cc=xen-devel@lists.xenproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).