sys-boot/grub: add xen-32 platform
authorDouglas Freed <dwfreed@mtu.edu>
Wed, 29 Jun 2016 01:43:11 +0000 (21:43 -0400)
committerMike Gilbert <floppym@gentoo.org>
Wed, 29 Jun 2016 01:52:15 +0000 (21:52 -0400)
This builds 32-bit Xen on amd64.

Bug: https://bugs.gentoo.org/586996

profiles/arch/amd64/package.use.mask
profiles/base/package.use.mask
profiles/desc/grub_platforms.desc
sys-boot/grub/grub-2.02_beta3-r1.ebuild
sys-boot/grub/grub-9999-r1.ebuild

index 178c46c3bb1068c4113750906834296516b0434f..3640f08463ad760d53a7d2cc62313090341d8e84 100644 (file)
 
 #--- END OF EXAMPLES ---
 
+# Mike Gilbert <floppym@gentoo.org> (23 Jun 2016)
+# This flag only has meaning on amd64
+sys-boot/grub:2 -grub_platforms_xen-32
+
 # Nathan Phillip Brink <binki@gentoo.org> (26 Sep 2015)
 # git useflag requires dev-libs/libgit2 which few arches support
 dev-util/geany-plugins -git
index 6030b44f7c232d823eaefa9660fad7d20d1f28c5..22e3fd8cb1d52b13ec0d5888c3e3658cf4a7fa50 100644 (file)
@@ -5,6 +5,10 @@
 # This file requires >=portage-2.1.1
 # New entries go on top.
 
+# Mike Gilbert <floppym@gentoo.org> (23 Jun 2016)
+# This flag only has meaning on amd64
+sys-boot/grub:2 grub_platforms_xen-32
+
 # Brian Evans <grknight@gentoo.org> (14 Jun 2016)
 # Igbinary is not ready for php 7
 >=dev-php/pecl-redis-3.0 igbinary
index dcb57b263d95e25cfc5f819d91530679f729465a..2ba24c68f3d5f50a0b356be3183b36bd3b9c652e 100644 (file)
@@ -18,3 +18,4 @@ qemu - QEMU platform support
 qemu-mips - QEMU MIPS platform support
 uboot - U-Boot platform support
 xen - XEN (pvgrub2) platform support
+xen-32 - Build 32-bit XEN (pvgrub2) platform support on amd64
index 7fd67ee9e04f8ac90c9ac99194d0918b3de96f20..fd6f5f2d802fcf1532b78294974c31946530c013 100644 (file)
@@ -51,7 +51,7 @@ LICENSE="GPL-3 fonts? ( GPL-2-with-font-exception ) themes? ( BitstreamVera )"
 SLOT="2/${PVR}"
 IUSE="debug device-mapper doc efiemu +fonts mount +multislot nls static sdl test +themes truetype libzfs"
 
-GRUB_ALL_PLATFORMS=( coreboot efi-32 efi-64 emu ieee1275 loongson multiboot qemu qemu-mips pc uboot xen )
+GRUB_ALL_PLATFORMS=( coreboot efi-32 efi-64 emu ieee1275 loongson multiboot qemu qemu-mips pc uboot xen xen-32 )
 IUSE+=" ${GRUB_ALL_PLATFORMS[@]/#/grub_platforms_}"
 
 REQUIRED_USE="
@@ -85,6 +85,7 @@ DEPEND="${RDEPEND}
        sys-apps/texinfo
        fonts? ( media-libs/freetype:2 )
        grub_platforms_xen? ( app-emulation/xen-tools:= )
+       grub_platforms_xen-32? ( app-emulation/xen-tools:= )
        static? (
                app-arch/xz-utils[static-libs(+)]
                truetype? (
@@ -180,6 +181,11 @@ grub_configure() {
                                local TARGET_CPPFLAGS="-march=x86-64 ${TARGET_CPPFLAGS}"
                                export TARGET_CFLAGS TARGET_CPPFLAGS
                        fi ;;
+               xen-32)
+                       platform=xen
+                       if [[ ${CHOST} == x86_64* ]]; then
+                               local CTARGET=i386
+                       fi ;;
                guessed) ;;
                *)      platform=${MULTIBUILD_VARIANT} ;;
        esac
index c880d12e4920e0358f78f749a55d23fb772cd9fb..b0c7084c38c537f35db8acf145352378221c2f00 100644 (file)
@@ -48,7 +48,7 @@ LICENSE="GPL-3 fonts? ( GPL-2-with-font-exception ) themes? ( BitstreamVera )"
 SLOT="2/${PVR}"
 IUSE="debug device-mapper doc efiemu +fonts mount +multislot nls static sdl test +themes truetype libzfs"
 
-GRUB_ALL_PLATFORMS=( coreboot efi-32 efi-64 emu ieee1275 loongson multiboot qemu qemu-mips pc uboot xen )
+GRUB_ALL_PLATFORMS=( coreboot efi-32 efi-64 emu ieee1275 loongson multiboot qemu qemu-mips pc uboot xen xen-32 )
 IUSE+=" ${GRUB_ALL_PLATFORMS[@]/#/grub_platforms_}"
 
 REQUIRED_USE="
@@ -82,6 +82,7 @@ DEPEND="${RDEPEND}
        sys-apps/texinfo
        fonts? ( media-libs/freetype:2 )
        grub_platforms_xen? ( app-emulation/xen-tools:= )
+       grub_platforms_xen-32? ( app-emulation/xen-tools:= )
        static? (
                app-arch/xz-utils[static-libs(+)]
                truetype? (
@@ -181,6 +182,11 @@ grub_configure() {
                                local TARGET_CPPFLAGS="-march=x86-64 ${TARGET_CPPFLAGS}"
                                export TARGET_CFLAGS TARGET_CPPFLAGS
                        fi ;;
+               xen-32)
+                       platform=xen
+                       if [[ ${CHOST} == x86_64* ]]; then
+                               local CTARGET=i386
+                       fi ;;
                guessed) ;;
                *)      platform=${MULTIBUILD_VARIANT} ;;
        esac