roms: remove build_payloads() and split it up
payloads are compiled before coreboot, but it doesn't matter to the build speed whether this is done first. reduce the lines of code by checking payload builds *while* adding them to the coreboot images. this means that coreboot is now compiled first, before the payloads. Signed-off-by: Leah Rowe <leah@libreboot.org>audit6
parent
29a7123c0c
commit
3610667e3d
37
script/roms
37
script/roms
|
@ -41,7 +41,7 @@ main()
|
|||
$err "Cannot generate list of boards for building"
|
||||
for x in $boards; do
|
||||
[ -d "config/coreboot/$x/config" ] && configure_target "$x" \
|
||||
&& build_payloads && build_board && [ -d "bin/$board" ] \
|
||||
&& build_board && [ -d "bin/$board" ] \
|
||||
&& targets="$targets, $x"; continue
|
||||
done
|
||||
|
||||
|
@ -125,12 +125,6 @@ configure_target()
|
|||
[ "$payload_uboot" = "y" ] || payload_uboot="n"
|
||||
[ -n "$uboot_config" ] || uboot_config="default"
|
||||
|
||||
[ "$xbmk_release" = "y" ] && [ "$release" = "n" ] && return 1
|
||||
[ "$board" = "$tree" ] && return 1; return 0
|
||||
}
|
||||
|
||||
build_payloads()
|
||||
{
|
||||
romdir="bin/$board"
|
||||
cbdir="src/coreboot/$board"
|
||||
[ "$board" = "$tree" ] || cbdir="src/coreboot/$tree"
|
||||
|
@ -138,20 +132,9 @@ build_payloads()
|
|||
cbrom="$cbdir/build/coreboot.rom"
|
||||
|
||||
[ -f "$cbfstool" ] || x_ ./update trees -b coreboot utils $tree
|
||||
[ "$payload_memtest" = "y" ] && x_ ./update trees -b memtest86plus
|
||||
[ "$payload_seabios" = "y" ] && x_ ./update trees -b seabios
|
||||
|
||||
if [ "$payload_grub" = "y" ] || [ "$payload_seabios_withgrub" = "y" ] \
|
||||
|| [ "$payload_seabios_grubonly" = "y" ]; then
|
||||
[ -f "$grubelf" ] || x_ ./update trees -b grub $grubtree
|
||||
fi
|
||||
|
||||
[ "$payload_uboot" = "y" ] || return 0
|
||||
x_ ./update trees -b u-boot $board
|
||||
ubdir="elf/u-boot/$board/$uboot_config"
|
||||
ubootelf="$ubdir/u-boot.elf" && [ ! -f "$ubootelf" ] && \
|
||||
ubootelf="$ubdir/u-boot"
|
||||
[ -f "$ubootelf" ] || $err "$board: Can't find u-boot"; return 0
|
||||
[ "$xbmk_release" = "y" ] && [ "$release" = "n" ] && return 1
|
||||
[ "$board" = "$tree" ] && return 1; return 0
|
||||
}
|
||||
|
||||
build_board()
|
||||
|
@ -184,8 +167,8 @@ build_roms()
|
|||
cbrom="$(mktemp -t coreboot_rom.XXXXXXXXXX)"
|
||||
x_ cp "$_cbrom" "$cbrom"
|
||||
|
||||
[ "$payload_memtest" != "y" ] || cbfs "$cbrom"
|
||||
"elf/memtest86plus/memtest.bin" img/memtest
|
||||
[ "$payload_memtest" = "y" ] && x_ ./update trees -b memtest86plus && \
|
||||
cbfs "$cbrom" "elf/memtest86plus/memtest.bin" img/memtest
|
||||
[ "$payload_seabios" = "y" ] && build_seabios_roms
|
||||
[ "$payload_grub" != "y" ] || build_grub_roms "$cbrom" "grub"
|
||||
[ "$payload_uboot" = "y" ] || return 0
|
||||
|
@ -216,6 +199,8 @@ build_grub_roms()
|
|||
tmprom="$1"
|
||||
payload1="$2" # allow values: grub, seabios, seabios_withgrub
|
||||
|
||||
x_ ./update trees -b grub $grubtree
|
||||
|
||||
grub_cbfs="fallback/payload"
|
||||
if [ "$payload1" = "grub" ] && [ "$payload_grub_withseabios" = "y" ]
|
||||
then
|
||||
|
@ -260,6 +245,8 @@ mkSeabiosRom() {
|
|||
tmprom="$(mktemp -t coreboot_rom.XXXXXXXXXX)" # 1=cbrom, 2=cbfs path
|
||||
_seabioself="elf/seabios/default/$initmode/bios.bin.elf"
|
||||
|
||||
x_ ./update trees -b seabios
|
||||
|
||||
x_ cp "$1" "$tmprom"
|
||||
cbfs "$tmprom" "$_seabioself" "$2"
|
||||
x_ "$cbfstool" "$tmprom" add-int -i 3000 -n etc/ps2-keyboard-spinup
|
||||
|
@ -275,6 +262,12 @@ mkSeabiosRom() {
|
|||
|
||||
build_uboot_roms()
|
||||
{
|
||||
x_ ./update trees -b u-boot $board
|
||||
ubdir="elf/u-boot/$board/$uboot_config"
|
||||
ubootelf="$ubdir/u-boot.elf" && [ ! -f "$ubootelf" ] && \
|
||||
ubootelf="$ubdir/u-boot"
|
||||
[ -f "$ubootelf" ] || $err "$board: Can't find u-boot"
|
||||
|
||||
tmprom="$(mktemp -t coreboot_rom.XXXXXXXXXX)"
|
||||
newrom="$romdir/uboot_payload_${board}_${initmode}_$displaymode.rom"
|
||||
x_ cp "$cbrom" "$tmprom"
|
||||
|
|
Loading…
Reference in New Issue