]> xenbits.xensource.com Git - raisin.git/log
raisin.git
7 years agoHandle site-packages not existing master
Stefano Stabellini [Fri, 25 Aug 2017 20:11:07 +0000 (13:11 -0700)]
Handle site-packages not existing

Doesn't exit on error if site-packages doesn't exist

Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
7 years agoraisin/arm: properly ignore tests that don't work on ARM
Stefano Stabellini [Tue, 23 May 2017 21:40:07 +0000 (14:40 -0700)]
raisin/arm: properly ignore tests that don't work on ARM

Ignore all cirros tests on ARM for now. Print a warning for PV tests,
which could work on ARM one day (HVM tests won't work any time soon,
given that there is no HVM builder type on ARM).

Do not exit 0 when we detect ARM in a test: it causes the whole raise to
exit. Return 0 instead.

Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
7 years agoraisin: check for invalid initrds
Stefano Stabellini [Tue, 23 May 2017 21:39:55 +0000 (14:39 -0700)]
raisin: check for invalid initrds

get_host_initrd can return an invalid or null initrd. Do not set the
ramdisk option in the VM config file to an invalid value.

Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
7 years agoraisin: introduce TEST_KERNEL and TEST_INITRD
Stefano Stabellini [Tue, 23 May 2017 21:36:22 +0000 (14:36 -0700)]
raisin: introduce TEST_KERNEL and TEST_INITRD

We don't necessarely always want to guess and use the dom0 kernel and
initrd for tests. Introduce two options, TEST_KERNEL and TEST_INITRD,
that allow a user to manually specify which kernel and initrd to use.

Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
8 years agoEnable cirros tests in the default config
Géza Gémes [Sat, 25 Mar 2017 19:29:02 +0000 (20:29 +0100)]
Enable cirros tests in the default config

The existing cirros tests are enabled, with the following
exceptions:
cirros-minios-stubdom-hvm and cirros-minios-stubdom-pvhvm are
skipped as raisin does not install the stubdom

Signed-off-by: Géza Gémes <geza.gemes@gmail.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
8 years agoIntroduce cirros-minios-stubdom-pvhvm test
Géza Gémes [Sat, 25 Mar 2017 19:29:01 +0000 (20:29 +0100)]
Introduce cirros-minios-stubdom-pvhvm test

This test is similar to cirros-minios-stubdom-hvm test, differing by
explicitly exposing the xen netfront and blockfront drivers

Signed-off-by: Géza Gémes <geza.gemes@gmail.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
8 years agoIntroduce cirros-qemu-pvhvm test
Géza Gémes [Sat, 25 Mar 2017 19:29:00 +0000 (20:29 +0100)]
Introduce cirros-qemu-pvhvm test

This test is similar to cirros-qemu-hvm test, differing by
explicitly exposing the xen netfront and blockfront drivers

Signed-off-by: Géza Gémes <geza.gemes@gmail.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
8 years agoIntroduce cirros-minios-stubdom-hvm test
Géza Gémes [Sat, 25 Mar 2017 19:28:59 +0000 (20:28 +0100)]
Introduce cirros-minios-stubdom-hvm test

This test verifies a cirros based hvm domain using a minios based
stubdom as its device model

Signed-off-by: Géza Gémes <geza.gemes@gmail.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
8 years agoIntroduce cirros-qemu-hvm test
Géza Gémes [Sat, 25 Mar 2017 19:28:58 +0000 (20:28 +0100)]
Introduce cirros-qemu-hvm test

This test is the cirros equivalent of the busybox-hvm test

Signed-off-by: Géza Gémes <geza.gemes@gmail.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
8 years agoIntroduce cirros-pvgrub2-pv test
Géza Gémes [Sat, 25 Mar 2017 19:28:57 +0000 (20:28 +0100)]
Introduce cirros-pvgrub2-pv test

This test verifies booting the cirros image using pvgrub2

Signed-off-by: Géza Gémes <geza.gemes@gmail.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
8 years agoIntroduce cirros-pygrub-pv test
Géza Gémes [Sat, 25 Mar 2017 19:28:56 +0000 (20:28 +0100)]
Introduce cirros-pygrub-pv test

