commit:     e1374135af76bf31a01ff4ecb6696d8bbe041f31
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Wed Apr 27 17:53:01 2016 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Wed Apr 27 17:53:17 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e1374135

sys-boot/grub: populate MULTIBUILD_VARIANTS in a more PMS-defined way

Package-Manager: portage-2.2.28_p79

 sys-boot/grub/grub-2.02_beta3-r1.ebuild | 15 ++++++++++++++-
 sys-boot/grub/grub-9999-r1.ebuild       | 15 ++++++++++++++-
 2 files changed, 28 insertions(+), 2 deletions(-)

diff --git a/sys-boot/grub/grub-2.02_beta3-r1.ebuild 
b/sys-boot/grub/grub-2.02_beta3-r1.ebuild
index 99531f1..ab05794 100644
--- a/sys-boot/grub/grub-2.02_beta3-r1.ebuild
+++ b/sys-boot/grub/grub-2.02_beta3-r1.ebuild
@@ -215,6 +215,19 @@ grub_configure() {
        ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
 }
 
+grub_get_platforms() {
+       MULTIBUILD_VARIANTS=()
+       local platform
+       for platform in "${GRUB_ALL_PLATFORMS[@]}"; do
+               if use "grub_platforms_${platform}"; then
+                       MULTIBUILD_VARIANTS+=( "${platform}" )
+               fi
+       done
+       if (( ${#MULTIBUILD_VARIANTS[@]} == 0 )); then
+               MULTIBUILD_VARIANTS=( guessed )
+       fi
+}
+
 src_configure() {
        # Bug 508758.
        replace-flags -O3 -O2
@@ -236,7 +249,7 @@ src_configure() {
        tc-export BUILD_CC # Bug 485592
 
        # Portage will take care of cleaning up GRUB_PLATFORMS
-       MULTIBUILD_VARIANTS=( ${GRUB_PLATFORMS:-guessed} )
+       grub_get_platforms
        grub_do grub_configure
 }
 

diff --git a/sys-boot/grub/grub-9999-r1.ebuild 
b/sys-boot/grub/grub-9999-r1.ebuild
index 350857b..c880d12 100644
--- a/sys-boot/grub/grub-9999-r1.ebuild
+++ b/sys-boot/grub/grub-9999-r1.ebuild
@@ -217,6 +217,19 @@ grub_configure() {
        ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
 }
 
+grub_get_platforms() {
+       MULTIBUILD_VARIANTS=()
+       local platform
+       for platform in "${GRUB_ALL_PLATFORMS[@]}"; do
+               if use "grub_platforms_${platform}"; then
+                       MULTIBUILD_VARIANTS+=( "${platform}" )
+               fi
+       done
+       if (( ${#MULTIBUILD_VARIANTS[@]} == 0 )); then
+               MULTIBUILD_VARIANTS=( guessed )
+       fi
+}
+
 src_configure() {
        # Bug 508758.
        replace-flags -O3 -O2
@@ -238,7 +251,7 @@ src_configure() {
        tc-export BUILD_CC # Bug 485592
 
        # Portage will take care of cleaning up GRUB_PLATFORMS
-       MULTIBUILD_VARIANTS=( ${GRUB_PLATFORMS:-guessed} )
+       grub_get_platforms
        grub_do grub_configure
 }
 

Reply via email to