Commit Graph
340 Commits
Author SHA1 Message Date
Olaf Hering e8a23cfad4 Config.mk: add new macro buildmakevars2header
This macro is similar to buildmakevars2file, it just creates a C header
file instead of shell style syntax. Upcoming changes will use this macro
in libxl and libxc.

Signed-off-by: Olaf Hering <olaf@aepfle.de>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
2014-09-23 10:15:17 +01:00
Olaf Hering 19a585606d Config.mk: replace dependency to genpath with actual target
genpath is a detail of buildmakevars2file. Replace the dependency to
genpath with the actual buildmakevars2file target. This change by
itself does not fix any bug. Upcoming changes will add dependencies to
$(target), but no rule exist to create $(target).

To force a rebuild of the $(1) rule the target now depends on the
existing .phony target. This dummy target is already used elsewhere in
the code.

No change in behaviour is expected by this patch.

Signed-off-by: Olaf Hering <olaf@aepfle.de>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
2014-09-23 10:15:17 +01:00
Olaf Hering c0f5ce5321 Config.mk: move directory list into BUILD_MAKE_VARS
To maintain the list of directories in a single place, move the existing
list into its own variable and use it in buildmakevars2file.
Required for upcoming changes.
Trim also whitespaces.

Signed-off-by: Olaf Hering <olaf@aepfle.de>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
2014-09-23 10:14:16 +01:00
Olaf Hering 0021ddc1c1 remove obsolete SUBSYS_DIR variable
/var/run is a runtime directory. It is not supposed to be packaged.
Remove unused SUBSYS_DIR variable from Config.mk and distro_mapping.txt.

Signed-off-by: Olaf Hering <olaf@aepfle.de>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
2014-09-23 10:14:16 +01:00
Jan Beulich 1b7fe9a1a1 fix qemu building with older make
The $(or ...) builtin (uses introduced by commits ffbf089357 and
8962a8f951) is supported only from make 3.81 onwards, yet we claim to
only require make 3.80. Introduce a good enough fallback.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
2014-08-04 13:42:34 +02:00
George Dunlap 8962a8f951 make: Normalize config options for external trees
We have four different external trees, and four different naming
conventions for specifying the URL, where they live, and what revision
to check out.

Normalize config options on the following bases:
 - QEMU_UPSTREAM
 - QEMU_TRADITIONAL
 - SEABIOS_UPSTREAM
 - OVMF_UPSTREAM

The following suffixes for all trees:
 - _URL : A remote repository to clone from
 - _REVISION : The revision to check out

And the following suffixes for the qemu trees:
 - _INTREE : The location of an inlined tree (for tarball releases)
 - _LOC : Where to actually look (either a directory or a URL)

The following parameters are still supported for backwards
compatibility:
 - CONFIG_QEMU          (=> QEMU_TRADITIONAL_LOC)
 - QEMU_REMOTE          (=> QEMU_TRADITIONAL_URL)
 - QEMU_TAG             (=> QEMU_TRADITIONAL_REVISION)
 - SEABIOS_UPSTREAM_TAG (=> SEABIOS_UPSTREAM_REVISION)

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
2014-07-18 11:20:56 +01:00
George Dunlap ffbf089357 make: Check tools/qemu-xen[-traditional] for qemu before downloading
Currently xen, qemu-xen, and qemu-xen-traditional are kept in separate
repositories, but when we release them as a tarball, qemu-xen and
qemu-xen-traditional are in-lined into the tools/ directory.

In order to make this "just work", at the moment developer doing the
release manually modifies Config.mk as part of the relase process so
that CONFIG_QEMU and QEMU_UPSTREAM_URL point into the tools/ directory
instead.

Modify Config.mk to automatically check there before trying a remote
repository.

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
2014-07-18 11:20:56 +01:00
Ian Campbell 5973432f19 tools: update to seabios rel-1.7.5
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Tested-by: Don Slutz <dslutz@verizon.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
2014-07-10 10:34:19 +01:00
Ian Jackson 1c9d2acad0 QEMU_TAG update 2014-06-25 15:58:02 +01:00
Ian Campbell cde61591f9 tools: update to seabios rel-1.7.4
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Tested-by: Fabio Fantoni <fabio.fantoni@m2r.biz>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
2014-06-02 15:08:25 +01:00
Jan Beulich 3cdb47bcf2 correctly use gcc's -x option
In Linux the improper use was found to cause problems with certain
distributed build environments. Even if not directly affecting us, be
on the safe side.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
2014-03-04 11:01:57 +01:00
Ian Jackson 869f5b6dea QEMU_TAG, QEMU_UPSTREAM_REVISION: Branching
QEMU_UPSTREAM_REVISION set back to master, to track the tip.