This test verifies booting the cirros image using pygrub

Signed-off-by: Géza Gémes <geza.gemes@gmail.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
8 years agoIntroduce cirros-separate-kernel-pv test
Géza Gémes [Sat, 25 Mar 2017 19:28:55 +0000 (20:28 +0100)]
Introduce cirros-separate-kernel-pv test

This test is the cirros equivalent of the busybox-pv test

Signed-off-by: Géza Gémes <geza.gemes@gmail.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
8 years agoIntroduce cirros tests
Géza Gémes [Sat, 25 Mar 2017 19:28:54 +0000 (20:28 +0100)]
Introduce cirros tests

Add support for using cirros images in raisin tests

Signed-off-by: Géza Gémes <geza.gemes@gmail.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
8 years agoFix installation of python libs
Géza Gémes [Sat, 25 Mar 2017 19:28:53 +0000 (20:28 +0100)]
Fix installation of python libs

Change deb package build in order to move content of the
site-packages folder to dist-packages in this way having
the libs inluded in the default PYTHONPATH

Signed-off-by: Géza Gémes <geza.gemes@gmail.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
8 years agoFix a typo in lopartsetup
Géza Gémes [Sat, 25 Mar 2017 19:21:27 +0000 (20:21 +0100)]
Fix a typo in lopartsetup

Signed-off-by: Géza Gémes <geza.gemes@gmail.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
8 years agoFix lopartsetup for util-linux >= 2.27.1
Géza Gémes [Fri, 24 Mar 2017 18:59:35 +0000 (19:59 +0100)]
Fix lopartsetup for util-linux >= 2.27.1

fdisk from util-linux >= 2.27.1 returns units in a slightly different
structure than earlier versions

Signed-off-by: Géza Gémes <geza.gemes@gmail.com>
Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
8 years agoFix lopartsetup parsing of fdisk output
Géza Gémes [Sun, 19 Mar 2017 15:23:55 +0000 (16:23 +0100)]
Fix lopartsetup parsing of fdisk output

Change lopartsetup in order to handle partitions, which have the
boot flag enabled.

Signed-off-by: Géza Gémes <geza.gemes@gmail.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
8 years agoUpdate email address for Stefano in the README
Stefano Stabellini [Sat, 18 Mar 2017 18:46:15 +0000 (11:46 -0700)]
Update email address for Stefano in the README

Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
8 years agoAllow installation on CentOS
Géza Gémes [Tue, 7 Mar 2017 07:47:58 +0000 (08:47 +0100)]
Allow installation on CentOS

Add $DISTRO = "CentOS"
to the rpm installation targets
complementing Fedora

Signed-off-by: Géza Gémes <geza.gemes@gmail.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
8 years agoFix typo in function install
Géza Gémes [Tue, 7 Mar 2017 07:18:28 +0000 (08:18 +0100)]
Fix typo in function install

Signed-off-by: Géza Gémes <geza.gemes@gmail.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
8 years agoAllow running tests as non-root
Gémes Géza [Wed, 1 Mar 2017 17:39:51 +0000 (18:39 +0100)]
Allow running tests as non-root

Allow a user with sudo rights to run the tests

Signed-off-by: Gémes Géza <geza.gemes@gmail.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
8 years agoUpdate to 4.7, update qemu and qemu_traditional recipes
George Dunlap [Mon, 13 Jun 2016 13:30:23 +0000 (14:30 +0100)]
Update to 4.7, update qemu and qemu_traditional recipes

Add a 4.7 config file, make it the default.

Also update the qemu and qemu_traditional recipies after Ian Cambell's
work to split off separate libraries.

Signed-off-by: George Dunlap <george.dunlap@citrix.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>
8 years agoUpdate config-4.6 and config-4.5 to point to stable branches; fix config-master
George Dunlap [Wed, 15 Jun 2016 13:34:04 +0000 (14:34 +0100)]
Update config-4.6 and config-4.5 to point to stable branches; fix config-master

Point xen, qemu, and qemu-trad to stable-4.5 and -4.6 branches.

And point the default libvirt to point to the libvirt 1.3.3
maintenance branch, rather than xen-tested-master.

