grub: enable building as a cross-compiled package for arm64

This will drop the need to reconfigure/rebuild GRUB with the special
`arm64` target in `setup_board`. The amd64 targets could receive the
same treatment eventually but the xen dependency needs fixing first.
After that the SDK's grub can be built with the special `none` target so
it only builds user-space tools.
This commit is contained in:
Michael Marineau 2016-05-09 15:10:31 -07:00
parent 92059efbe1
commit 2b376a0f6b
6 changed files with 16 additions and 10 deletions

View File

@ -25,6 +25,7 @@ RDEPEND="
dev-lang/python-oem dev-lang/python-oem
) )
arm64? ( arm64? (
sys-boot/grub
sys-firmware/edk2-armvirt sys-firmware/edk2-armvirt
) )
coreos-base/coreos coreos-base/coreos

View File

@ -3,3 +3,6 @@
# is enabled in hardened, the default profiles do not enable it. # is enabled in hardened, the default profiles do not enable it.
BOOTSTRAP_USE="${BOOTSTRAP_USE} -pax_kernel -xtpax" BOOTSTRAP_USE="${BOOTSTRAP_USE} -pax_kernel -xtpax"
USE="-pax_kernel -urandom -xtpax" USE="-pax_kernel -urandom -xtpax"
# Enable our assorted Grub targets
GRUB_PLATFORMS="efi-64 pc xen"

View File

@ -96,12 +96,5 @@ FEATURES="buildpkg clean-logs compressdebug parallel-install splitdebug
# No need to restrict access to build directories in dev environments. # No need to restrict access to build directories in dev environments.
PORTAGE_WORKDIR_MODE="0755" PORTAGE_WORKDIR_MODE="0755"
# Enable our assorted Grub targets, don't whine about /boot # Don't let GRUB whine about /boot
GRUB_PLATFORMS="efi-64 pc xen"
DONT_MOUNT_BOOT=1 DONT_MOUNT_BOOT=1
# Both x86_64 and i386 targets are required for grub testing
QEMU_SOFTMMU_TARGETS="x86_64 i386 aarch64"
# For cross build support.
QEMU_USER_TARGETS="aarch64"

View File

@ -3,3 +3,12 @@ USE="man -pam"
# Used by some old goo in profiles/coreos/base/profile.bashrc # Used by some old goo in profiles/coreos/base/profile.bashrc
# TODO: clean up that old goo # TODO: clean up that old goo
CROS_SDK_HOST="cros-sdk-host" CROS_SDK_HOST="cros-sdk-host"
# Enable our assorted GRUB targets
GRUB_PLATFORMS="efi-64 pc xen"
# Both x86_64 and i386 targets are required for grub testing
QEMU_SOFTMMU_TARGETS="x86_64 i386 aarch64"
# For cross build support.
QEMU_USER_TARGETS="aarch64"

View File

@ -10,10 +10,10 @@ GRUB_AUTOGEN=1
PYTHON_COMPAT=( python{2_6,2_7,3_2,3_3,3_4} ) PYTHON_COMPAT=( python{2_6,2_7,3_2,3_3,3_4} )
if [[ "${PV}" == 9999 ]]; then if [[ "${PV}" == 9999 ]]; then
KEYWORDS="~amd64 ~x86" KEYWORDS="~amd64 ~arm64 ~x86"
else else
CROS_WORKON_COMMIT="68ae3c416ba8cd51a25244b7fd37ddd342fe75ba" CROS_WORKON_COMMIT="68ae3c416ba8cd51a25244b7fd37ddd342fe75ba"
KEYWORDS="amd64 x86" KEYWORDS="amd64 arm64 x86"
fi fi
inherit cros-workon autotools-utils bash-completion-r1 eutils flag-o-matic mount-boot multibuild pax-utils python-any-r1 toolchain-funcs versionator inherit cros-workon autotools-utils bash-completion-r1 eutils flag-o-matic mount-boot multibuild pax-utils python-any-r1 toolchain-funcs versionator