QEMU_TAG set to the specific changeset as is customary.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
2014-02-21 16:59:45 +00:00
Ian Jackson b731935027 Update QEMU_UPSTREAM_REVISION for 4.4.0-rc4
Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
2014-02-17 16:33:48 +00:00
Jan Beulich 04d31ea1b1 QEMU_UPSTREAM_REVISION -> master again 2014-02-03 09:31:03 +01:00
Ian Jackson a96bbe5fd7 Update QEMU_TAG and QEMU_UPSTREAM_REVISION for 4.4.0-rc3
Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
2014-01-30 03:47:11 +00:00
Stefano Stabellini 7754fb8cab Update QEMU_UPSTREAM_REVISION
Switch back to master.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
2014-01-28 16:48:55 +01:00
Jan Beulich cfad12fd29 update Xen version to 4.4-rc2 2014-01-14 16:19:08 +01:00
Ian Jackson 301fc14998 Merge branch 'master' into staging 2013-12-19 16:34:56 +00:00
Ian Jackson d84a6e2fa0 Update QEMU_UPSTREAM_REVISION
Switch to specific tag, for 4.4.0 RC1 release.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
2013-12-19 16:28:29 +00:00
Ian Jackson aeba23d8f1 QEMU_TAG update 2013-12-19 15:33:17 +00:00
Wei Liu cc0baa5cc3 Config.mk: update OVMF changeset
Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Ian Jackson <ian.jackson@eu.citrix.com>
Cc: George Dunlap <george.dunlap@eu.citrix.com>
2013-12-09 15:25:48 +00:00
Ian Campbell ca56905657 Merge branch 'staging' of ssh://xenbits.xen.org/home/xen/git/xen into staging 2013-12-04 14:51:57 +00:00
Ian Jackson 747fb88881 QEMU_TAG update 2013-12-04 14:46:19 +00:00
Anthony PERARD fda8904bf3 Update QEMU_UPSTREAM_REVISION
Changing to master, otherwise we don't get the last updates.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
2013-12-04 14:35:22 +00:00
Ian Jackson f15eacdd5a QEMU_TAG update 2013-11-12 15:41:37 +00:00
Wei Liu 1e363c96f8 Config.mk: update OVMF changeset
Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
2013-11-11 13:38:46 +00:00
Don Slutz d2ad65dda3 .config: Allow all URL(s) to be specified in .config
This allow building of XEN from source on a system without internet
access using either the environment or .config

Do the same with XEN_EXTFILES_URL, QEMU_REMOTE, IPXE_GIT_URL, and
IPXE_TARBALL_URL as QEMU_UPSTREAM_URL, SEABIOS_UPSTREAM_URL, etc.

Signed-off-by: Don Slutz <dslutz@verizon.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
2013-11-05 11:45:35 +00:00
Ian Campbell badd47de99 xen: arm: correct XEN_COMPILE_ARCH autodetection for arm64
At least on aarch64 openSUSE running with qemu-user-aarch64 "uname -m" reports
"aarch64" and not "armv8" so include that in the seddery. There's no harm
leaving the existing armv8 rune too so do so.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Julien Grall <julien.grall@linaro.org>
2013-10-24 14:16:49 +01:00
Ian Campbell a65299c87b tools: update to SeaBIOS 1.7.3.1
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
2013-10-16 14:51:02 +01:00
Ian Jackson 1a510f3c44 Revert "QEMU_TAG update"
(My script edited the wrong xen.git branch)

This reverts commit 363cfda13a.
2013-10-11 19:05:31 +01:00
Ian Jackson 363cfda13a QEMU_TAG update 2013-10-11 19:04:25 +01:00
Jan Beulich cfd54835e6 VMX: use proper instruction mnemonics if assembler supports them
With the hex byte emission we were taking away a good part of
flexibility from the compiler, as for simplicity reasons these were
built using fixed operands. All half way modern build environments
would allow using the mnemonics (but we can't disable the hex variants
yet, since the binutils around at the time gcc 4.1 got released didn't
support these yet).