Also update OVMF revision for 4.6 to a version that builds with modern
gccs.

Point config-master libvirt to libvirt's "master" rather than xenbits'
xen-tested-master, to avoid having to switch to xenbits repo.

Finally, fix config-master by pointing ovmf and seabios to the correct
branch (master, not xen-tested-master).

Singed-off-by: George Dunlap <george.dunlap@citrix.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>
---
v2:
 - Use libvirt-master rather than xen-tested-master for config-master
 - Fix seabios and ovmf revisions for config-master

CC: Stefano Stabellini <sstabellini@kernel.org>
8 years agoconfig: Separate config urls into a separate file
George Dunlap [Wed, 8 Jun 2016 14:12:47 +0000 (15:12 +0100)]
config: Separate config urls into a separate file

So that we're not duplicating information.

Signed-off-by: George Dunlap <george.dunlap@citrix.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>
---
CC: Stefano Stabellini <sstabellini@kernel.org>
8 years agocomponents/xen: Actually disable rombios
George Dunlap [Wed, 8 Jun 2016 13:24:03 +0000 (14:24 +0100)]
components/xen: Actually disable rombios

Commit 5fe3855 meant to disable rombios, but didn't.  This causes the following
build failure:

gcc   -O2 -fomit-frame-pointer -m32 -march=i686 -fno-strict-aliasing
-std=gnu99 -Wall -Wstrict-prototypes -Wdeclaration-after-statement
-Wno-unused-but-set-variable -Wno-unused-local-typedefs
-D__XEN_TOOLS__ -MMD -MF .rombios.o.d -D_LARGEFILE_SOURCE
-D_LARGEFILE64_SOURCE -mno-tls-direct-seg-refs  -DNDEBUG -Werror
-fno-stack-protector -fno-exceptions -fno-builtin -msoft-float
-I/usr/local/src/xenboil/raisin/xen-dir-remote/tools/firmware/hvmloader/../../../tools/include
-U__XEN_TOOLS__
-D__XEN_INTERFACE_VERSION__=__XEN_LATEST_INTERFACE_VERSION__
-DENABLE_OVMF -DENABLE_ROMBIOS -DENABLE_SEABIOS  -c -o rombios.o rombios.c
rombios.c: In function ‘rombios_load_roms’:
rombios.c:103:39: error: ‘etherboot’ undeclared (first use in this function)
                                       etherboot);

Disable rombios instead.

Reported-by: Holger Schramm <lists@schramm.by>
Signed-off-by: George Dunlap <george.dunlap@citrix.com>
Acked-by: Stefano Stabellini <sstabellini@kernel.org>
---
CC: Stefano Stabellini <sstabellini@kernel.org>
9 years agoAdd MAINTAINERS file
Stefano Stabellini [Tue, 29 Mar 2016 15:42:15 +0000 (15:42 +0000)]
Add MAINTAINERS file

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
9 years agoraisin: enable ovmf build for arm64
Stefano Stabellini [Mon, 19 Oct 2015 16:20:15 +0000 (17:20 +0100)]
raisin: enable ovmf build for arm64

nasm is not a dependency on arm64.
Print out a message that on x86_32 we are building ovmf x86_64.
Add CentOS dependencies to the ovmf component.

9 years agoraisin: disable stubdoms and etherboot in xen
Stefano Stabellini [Fri, 20 Nov 2015 10:56:43 +0000 (10:56 +0000)]
raisin: disable stubdoms and etherboot in xen

Raisin is about cloning (or downloading) components explicitly and
independently, rather than having the Xen build system clone and build
stuff as part of the build process.

Unfortunately it is not possible to build stubdoms outside the Xen tree
today, so just disable stubdoms for the moment.

Similarly etherboot support requires downloading ipxe, so remove it for
now.

With this patch, building Xen via Raisin doesn't fetch anything from the
web, aside from what is configure in the config file.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
9 years agoHandle unsupported distros with a prettier message
Doug Goldstein [Fri, 13 Nov 2015 04:08:03 +0000 (22:08 -0600)]
Handle unsupported distros with a prettier message

