gnuboot-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[for 0.1 release, 2nd patchset v2 03/11] build/boot/roms: skip building


From: Leah Rowe
Subject: [for 0.1 release, 2nd patchset v2 03/11] build/boot/roms: skip building gnat on fam15h
Date: Tue, 16 Jan 2024 12:18:41 +0000

the fam15h boards do not use libgfxinit, instead deferring
to coreboot's old style of graphics initialisation written in C.

libgfxinit is otherwise the only thing that needs gcc-gnat, so
skip building gcc-gnat on coreboot/fam15h_udimm and rdimm.

neox added crossgcc_ada="n" to board.cfg files before, but
forgot to add the handling of it, so these boards still didn't
build on modern distros, where building the old gnat version
was problematic.

with this patch, those fam15h boards should now build, on modern
distros and modern toolchains. this is done by using
the BUILD_LANGUAGES environmental variable, setting it to c,
which tells coreboot to skip building gcc-gnat

MERGE NOTE: this is v2 of the earlier patch, but it actually in
fact sets crossgcc_ada="n" on all of the amd boards, whereas
the v1 patch did not, in this 0.1 buildfix series.

Signed-off-by: Leah Rowe <info@minifree.org>
---
 resources/coreboot/kcma-d8-rdimm_16mb/board.cfg  |  1 +
 resources/coreboot/kcma-d8-rdimm_2mb/board.cfg   |  1 +
 resources/coreboot/kcma-d8-udimm_16mb/board.cfg  |  1 +
 resources/coreboot/kcma-d8-udimm_2mb/board.cfg   |  1 +
 resources/coreboot/kfsn4-dre_1mb/board.cfg       |  1 +
 resources/coreboot/kfsn4-dre_2mb/board.cfg       |  1 +
 resources/coreboot/kgpe-d16-rdimm_16mb/board.cfg |  1 +
 resources/coreboot/kgpe-d16-rdimm_2mb/board.cfg  |  1 +
 resources/coreboot/kgpe-d16-udimm_16mb/board.cfg |  1 +
 resources/coreboot/kgpe-d16-udimm_2mb/board.cfg  |  1 +
 resources/packages/roms_helper/boot              | 16 ++++++++++------
 11 files changed, 20 insertions(+), 6 deletions(-)

diff --git a/resources/coreboot/kcma-d8-rdimm_16mb/board.cfg 
b/resources/coreboot/kcma-d8-rdimm_16mb/board.cfg
index ced4feb..d6c1c4f 100644
--- a/resources/coreboot/kcma-d8-rdimm_16mb/board.cfg
+++ b/resources/coreboot/kcma-d8-rdimm_16mb/board.cfg
@@ -5,3 +5,4 @@ payload_grub="y"
 payload_grub_withseabios="y"
 payload_seabios="y"
 payload_memtest="y"
+crossgcc_ada="n"
diff --git a/resources/coreboot/kcma-d8-rdimm_2mb/board.cfg 
b/resources/coreboot/kcma-d8-rdimm_2mb/board.cfg
index ced4feb..d6c1c4f 100644
--- a/resources/coreboot/kcma-d8-rdimm_2mb/board.cfg
+++ b/resources/coreboot/kcma-d8-rdimm_2mb/board.cfg
@@ -5,3 +5,4 @@ payload_grub="y"
 payload_grub_withseabios="y"
 payload_seabios="y"
 payload_memtest="y"
+crossgcc_ada="n"
diff --git a/resources/coreboot/kcma-d8-udimm_16mb/board.cfg 
b/resources/coreboot/kcma-d8-udimm_16mb/board.cfg
index 90caa03..9680f8e 100644
--- a/resources/coreboot/kcma-d8-udimm_16mb/board.cfg
+++ b/resources/coreboot/kcma-d8-udimm_16mb/board.cfg
@@ -5,3 +5,4 @@ payload_grub="y"
 payload_grub_withseabios="y"
 payload_seabios="y"
 payload_memtest="y"
+crossgcc_ada="n"
diff --git a/resources/coreboot/kcma-d8-udimm_2mb/board.cfg 
b/resources/coreboot/kcma-d8-udimm_2mb/board.cfg
index 90caa03..9680f8e 100644
--- a/resources/coreboot/kcma-d8-udimm_2mb/board.cfg
+++ b/resources/coreboot/kcma-d8-udimm_2mb/board.cfg
@@ -5,3 +5,4 @@ payload_grub="y"
 payload_grub_withseabios="y"
 payload_seabios="y"
 payload_memtest="y"
+crossgcc_ada="n"
diff --git a/resources/coreboot/kfsn4-dre_1mb/board.cfg 
b/resources/coreboot/kfsn4-dre_1mb/board.cfg
index c868660..80eff4b 100644
--- a/resources/coreboot/kfsn4-dre_1mb/board.cfg
+++ b/resources/coreboot/kfsn4-dre_1mb/board.cfg
@@ -5,3 +5,4 @@ payload_grub="n"
 payload_grub_withseabios="n"
 payload_seabios="y"
 payload_memtest="y"