I didn't convert __vmread() yet because that would, just like for
__vmread_safe(), imply converting to a macro so that the output operand
can be the caller supplied variable rather than an intermediate one. As
that would require touching all invocation points of __vmread() (of
which there are quite a few), I'd first like to be certain the approach
is acceptable; the main question being whether the now conditional code
might be considered to cause future maintenance issues, and the second
being that of parameter/argument ordering (here I made __vmread_safe()
match __vmwrite(), but one could also take the position that read and
write should use the inverse order of one another, in line with the
actual instruction operands).

Additionally I was quite puzzled to find that all the asm()-s involved
here have memory clobbers - what are they needed for? Or can they be
dropped at least in some cases?

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Tim Deegan <tim@xen.org>
2013-09-09 10:23:32 +02:00
Ian Jackson fe6df5abc4 QEMU_TAG update 2013-08-07 16:11:55 +01:00
Ian Jackson db3320281d QEMU_TAG update 2013-08-05 16:53:08 +01:00
Ian Jackson 442ba0b2f6 QEMU_UPSTREAM_REVISION update 2013-06-27 11:08:07 +01:00
Ian Campbell 401e18fd9b Update SEABIOS_UPSTREAM_TAG
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
2013-06-26 17:46:28 +01:00
Ian Jackson 8ee5e399c1 QEMU_TAG update 2013-06-17 17:41:25 +01:00
Ian Jackson 1fee00908a Update QEMU_UPSTREAM_REVISION
Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
2013-06-14 12:34:52 +01:00
Ian Jackson 3a4a1d2977 QEMU_TAG update 2013-05-21 15:00:01 +01:00
Ian Jackson e482d9f047 QEMU_TAG update 2013-05-21 11:50:57 +01:00
Ian Campbell abf04cf04f Update SEABIOS_UPSTREAM_TAG
Pull in two fixes for newer IASL compilers.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
2013-05-13 14:07:48 +01:00
Ian Jackson 4de97462d3 Config.mk: update QEMU_TAG and QEMU_UPSTREAM_REVISION for 4.3.0-rc1
Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
2013-05-07 14:01:11 +01:00
Ian Jackson f91c9f4254 QEMU_TAG update 2013-03-15 18:29:36 +00:00
Ian Jackson 6420870328 QEMU_TAG update 2013-02-25 16:45:14 +00:00
Ian Jackson 4291b626ce QEMU_TAG update 2013-02-22 18:16:54 +00:00
Ian Campbell dac84b66cc xen: arm64: initial build + config changes, start of day code
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Tim Deegan <tim@xen.org>
2013-02-22 12:14:51 +00:00
Frediano Ziglio 26c9d03dd4 gcov: Adding support for coverage information
This patch introduce coverage support to Xen.
Currently it allows to compile Xen with coverage support but there is no
way to extract them.

The declarations came from Linux source files (as you can see from file
headers).

The idea is to have some operations mainly
- get coverage information size
- read coverage information
- reset coverage counters

Linux use a file system to export these information. The information will
be a blob to handle with some tools (as usually tools require a bunch of
files but Xen does not handle files at all). I'll pack them to make things
simpler as possible.

These information cannot be put in a specific section (allowing a safe
mapping) as gcc use .rodata, .data, .text and .ctors sections.

I added code to handle constructors used in this case to initialize a
linked list of files.

I excluded %.init.o files as they are used before Xen start and should
not have section like .text or .data.

I used a "coverage" configuration option to mimic the "debug" one.

Signed-off-by: Frediano Ziglio <frediano.ziglio@citrix.com>
2013-02-21 16:15:40 +00:00
Ian Jackson a5124f3399 QEMU_TAG update 2013-02-20 15:43:03 +00:00
Keir Fraser 511278b4e2 gcc4.8 build fix: Add -Wno-unused-local-typedefs to CFLAGS.
Based on a patch by M A Young <m.a.young@durham.ac.uk>

Signed-off-by: Keir Fraser <keir@xen.org>
2013-02-13 17:03:31 +00:00
Ian Jackson a801a05349 QEMU_TAG update 2013-01-17 15:55:51 +00:00