Handle unknown distros by saying "unknown" instead of an empty string
and for Gentoo users actually mention it.

Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
9 years agoPrint out components which are skipped because unsupported on a given platform
Stefano Stabellini [Fri, 16 Oct 2015 11:45:55 +0000 (12:45 +0100)]
Print out components which are skipped because unsupported on a given platform

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
9 years agogitignore: ignore a bunch of directories and deb file
Wei Liu [Mon, 12 Oct 2015 16:03:20 +0000 (17:03 +0100)]
gitignore: ignore a bunch of directories and deb file

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
9 years agoadd a skip function in each components to disable the build
Stefano Stabellini [Mon, 12 Oct 2015 16:28:18 +0000 (17:28 +0100)]
add a skip function in each components to disable the build

Use it to disable building unnecessary components on ARM and ARM64.
Remove the manual checks.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
9 years agoadd CentOS and Fedora ARM dependencies for libvirt
Stefano Stabellini [Mon, 12 Oct 2015 15:43:50 +0000 (16:43 +0100)]
add CentOS and Fedora ARM dependencies for libvirt

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
9 years agoDon't build grub and qemu_traditional on ARM
Stefano Stabellini [Mon, 12 Oct 2015 15:28:53 +0000 (16:28 +0100)]
Don't build grub and qemu_traditional on ARM

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
9 years agolibpciaccess-dev is required for the libvirt build
Stefano Stabellini [Mon, 12 Oct 2015 15:27:59 +0000 (16:27 +0100)]
libpciaccess-dev is required for the libvirt build

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
9 years agoProvide a Xen 4.6 config file
Stefano Stabellini [Mon, 12 Oct 2015 11:41:07 +0000 (12:41 +0100)]
Provide a Xen 4.6 config file

Move the current defconfig to configs/config-master (used to build a
system from the master branches).
Make the Xen 4.6 config file the default.
Also provide a Xen 4.5 config file.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
9 years agoFix up coding style
Doug Goldstein [Wed, 9 Sep 2015 15:08:26 +0000 (10:08 -0500)]
Fix up coding style

Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
Reviewed-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
9 years agoDelete dangling white space
Doug Goldstein [Wed, 9 Sep 2015 15:08:25 +0000 (10:08 -0500)]
Delete dangling white space

Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
Reviewed-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
9 years agoGracefully handle an unsupported distro.
Doug Goldstein [Tue, 18 Aug 2015 23:12:54 +0000 (18:12 -0500)]
Gracefully handle an unsupported distro.

When your distro is not supported, handle the case gracefully and let
the user know instead of spitting out bash errors.

Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
Reviewed-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
9 years agoraisin: add more information on how to contribute to the project
Stefano Stabellini [Wed, 19 Aug 2015 16:51:44 +0000 (16:51 +0000)]
raisin: add more information on how to contribute to the project

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
9 years agoUpdate README to reflect raise.sh/raise and config/defconfig
Stefano Stabellini [Fri, 19 Jun 2015 14:33:42 +0000 (14:33 +0000)]
Update README to reflect raise.sh/raise and config/defconfig

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
9 years agoraisin: introduce a local migration test
Stefano Stabellini [Tue, 12 May 2015 13:31:09 +0000 (13:31 +0000)]
raisin: introduce a local migration test

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
9 years agoraisin: small stlye improvement in for_each_component
Stefano Stabellini [Tue, 12 May 2015 13:30:09 +0000 (13:30 +0000)]
raisin: small stlye improvement in for_each_component

Use the found variable as a boolean.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
9 years agoraisin: improve output
Stefano Stabellini [Tue, 12 May 2015 13:29:09 +0000 (13:29 +0000)]
raisin: improve output

Introduce an error_echo function that prints to stderr.
Call error_echo or verbose_echo, instead of echo, when possible and
appropriate.
Redirect build and tests output to /dev/null unless VERBOSE==1.
Redirect apt-get and yum output to /dev/null.
Fix echo arguments in check-package-deb.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
---

Changes in v2:

- use "$@" instead of $* in error_echo and verbose_echo

9 years agoraisin: add an hvm test
Stefano Stabellini [Tue, 12 May 2015 13:28:09 +0000 (13:28 +0000)]
raisin: add an hvm test