+crossgcc_ada="n"
diff --git a/resources/coreboot/kfsn4-dre_2mb/board.cfg 
b/resources/coreboot/kfsn4-dre_2mb/board.cfg
index c868660..80eff4b 100644
--- a/resources/coreboot/kfsn4-dre_2mb/board.cfg
+++ b/resources/coreboot/kfsn4-dre_2mb/board.cfg
@@ -5,3 +5,4 @@ payload_grub="n"
 payload_grub_withseabios="n"
 payload_seabios="y"
 payload_memtest="y"
+crossgcc_ada="n"
diff --git a/resources/coreboot/kgpe-d16-rdimm_16mb/board.cfg 
b/resources/coreboot/kgpe-d16-rdimm_16mb/board.cfg
index ced4feb..d6c1c4f 100644
--- a/resources/coreboot/kgpe-d16-rdimm_16mb/board.cfg
+++ b/resources/coreboot/kgpe-d16-rdimm_16mb/board.cfg
@@ -5,3 +5,4 @@ payload_grub="y"
 payload_grub_withseabios="y"
 payload_seabios="y"
 payload_memtest="y"
+crossgcc_ada="n"
diff --git a/resources/coreboot/kgpe-d16-rdimm_2mb/board.cfg 
b/resources/coreboot/kgpe-d16-rdimm_2mb/board.cfg
index ced4feb..d6c1c4f 100644
--- a/resources/coreboot/kgpe-d16-rdimm_2mb/board.cfg
+++ b/resources/coreboot/kgpe-d16-rdimm_2mb/board.cfg
@@ -5,3 +5,4 @@ payload_grub="y"
 payload_grub_withseabios="y"
 payload_seabios="y"
 payload_memtest="y"
+crossgcc_ada="n"
diff --git a/resources/coreboot/kgpe-d16-udimm_16mb/board.cfg 
b/resources/coreboot/kgpe-d16-udimm_16mb/board.cfg
index 90caa03..9680f8e 100644
--- a/resources/coreboot/kgpe-d16-udimm_16mb/board.cfg
+++ b/resources/coreboot/kgpe-d16-udimm_16mb/board.cfg
@@ -5,3 +5,4 @@ payload_grub="y"
 payload_grub_withseabios="y"
 payload_seabios="y"
 payload_memtest="y"
+crossgcc_ada="n"
diff --git a/resources/coreboot/kgpe-d16-udimm_2mb/board.cfg 
b/resources/coreboot/kgpe-d16-udimm_2mb/board.cfg
index 90caa03..9680f8e 100644
--- a/resources/coreboot/kgpe-d16-udimm_2mb/board.cfg
+++ b/resources/coreboot/kgpe-d16-udimm_2mb/board.cfg
@@ -5,3 +5,4 @@ payload_grub="y"
 payload_grub_withseabios="y"
 payload_seabios="y"
 payload_memtest="y"
+crossgcc_ada="n"
diff --git a/resources/packages/roms_helper/boot 
b/resources/packages/roms_helper/boot
index db393e0..03d9409 100755
--- a/resources/packages/roms_helper/boot
+++ b/resources/packages/roms_helper/boot
@@ -63,9 +63,14 @@ payload_seabios="n"
 payload_seabios_withgrub="n" # i386-coreboot grub accessible from SeaBIOS boot 
menu
 seabios_opromloadonly="0"
 payload_memtest="n"
+crossgcc_ada="y"
 # Override the above defaults using board.cfg
 source "resources/coreboot/${board}/board.cfg"
 
+if [ "${crossgcc_ada}" != "n" ] && [ "${crossgcc_ada}" != "y" ]; then
+       crossgcc_ada="y"
+fi
+
 if [ "${grub_scan_disk}" = "undefined" ]; then
        printf "build/roms: Target %s does not define grub_scan_disk. 
Defaulting to 'both'.\n" "${board}"
        grub_scan_disk="both"
@@ -142,12 +147,11 @@ fi
 
 if [ "${arch}" = "x86_32" ] || [ "${arch}" = "x86_64" ]; then
        if [ ! -d "${cbdir}/util/crossgcc/xgcc/i386-elf/" ]; then
-               (
-                       cat version > "${cbdir}/.coreboot-version"
-                       cd "${cbdir}"
-                       make crossgcc-i386 CPUS=$(nproc) # even for 64-bit 
machines, coreboot builds
-                               # 32-bit ROM images, so we only need to worry 
about i386-elf
-               )
+               cat version > "${cbdir}/.coreboot-version"
+               if [ "${crossgcc_ada}" = "n" ]; then
+                       export BUILD_LANGUAGES=c
+               fi
+               make -C "${cbdir}" crossgcc-i386 CPUS=$(nproc)
        fi
 elif [ "${arch}" = "ARMv7" ]; then
        cat version > "${cbdir}/.coreboot-version"
-- 
2.39.2




reply via email to

[Prev in Thread] Current Thread [Next in Thread]