summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO55
-rw-r--r--PKGBUILD87
-rw-r--r--grub-mkconfig-helper16
-rw-r--r--nopic.patch51
-rw-r--r--ocaml-unsafe-string.patch27
-rw-r--r--xen.install6
6 files changed, 90 insertions, 152 deletions
diff --git a/.SRCINFO b/.SRCINFO
index b56a09308339..2dcdf3375050 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,9 +1,7 @@
-# Generated by mksrcinfo v8
-# Sat Sep 30 21:13:47 UTC 2017
pkgbase = xen
pkgdesc = Virtual Machine Hypervisor & Tools
- pkgver = 4.9.0
- pkgrel = 2
+ pkgver = 4.10.0
+ pkgrel = 1
url = http://www.xenproject.org/
changelog = ChangeLog
arch = x86_64
@@ -38,55 +36,36 @@ pkgbase = xen
makedepends = lzo
makedepends = pciutils
makedepends = python2
- makedepends = sdl
+ makedepends = sdl2
makedepends = spice
makedepends = usbredir
makedepends = yajl
noextract = ipxe-git-827dd1bfee67daa683935ce65316f7e0f057fe1c.tar.gz
options = !buildflags
options = !strip
- source = https://downloads.xenproject.org/release/xen/4.9.0/xen-4.9.0.tar.gz
- source = https://downloads.xenproject.org/release/xen/4.9.0/xen-4.9.0.tar.gz.sig
+ source = https://downloads.xenproject.org/release/xen/4.10.0/xen-4.10.0.tar.gz
+ source = https://downloads.xenproject.org/release/xen/4.10.0/xen-4.10.0.tar.gz.sig
source = http://xenbits.xen.org/xen-extfiles/ipxe-git-827dd1bfee67daa683935ce65316f7e0f057fe1c.tar.gz
- source = https://xenbits.xen.org/xsa/xsa226-4.9/0001-gnttab-dont-use-possibly-unbounded-tail-calls.patch
- source = https://xenbits.xen.org/xsa/xsa226-4.9/0002-gnttab-fix-transitive-grant-handling.patch
- source = https://xenbits.xen.org/xsa/xsa227.patch
- source = https://xenbits.xen.org/xsa/xsa228.patch
- source = https://xenbits.xen.org/xsa/xsa230.patch
- source = https://xenbits.xen.org/xsa/xsa231-4.9.patch
- source = https://xenbits.xen.org/xsa/xsa232.patch
- source = https://xenbits.xen.org/xsa/xsa233.patch
- source = https://xenbits.xen.org/xsa/xsa234-4.9.patch
- source = https://xenbits.xen.org/xsa/xsa235-4.9.patch
- source = https://xenbits.xen.org/xsa/xsa245/0001-xen-page_alloc-Cover-memory-unreserved-after-boot-in.patch
- source = https://xenbits.xen.org/xsa/xsa245/0002-xen-arm-Correctly-report-the-memory-region-in-the-du.patch
- source = nopic.patch
+ source = https://xenbits.xen.org/xsa/xsa253.patch
+ source = xsa254-diff-release410-comet1.1.patch::https://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff_plain;hp=refs/tags/RELEASE-4.10.0;h=refs/heads/4.10.0-shim-comet
source = grub-mkconfig-helper
source = efi-xen.cfg
source = grub.conf
source = xen.conf
source = tmpfiles.conf
- sha256sums = cade643fe3310d4d6f97d0c215c6fa323bc1130d7e64d7e2043ffaa73a96f33b
+ source = ocaml-unsafe-string.patch
+ validpgpkeys = 23E3222C145F4475FA8060A783FE14C957E82BD9
+ sha256sums = 0262a7023f8b12bcacfb0b25e69b2a63291f944f7683d54d8f33d4b2ca556844
sha256sums = SKIP
sha256sums = 36deacb946c59ad1d6600f6e5b89d6a7a8961e65eb000900e184075920120f49
- sha256sums = 3878c27b77ba24012599289e0e0fb1e5198b1e4efe2f87f7c46def5f335f2fd5
- sha256sums = 01d773c5bb4cafe54daf0d14e8a3af899a7c5863513d18927c4a570a74afdb15
- sha256sums = 9923a47e5f86949800887596f098954a08ef73a01d74b1dbe16cab2e6b1fabb2
- sha256sums = 1979e111442517891b483e316a15a760a4c992ac4440f95e361ff12f4bebff62
- sha256sums = 77a73f1c32d083e315ef0b1bbb119cb8840ceb5ada790cad76cbfb9116f725cc
- sha256sums = 71a53a5133c8d4e381dd0e3e54205d31dea545ab62b261084dd3aea140f88cad
- sha256sums = 5068a78293daa58557c30c95141b775becfb650de6a5eda0d82a4a321ced551c
- sha256sums = f721cc49ba692b2f36299b631451f51d7340b8b4732f74c98f01cb7a80d8662b
- sha256sums = 213f9d81a4ab785db67b9f579c9e88c9c8586c46b93f466a309060750df2df32
- sha256sums = d8f012734fbf6019c1ff864744e308c41dfb9c7804ca3be2771c2c972cdf4bd5
- sha256sums = 526f9e1b127fbb316762ce8e8f4563bc9de0c55a1db581456a3017d570d35bdd
- sha256sums = 7164010112fcccd9cd88e72ace2eeabdb364dd6f4d05c434686267d18067f420
- sha256sums = b270ce2dc383cf350ef00dae47064056cad382d8f3db7985a6d55207030c53de
- sha256sums = 06c9f6140f7ef4ccfc4b1a7d9732a673313e269733180f53afcd9e43bf6c26bb
+ sha256sums = bba1abb5e4368421de29385e37f8477bf3534d3ba3ff7e2aae9c9d3da53f1393
+ sha256sums = 5276d63e3b2ffc5217981e7b683c28d75b81793af8d2ffc75566db39aaabbaef
+ sha256sums = 7dd6f1d6c10d4e8793412175b964df2477633cd988810df71e2040bf79e4d56c
sha256sums = ceaff798a92a7aef1465a0a0b27b1817aedd2c857332b456aaa6dd78dc72438f
sha256sums = 3f0af16958c3e057b9baa5afc47050d9adf7dd553274dd97ae4f35938fefb568
sha256sums = 50a9b7fd19e8beb1dea09755f07318f36be0b7ec53d3c9e74f3266a63e682c0c
sha256sums = 80227f8daa62a49c08fb7ffcc7de8cabbd0645396e46c04f7caaa71b04f446f0
+ sha256sums = 7c76b116ce09a53708306682f04e1460a788fe66f832091b7003a5d8e1fee312
pkgname = xen
install = xen.install
@@ -103,7 +82,7 @@ pkgname = xen
depends = lzo
depends = pciutils
depends = python2
- depends = sdl
+ depends = sdl2
depends = spice
depends = usbredir
depends = yajl
@@ -111,7 +90,7 @@ pkgname = xen
optdepends = openvswitch: Optional Networking support
optdepends = seabios: Boot VMs with BIOS
optdepends = ovmf: Boot VMs with UEFI
- provides = xen-4.9.0
+ provides = xen-4.10.0
conflicts = xen-4.2
conflicts = xen-4.2-testing-hg
conflicts = xen-gdbsx
@@ -138,7 +117,7 @@ pkgname = xen
pkgname = xen-docs
pkgdesc = Virtual Machine Hypervisor documentation
arch = any
- provides = xen-docs-4.9.0
+ provides = xen-docs-4.10.0
conflicts = xen-docs-4.2
conflicts = xen-docs-4.2-testing-hg
conflicts = xen-docs-gdbsx
diff --git a/PKGBUILD b/PKGBUILD
index d07370d06a57..be8a45f3618f 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,4 +1,5 @@
-# Maintainer: Janne Heß <jannehess@gmail.com>
+# Maintainer: Maik Broemme <mbroemme@libmpq.org>
+# Contributor: Janne Heß <jannehess@gmail.com>
# Contributor: Arthur Borsboom <arthurborsboom@gmail.com>
# Contributor: Shanmu Thiagaraja <sthiagaraja+AUR@prshanmu.com>
# Contributor: Limao Luo
@@ -20,9 +21,9 @@ _build_stubdom=${build_stubdom:-false}
# Versions
#####
-_xen_version='4.9.0'
+_xen_version='4.10.0'
_xen_major_version='4'
-_xen_minor_version='9'
+_xen_minor_version='10'
# grep -R IPXE_GIT_TAG src/xen-*/tools/firmware/etherboot
_git_tag_ipxe='827dd1bfee67daa683935ce65316f7e0f057fe1c'
# grep '_VERSION=' src/xen-*/stubdom/configure
@@ -46,7 +47,7 @@ fi
pkgbase=xen
pkgname=(xen xen-docs)
pkgver="${_xen_version}"
-pkgrel=2
+pkgrel=1
pkgdesc='Virtual Machine Hypervisor & Tools'
url='http://www.xenproject.org/'
license=('GPL2')
@@ -86,7 +87,7 @@ makedepends=(
lzo
pciutils
python2
- sdl
+ sdl2
spice
usbredir
yajl
@@ -99,26 +100,18 @@ source=(
"http://xenbits.xen.org/xen-extfiles/ipxe-git-${_git_tag_ipxe}.tar.gz"
# XSA patches
- 'https://xenbits.xen.org/xsa/xsa226-4.9/0001-gnttab-dont-use-possibly-unbounded-tail-calls.patch'
- 'https://xenbits.xen.org/xsa/xsa226-4.9/0002-gnttab-fix-transitive-grant-handling.patch'
- 'https://xenbits.xen.org/xsa/xsa227.patch'
- 'https://xenbits.xen.org/xsa/xsa228.patch'
- 'https://xenbits.xen.org/xsa/xsa230.patch'
- 'https://xenbits.xen.org/xsa/xsa231-4.9.patch'
- 'https://xenbits.xen.org/xsa/xsa232.patch'
- 'https://xenbits.xen.org/xsa/xsa233.patch'
- 'https://xenbits.xen.org/xsa/xsa234-4.9.patch'
- 'https://xenbits.xen.org/xsa/xsa235-4.9.patch'
- 'https://xenbits.xen.org/xsa/xsa245/0001-xen-page_alloc-Cover-memory-unreserved-after-boot-in.patch'
- 'https://xenbits.xen.org/xsa/xsa245/0002-xen-arm-Correctly-report-the-memory-region-in-the-du.patch'
+ 'https://xenbits.xen.org/xsa/xsa253.patch'
+ xsa254-diff-release410-comet1.1.patch::'https://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff_plain;hp=refs/tags/RELEASE-4.10.0;h=refs/heads/4.10.0-shim-comet'
# Files
- 'nopic.patch'
'grub-mkconfig-helper'
'efi-xen.cfg'
'grub.conf'
"${pkgbase}.conf"
'tmpfiles.conf'
+
+ # Compile fixes.
+ 'ocaml-unsafe-string.patch'
)
if [ "${_build_stubdom}" = true ] ; then
@@ -136,31 +129,23 @@ if [ "${_build_stubdom}" = true ] ; then
fi
sha256sums=(
- 'cade643fe3310d4d6f97d0c215c6fa323bc1130d7e64d7e2043ffaa73a96f33b'
+ '0262a7023f8b12bcacfb0b25e69b2a63291f944f7683d54d8f33d4b2ca556844'
'SKIP'
'36deacb946c59ad1d6600f6e5b89d6a7a8961e65eb000900e184075920120f49'
- # XSA patches
- '3878c27b77ba24012599289e0e0fb1e5198b1e4efe2f87f7c46def5f335f2fd5'
- '01d773c5bb4cafe54daf0d14e8a3af899a7c5863513d18927c4a570a74afdb15'
- '9923a47e5f86949800887596f098954a08ef73a01d74b1dbe16cab2e6b1fabb2'
- '1979e111442517891b483e316a15a760a4c992ac4440f95e361ff12f4bebff62'
- '77a73f1c32d083e315ef0b1bbb119cb8840ceb5ada790cad76cbfb9116f725cc'
- '71a53a5133c8d4e381dd0e3e54205d31dea545ab62b261084dd3aea140f88cad'
- '5068a78293daa58557c30c95141b775becfb650de6a5eda0d82a4a321ced551c'
- 'f721cc49ba692b2f36299b631451f51d7340b8b4732f74c98f01cb7a80d8662b'
- '213f9d81a4ab785db67b9f579c9e88c9c8586c46b93f466a309060750df2df32'
- 'd8f012734fbf6019c1ff864744e308c41dfb9c7804ca3be2771c2c972cdf4bd5'
- '526f9e1b127fbb316762ce8e8f4563bc9de0c55a1db581456a3017d570d35bdd'
- '7164010112fcccd9cd88e72ace2eeabdb364dd6f4d05c434686267d18067f420'
- # Last checked: XSA-245
+ # XSA patches (Last checked: XSA-253)
+ 'bba1abb5e4368421de29385e37f8477bf3534d3ba3ff7e2aae9c9d3da53f1393'
+ '5276d63e3b2ffc5217981e7b683c28d75b81793af8d2ffc75566db39aaabbaef'
+
# PKGBUILD files
- 'b270ce2dc383cf350ef00dae47064056cad382d8f3db7985a6d55207030c53de'
- '06c9f6140f7ef4ccfc4b1a7d9732a673313e269733180f53afcd9e43bf6c26bb'
+ '7dd6f1d6c10d4e8793412175b964df2477633cd988810df71e2040bf79e4d56c'
'ceaff798a92a7aef1465a0a0b27b1817aedd2c857332b456aaa6dd78dc72438f'
'3f0af16958c3e057b9baa5afc47050d9adf7dd553274dd97ae4f35938fefb568'
'50a9b7fd19e8beb1dea09755f07318f36be0b7ec53d3c9e74f3266a63e682c0c'
'80227f8daa62a49c08fb7ffcc7de8cabbd0645396e46c04f7caaa71b04f446f0'
+
+ # Compile fixes.
+ '7c76b116ce09a53708306682f04e1460a788fe66f832091b7003a5d8e1fee312'
)
@@ -204,18 +189,8 @@ prepare() {
# XSA Patches
msg2 'Applying XSA Patches...'
- # None yet. Example:
- patch -Np1 -i "${srcdir}/0001-gnttab-dont-use-possibly-unbounded-tail-calls.patch"
- patch -Np1 -i "${srcdir}/0002-gnttab-fix-transitive-grant-handling.patch"
- patch -Np1 -i "${srcdir}/xsa227.patch"
- patch -Np1 -i "${srcdir}/xsa228.patch"
- patch -Np1 -i "${srcdir}/xsa230.patch"
- patch -Np1 -i "${srcdir}/xsa231-4.9.patch"
- patch -Np1 -i "${srcdir}/xsa232.patch"
- patch -Np1 -i "${srcdir}/xsa233.patch"
- patch -Np1 -i "${srcdir}/xsa234-4.9.patch"
- patch -Np1 -i "${srcdir}/0001-xen-page_alloc-Cover-memory-unreserved-after-boot-in.patch"
- patch -Np1 -i "${srcdir}/0002-xen-arm-Correctly-report-the-memory-region-in-the-du.patch"
+ patch -Np1 -i "${srcdir}/xsa253.patch"
+
# qemu-xen-traditional
pushd 'tools/qemu-xen-traditional' >/dev/null
# None yet. Example:
@@ -227,9 +202,6 @@ prepare() {
#patch -Np1 -i "${srcdir}/xsa211-qemuu-4.8.patch"
popd >/dev/null
- # Patch build with PIC
- patch -Np1 -i "${srcdir}/nopic.patch"
-
# Patch EFI binary build with mingw
msg2 'Patching EFI build...'
sed -i.bak '/ EFI_LD/s/LD/LD_EFI/' xen/arch/x86/Makefile
@@ -261,6 +233,9 @@ prepare() {
# Copied from Gentoo's xen 4.8.1-r2 ebuild
find . \( -name 'Makefile*' -o -name '*.mk' -o -name 'common.make' \) -exec sed -i 's/ *-Werror */ /' '{}' ';'
sed -i 's/, "-Werror"//' 'tools/python/setup.py'
+
+ # Patch ocaml for 4.06 unsafe string
+ patch -Np1 -i "${srcdir}/ocaml-unsafe-string.patch"
}
build() {
@@ -283,7 +258,14 @@ build() {
--with-system-ovmf \
--with-system-seabios=/usr/share/qemu/bios-256k.bin \
"${_config_stubdom:---disable-stubdom}" \
- --with-extra-qemuu-configure-args="--disable-bluez --disable-gtk --enable-spice --enable-usb-redir --disable-werror"
+ --with-extra-qemuu-configure-args=" \
+ --disable-bluez \
+ --disable-gtk \
+ --disable-vte \
+ --disable-werror \
+ --enable-spice \
+ --enable-usb-redir \
+ --with-sdlabi=2.0"
msg2 'Building Xen...'
# NO_WERROR is required for iPXE, as the sources are not extracted before the build
@@ -306,7 +288,7 @@ package_xen() {
lzo
pciutils
python2
- sdl
+ sdl2
spice
usbredir
yajl
@@ -342,6 +324,7 @@ package_xen() {
install -Dm644 "${srcdir}/grub.conf" etc/xen/grub.conf
install -Dm755 "${srcdir}/grub-mkconfig-helper" etc/grub.d/09_xen
install -Dm644 "${srcdir}/efi-xen.cfg" etc/xen/efi-xen.cfg
+ install -Dm644 "${srcdir}/xen.conf" usr/lib/modules-load.d/xen.conf
# Fix paths in scripts, move to right locations and create missing directories
msg2 'Fixing paths...'
diff --git a/grub-mkconfig-helper b/grub-mkconfig-helper
index 59ac88ac48fe..993984620ecf 100644
--- a/grub-mkconfig-helper
+++ b/grub-mkconfig-helper
@@ -157,11 +157,11 @@ menuentry "Xen ${XEN_VERSION} / Arch Linux ${_KERNEL_PKG_} kernel" ${CLASS} {
search --no-floppy --fs-uuid --set=root ${BOOT_PART_FS_UUID}
fi
echo '$(printf "Loading Xen %s ..." ${XEN_VERSION})'
- multiboot ${REAL_DIR}/${XEN_BASENAME} ${REAL_DIR}/${XEN_BASENAME} ${XEN_HYPERVISOR_CMDLINE}
+ multiboot2 ${REAL_DIR}/${XEN_BASENAME} ${REAL_DIR}/${XEN_BASENAME} ${XEN_HYPERVISOR_CMDLINE}
echo 'Loading Arch Linux ${_KERNEL_PKG_} kernel ...'
- module ${REAL_DIR}/${_KERNEL_FILE_} ${REAL_DIR}/${_KERNEL_FILE_} root=${GRUB_LINUX_ROOT_DEVICE} rw ${GRUB_LINUX_PARAMS}
+ module2 ${REAL_DIR}/${_KERNEL_FILE_} ${REAL_DIR}/${_KERNEL_FILE_} root=${GRUB_LINUX_ROOT_DEVICE} rw ${GRUB_LINUX_PARAMS}
echo 'Loading Arch Linux ${_KERNEL_PKG_} kernel initramfs ...'
- module ${REAL_DIR}/${_INITRAMFS_}
+ module2 ${REAL_DIR}/${_INITRAMFS_}
}
EOF
@@ -188,11 +188,11 @@ menuentry "Xen ${XEN_VERSION} / Arch Linux ${_KERNEL_PKG_} kernel (fallback init
search --no-floppy --fs-uuid --set=root ${BOOT_PART_FS_UUID}
fi
echo '$(printf "Loading Xen %s ..." ${XEN_VERSION})'
- multiboot ${REAL_DIR}/${XEN_BASENAME} ${REAL_DIR}/${XEN_BASENAME} ${XEN_HYPERVISOR_CMDLINE}
+ multiboot2 ${REAL_DIR}/${XEN_BASENAME} ${REAL_DIR}/${XEN_BASENAME} ${XEN_HYPERVISOR_CMDLINE}
echo 'Loading Arch Linux ${_KERNEL_PKG_} kernel ...'
- module ${REAL_DIR}/${_KERNEL_FILE_} ${REAL_DIR}/${_KERNEL_FILE_} root=${GRUB_LINUX_ROOT_DEVICE} rw ${GRUB_LINUX_PARAMS}
+ module2 ${REAL_DIR}/${_KERNEL_FILE_} ${REAL_DIR}/${_KERNEL_FILE_} root=${GRUB_LINUX_ROOT_DEVICE} rw ${GRUB_LINUX_PARAMS}
echo 'Loading Arch Linux ${_KERNEL_PKG_} kernel fallback initramfs ...'
- module ${REAL_DIR}/${_INITRAMFS_FALLBACK_}
+ module2 ${REAL_DIR}/${_INITRAMFS_FALLBACK_}
}
EOF
@@ -214,9 +214,9 @@ menuentry "Xen ${XEN_VERSION} / Arch Linux ${_KERNEL_PKG_} kernel (no initramfs)
search --no-floppy --fs-uuid --set=root ${BOOT_PART_FS_UUID}
fi
echo '$(printf "Loading Xen %s ..." ${XEN_VERSION})'
- multiboot ${REAL_DIR}/${XEN_BASENAME} ${REAL_DIR}/${XEN_BASENAME} ${XEN_HYPERVISOR_CMDLINE}
+ multiboot2 ${REAL_DIR}/${XEN_BASENAME} ${REAL_DIR}/${XEN_BASENAME} ${XEN_HYPERVISOR_CMDLINE}
echo 'Loading Arch Linux ${_KERNEL_PKG_} kernel ...'
- module ${REAL_DIR}/${_KERNEL_FILE_} ${REAL_DIR}/${_KERNEL_FILE_} root=${GRUB_LINUX_ROOT_DEVICE} rw ${GRUB_LINUX_PARAMS}
+ module2 ${REAL_DIR}/${_KERNEL_FILE_} ${REAL_DIR}/${_KERNEL_FILE_} root=${GRUB_LINUX_ROOT_DEVICE} rw ${GRUB_LINUX_PARAMS}
}
EOF
diff --git a/nopic.patch b/nopic.patch
deleted file mode 100644
index 2d302f535eec..000000000000
--- a/nopic.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 672949d6c61d9cba01c5b414eed9d522082f04d3 Mon Sep 17 00:00:00 2001
-From: Olaf Hering <olaf@aepfle.de>
-Date: Mon, 26 Jun 2017 14:55:07 +0200
-Subject: [PATCH] rombios: prevent building with PIC/PIE
-
-If the default compiler silently defaults to to -fPIC/-fPIE building
-rombios fails:
-
- ld -melf_i386 -s -r 32bitbios.o tcgbios/tcgbiosext.o util.o pmm.o -o 32bitbios_all.o
- There are undefined symbols in the BIOS:
- U _GLOBAL_OFFSET_TABLE_
- make[10]: *** [Makefile:26: 32bitbios_all.o] Error 11
-
-Prevent the failure by enforcing non-PIC/PIE mode.
-
-Signed-off-by: Olaf Hering <olaf@aepfle.de>
-Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
----
- tools/firmware/rombios/32bit/Makefile | 2 ++
- tools/firmware/rombios/32bit/tcgbios/Makefile | 2 ++
- 2 files changed, 4 insertions(+)
-
-diff --git a/tools/firmware/rombios/32bit/Makefile b/tools/firmware/rombios/32bit/Makefile
-index b0583c9..28c1544 100644
---- a/tools/firmware/rombios/32bit/Makefile
-+++ b/tools/firmware/rombios/32bit/Makefile
-@@ -4,6 +4,8 @@ include $(XEN_ROOT)/tools/firmware/Rules.mk
- TARGET = 32bitbios_flat.h
-
- CFLAGS += $(CFLAGS_xeninclude) -I.. -I../../../libacpi
-+$(call cc-option-add,CFLAGS,CC,-fno-pic)
-+$(call cc-option-add,CFLAGS,CC,-fno-PIE)
-
- SUBDIRS = tcgbios
-
-diff --git a/tools/firmware/rombios/32bit/tcgbios/Makefile b/tools/firmware/rombios/32bit/tcgbios/Makefile
-index f87d130..5cff4ef 100644
---- a/tools/firmware/rombios/32bit/tcgbios/Makefile
-+++ b/tools/firmware/rombios/32bit/tcgbios/Makefile
-@@ -4,6 +4,8 @@ include $(XEN_ROOT)/tools/firmware/Rules.mk
- TARGET = tcgbiosext.o
-
- CFLAGS += $(CFLAGS_xeninclude) -I.. -I../.. -I../../../../libacpi
-+$(call cc-option-add,CFLAGS,CC,-fno-pic)
-+$(call cc-option-add,CFLAGS,CC,-fno-PIE)
-
- .PHONY: all
- all: $(TARGET)
---
-2.1.4
-
diff --git a/ocaml-unsafe-string.patch b/ocaml-unsafe-string.patch
new file mode 100644
index 000000000000..2f241132493d
--- /dev/null
+++ b/ocaml-unsafe-string.patch
@@ -0,0 +1,27 @@
+From 18c163276f9b1f7f94e17a4f51f37a58b1ee4052 Mon Sep 17 00:00:00 2001
+From: John Thomson <git@johnthomson.fastmail.com.au>
+Date: Thu, 25 Jan 2018 17:06:56 +1000
+Subject: [PATCH] Fix ocaml 4.06.0 build, use unsafe strings
+
+---
+ tools/ocaml/common.make | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/tools/ocaml/common.make b/tools/ocaml/common.make
+index d5478f6..21ac33c 100644
+--- a/tools/ocaml/common.make
++++ b/tools/ocaml/common.make
+@@ -12,8 +12,8 @@ OCAMLFIND ?= ocamlfind
+ CFLAGS += -fPIC -Werror -I$(shell ocamlc -where)
+
+ OCAMLOPTFLAG_G := $(shell $(OCAMLOPT) -h 2>&1 | sed -n 's/^ *\(-g\) .*/\1/p')
+-OCAMLOPTFLAGS = $(OCAMLOPTFLAG_G) -ccopt "$(LDFLAGS)" -dtypes $(OCAMLINCLUDE) -cc $(CC) -w F -warn-error F
+-OCAMLCFLAGS += -g $(OCAMLINCLUDE) -w F -warn-error F
++OCAMLOPTFLAGS = $(OCAMLOPTFLAG_G) -ccopt "$(LDFLAGS)" -dtypes $(OCAMLINCLUDE) -cc $(CC) -w F -warn-error F -unsafe-string
++OCAMLCFLAGS += -g $(OCAMLINCLUDE) -w F -warn-error F -unsafe-string
+
+ VERSION := 4.1
+
+--
+2.16.0
+
diff --git a/xen.install b/xen.install
index c54a959b7985..2abd42f2c4b5 100644
--- a/xen.install
+++ b/xen.install
@@ -32,11 +32,11 @@ __EOF__
upgrade_msg() {
cat << __EOF__
-Xen 4.9
+Xen 4.10
Release notes
-http://wiki.xen.org/wiki/Xen_Project_4.9_Release_Notes
+http://wiki.xen.org/wiki/Xen_Project_4.10_Release_Notes
Feature list
-http://wiki.xen.org/wiki/Xen_Project_4.9_Feature_List
+http://wiki.xen.org/wiki/Xen_Project_4.10_Feature_List
__EOF__
if [ "$(vercmp 4.8.0-4 "$1")" -lt 0 ]; then