Add a few functions to create partitions, install and configure grub in
the VM disk. Introduce a script to loopmount a partition within a VM
disk.

Add a new test that creates a local HVM guest, boots it and check the
network.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
---

Changes in v3:

- expose a _test and a _cleanup function from the test script

9 years agoraisin: introduce tests
Stefano Stabellini [Tue, 12 May 2015 13:27:09 +0000 (13:27 +0000)]
raisin: introduce tests

Introduce a new command to run functional tests and unit tests.
Introduce a generic infrastrucutre to run tests on the local machine.
Add a library of common functions that can be used by the test scripts
to setup guest VMs.

Add a simple test script that boots a single busybox based PV guest.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
---

Changes in v3:

- source test scripts
- expose a _test and a _cleanup function from the test script

Changes in v2:

- use found as a boolean
- print error to stderr

9 years agoraisin: more defconfig changes
Stefano Stabellini [Tue, 12 May 2015 13:26:09 +0000 (13:26 +0000)]
raisin: more defconfig changes

Fix LINUX_URL to be the canonical url.
Change LIBVIRT_* to point to the tree and branch tested by osstest.
Add comments for the QEMU_TRADITIONAL_REVISION and SEABIOS_REVISION
tags.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
9 years agoraisin: update defaults according to the current content of Config.mk
Stefano Stabellini [Mon, 11 May 2015 17:17:58 +0000 (17:17 +0000)]
raisin: update defaults according to the current content of Config.mk

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoraisin: do not exit if sudo is not installed.
Stefano Stabellini [Fri, 24 Apr 2015 10:40:10 +0000 (10:40 +0000)]
raisin: do not exit if sudo is not installed.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoraisin: add components/ovmf file, forgot from previous commit
Stefano Stabellini [Fri, 24 Apr 2015 10:34:01 +0000 (10:34 +0000)]
raisin: add components/ovmf file, forgot from previous commit

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoraisin: disable seabios in Xen, if the user disabled it in Raisin
Stefano Stabellini [Wed, 22 Apr 2015 15:30:07 +0000 (15:30 +0000)]
raisin: disable seabios in Xen, if the user disabled it in Raisin

If the user disabled seabios in the raisin config, disable seabios in
Xen.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoraisin: build linux
Stefano Stabellini [Tue, 21 Apr 2015 16:04:27 +0000 (16:04 +0000)]
raisin: build linux

Add a component, disabled by default, to build a linux kernel with the
Xen kconfig options enabled.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com>
10 years agoraisin: introduce ovmf
Stefano Stabellini [Tue, 21 Apr 2015 16:04:19 +0000 (16:04 +0000)]
raisin: introduce ovmf

Add a component to build ovmf and pass the output binary to the xen
build.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
---

Changes in v2:

- only enable ovmf in Xen, if we actually have built ovmf.

10 years agoraisin: pass --with-system-seabios with seabios was built
Stefano Stabellini [Tue, 21 Apr 2015 16:03:19 +0000 (16:03 +0000)]
raisin: pass --with-system-seabios with seabios was built

Detect whether we have built seabios and only pass the relative command
line argument to Xen if we actually did.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoraisin: rename ARCH to RAISIN_ARCH
Stefano Stabellini [Tue, 21 Apr 2015 15:49:50 +0000 (15:49 +0000)]
raisin: rename ARCH to RAISIN_ARCH

Rename exported environmental variable ARCH to RAISIN_ARCH not to
conflict with any component Makefile variables.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com>
10 years agoraisin: remove duplicate source config in raise
Stefano Stabellini [Tue, 21 Apr 2015 15:42:33 +0000 (15:42 +0000)]
raisin: remove duplicate source config in raise

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com>
10 years agoraisin: introduce verbose_echo
Stefano Stabellini [Tue, 21 Apr 2015 15:42:06 +0000 (15:42 +0000)]
raisin: introduce verbose_echo

A new utility function to make the code more readable and compact:
prints a message if VERBOSE = 1.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
---

Changes in v2:
- rename _verbose_echo to verbose_echo

10 years agoraisin: introduce seabios component
Stefano Stabellini [Mon, 20 Apr 2015 17:08:55 +0000 (17:08 +0000)]
raisin: introduce seabios component

Build SeaBIOS as a separate component.
Pass --with-system-seabios to the xen configure script.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com>
10 years agoraisin: add a component to build qemu_traditional
Stefano Stabellini [Mon, 20 Apr 2015 17:08:50 +0000 (17:08 +0000)]
raisin: add a component to build qemu_traditional

Introduce a component to build qemu-traditional out of xen-unstable.
Do not compile qemu-traditional from xen-unstable by passing the right
command line option to configure.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com>
10 years agoraisin: Rework component specification
George Dunlap [Mon, 20 Apr 2015 15:58:11 +0000 (15:58 +0000)]
raisin: Rework component specification

From: George Dunlap <george.dunlap@eu.citrix.com>

Allow COMPONENTS to be specified in the config (or on the command-line)

Now you can keep all components enabled in your config but build only
one like so:

COMPONENTS="xen" ./raise build

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoraisin: Fix CentOS build
George Dunlap [Mon, 20 Apr 2015 15:11:58 +0000 (15:11 +0000)]
raisin: Fix CentOS build

From: George Dunlap <george.dunlap@eu.citrix.com>

Add package dependencies for CentOS.  Also use PKGTYPE rather than
DISTRO to determine if we need rpm-build.

I've tested this for xen but not for libvirt or grub.

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoraisin: Use PKGTYPE rather than DISTRO to determine how to build a package
George Dunlap [Mon, 20 Apr 2015 15:04:58 +0000 (15:04 +0000)]
raisin: Use PKGTYPE rather than DISTRO to determine how to build a package

From: George Dunlap <george.dunlap@eu.citrix.com>

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoraisin: Use fakeroot for mkdeb so we can build the package as non-root
George Dunlap [Mon, 20 Apr 2015 15:01:33 +0000 (15:01 +0000)]
raisin: Use fakeroot for mkdeb so we can build the package as non-root

From: George Dunlap <george.dunlap@eu.citrix.com>

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
10 years agoraisin: Fix non-verbose case
George Dunlap [Mon, 20 Apr 2015 14:58:36 +0000 (14:58 +0000)]
raisin: Fix non-verbose case

From: George Dunlap <george.dunlap@eu.citrix.com>

Because we use "set -e", we can't use the "a && b" construct, as it will fail and stop the script.

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoraisin: remove useless comments and replace them with :
Stefano Stabellini [Mon, 20 Apr 2015 14:31:35 +0000 (14:31 +0000)]
raisin: remove useless comments and replace them with :

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoraisin: build QEMU more specifically for Xen and install under /usr/lib/xen/bin
Stefano Stabellini [Thu, 16 Apr 2015 10:30:11 +0000 (10:30 +0000)]
raisin: build QEMU more specifically for Xen and install under /usr/lib/xen/bin

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoInclude actual config in package, not defconfig
George Dunlap [Thu, 16 Apr 2015 16:19:36 +0000 (17:19 +0100)]
Include actual config in package, not defconfig

We want to include the actual config used to build the packages.

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
10 years agoraisin: add $INST_DIR/usr/lib64 to LDFLAGS for QEMU and Libvirt
Stefano Stabellini [Wed, 15 Apr 2015 14:29:04 +0000 (14:29 +0000)]
raisin: add $INST_DIR/usr/lib64 to LDFLAGS for QEMU and Libvirt

Fedora install the Xen libraries under /usr/lib64, so add usr/lib64 to
LDFLAGS for QEMU and Libvirt, that need those libraries.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com>
10 years agoraisin: rename MAKE to RAISIN_MAKE
Stefano Stabellini [Wed, 15 Apr 2015 14:08:16 +0000 (14:08 +0000)]
raisin: rename MAKE to RAISIN_MAKE

The MAKE environmental variable is used by make for its own purposes. Do
not export it, use RAISIN_MAKE instead.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com>
10 years agoraisin: remove unneeded chmod +x xencommons xendomains xen-watchdog
Stefano Stabellini [Wed, 15 Apr 2015 11:31:19 +0000 (11:31 +0000)]
raisin: remove unneeded chmod +x xencommons xendomains xen-watchdog

It is actually wrong on Fedora as the init.d paths are different.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com>
10 years agoraisin: add some debugging output for VERBOSE=1
Stefano Stabellini [Wed, 15 Apr 2015 11:07:38 +0000 (11:07 +0000)]
raisin: add some debugging output for VERBOSE=1

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com>
10 years agoraisin: remove UPSTREAM_ for URL and REVISION variables
Stefano Stabellini [Tue, 14 Apr 2015 17:25:48 +0000 (17:25 +0000)]
raisin: remove UPSTREAM_ for URL and REVISION variables

It doesn't add any info and just makes the variable names longer.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com>
10 years agoraisin: add QEMU upstream component
Stefano Stabellini [Tue, 14 Apr 2015 11:57:02 +0000 (11:57 +0000)]
raisin: add QEMU upstream component

Add a component to build upstream QEMU.
Do not build upstream QEMU from xen-unstable.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com>
10 years agoraisin: use timestamps for dpkg Version to avoid versions that start with letters
Stefano Stabellini [Tue, 14 Apr 2015 14:54:52 +0000 (14:54 +0000)]
raisin: use timestamps for dpkg Version to avoid versions that start with letters

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com>
10 years agoraisin: do not clean before build
Stefano Stabellini [Tue, 14 Apr 2015 13:28:47 +0000 (13:28 +0000)]
raisin: do not clean before build

Do not force a clean rebuild every time

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com>
10 years agoIntroduce --no option to reply no to all questions
Stefano Stabellini [Tue, 14 Apr 2015 11:13:47 +0000 (11:13 +0000)]
Introduce --no option to reply no to all questions

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoDocument newly introduced functions and commands
Stefano Stabellini [Fri, 10 Apr 2015 17:21:33 +0000 (17:21 +0000)]
Document newly introduced functions and commands

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoDocument how to source another script
Stefano Stabellini [Fri, 10 Apr 2015 14:05:32 +0000 (14:05 +0000)]
Document how to source another script

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoFirst, create a new global variable, PKGTYPE. At the moment support "deb" and "rpm".
George Dunlap [Fri, 10 Apr 2015 11:57:21 +0000 (11:57 +0000)]
First, create a new global variable, PKGTYPE.  At the moment support "deb" and "rpm".

Define _check-package-$PKGTYPE which returns true if the package is
installed, false otherwise, and _install-package-$PKGTYPE which will
install a list of packages.

Define check-package(), which will take a list of packages, and check
to see if they're installed.  Any missing packages will be added to an
array called "missing".

Change _${COMPONENT}_install_dependencies to
${COMPONENT}_check_package.  Have these call check-package.

Define check-builddeps().  Define an empty "missing" array.  Call
check-package for "raisin" dependincies (like git and rpmbuild).  Then
call for_each_component check_package.

At this point we have an array with all missing packages.  If it's
empty, be happy.  If it's non-empty, and deps=true, try to install the
packages; otherwise print the missing packages and exit.

Add install-builddeps(), which is basically check-builddeps() with
YES=y.

Call check-builddeps from build() to close the loop.

Add function keyword to all other exported functions in commands.sh.

Remove --no-deps command line option.

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoAllow the user's config to live outside of git
George Dunlap [Thu, 9 Apr 2015 15:11:45 +0000 (16:11 +0100)]
Allow the user's config to live outside of git

Move the default config to "defconfig" and add config to .gitignore.
If config doesn't exist, then copy defconfig to it in common_init.

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoImport raise.sh and unraise.sh into library
George Dunlap [Thu, 9 Apr 2015 14:45:37 +0000 (15:45 +0100)]
Import raise.sh and unraise.sh into library

Make as few changes as possible to begin with, just to separate code
motion from changes.

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoxen: Require wget
George Dunlap [Thu, 9 Apr 2015 19:12:29 +0000 (20:12 +0100)]
xen: Require wget

The xen build requires eiter wget or ftp.  Use wget.

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoxen: Replace iasl with acpica-tools
George Dunlap [Thu, 9 Apr 2015 19:04:00 +0000 (20:04 +0100)]
xen: Replace iasl with acpica-tools

acpica-tools is the new package that replaces iasl.

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoMove common-functions.sh and git-checkout.sh into lib
George Dunlap [Thu, 9 Apr 2015 14:40:18 +0000 (15:40 +0100)]
Move common-functions.sh and git-checkout.sh into lib

"script" implies something which is designed to be run standalone.

"lib" implies that this is going to be sourced from another bash script.

Also change "git-checkout" to be a function rather than a script

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoRemove redundant "source" from component definitions
George Dunlap [Thu, 9 Apr 2015 14:27:07 +0000 (15:27 +0100)]
Remove redundant "source" from component definitions

These should be called from other places that have already done the
appropriate "source"

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoMove utility scripts under scripts sub-directory
Stefano Stabellini [Tue, 7 Apr 2015 17:05:58 +0000 (17:05 +0000)]
Move utility scripts under scripts sub-directory

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoAdd .gitignore
Stefano Stabellini [Tue, 7 Apr 2015 16:47:40 +0000 (16:47 +0000)]
Add .gitignore

Ignore build output and temp and working files

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoPrint helpful message when user tries to install but no build is present
Stefano Stabellini [Tue, 7 Apr 2015 15:46:24 +0000 (15:46 +0000)]
Print helpful message when user tries to install but no build is present

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoFix for_each_component
Stefano Stabellini [Tue, 7 Apr 2015 14:59:50 +0000 (14:59 +0000)]
Fix for_each_component

It should check on COMPONENT_UPSTREAM_REVISION rather than
COMPONENT_UPSTREAM_URL.

Also the test statement with eval is wrong and doesn't evaluate
correctly.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoPrint helpful message on user input error
Stefano Stabellini [Tue, 7 Apr 2015 14:49:01 +0000 (14:49 +0000)]
Print helpful message on user input error

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoInstall raisin under /opt/raisin
Stefano Stabellini [Tue, 7 Apr 2015 14:25:29 +0000 (14:25 +0000)]
Install raisin under /opt/raisin

Install itself under /opt/raisin, using the mkdeb and mkrpm scripts.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoIntroduce build, install and configure commands to raise.sh
Stefano Stabellini [Tue, 7 Apr 2015 14:13:42 +0000 (14:13 +0000)]
Introduce build, install and configure commands to raise.sh

Allow a more fine grained command execution by separating installation
and system configuration.  Use command line arguments to select the
actions to take: build, install or configure.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoMissing "then"
Stefano Stabellini [Tue, 7 Apr 2015 13:37:22 +0000 (13:37 +0000)]
Missing "then"

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoAdd message about installing build time dependencies automatically
Stefano Stabellini [Tue, 7 Apr 2015 11:32:16 +0000 (11:32 +0000)]
Add message about installing build time dependencies automatically

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoMake it clear that -i requires sudo
Stefano Stabellini [Tue, 7 Apr 2015 11:27:32 +0000 (11:27 +0000)]
Make it clear that -i requires sudo

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoAdd warning on install and configure and --yes option
Stefano Stabellini [Tue, 7 Apr 2015 11:10:39 +0000 (11:10 +0000)]
Add warning on install and configure and --yes option

Add a warning when the user requests to install and configure the system
as it is potentially harmful.
Also add a -y option to skip the warning and silently continue anyway.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoUpdate CODING_STYLE to exploit modern bash features
Stefano Stabellini [Tue, 7 Apr 2015 10:53:30 +0000 (10:53 +0000)]
Update CODING_STYLE to exploit modern bash features

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoAdd BASH version compatibility check
Stefano Stabellini [Tue, 7 Apr 2015 10:30:06 +0000 (10:30 +0000)]
Add BASH version compatibility check

Require BASH 3.2 or newer.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoFix misspell in error message
Stefano Stabellini [Tue, 7 Apr 2015 10:30:31 +0000 (10:30 +0000)]
Fix misspell in error message

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
10 years agoIntroduce CODING_STYLE
Stefano Stabellini [Thu, 2 Apr 2015 14:58:35 +0000 (14:58 +0000)]
Introduce CODING_STYLE

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>