From 4fe6a7e48e17f0668919d9230a392663f7ff7390 Mon Sep 17 00:00:00 2001 From: Klemens Nanni Date: Wed, 09 Dec 2015 06:35:32 -0500 Subject: New payload: Coreinfo Add coreinfo as optional payload providing various useful system information. As part of coreboot, coreinfo does not need to be downloaded seperately, just build it using $ ./build module coreinfo after downloading and building coreboot. See https://www.coreboot.org/Payloads#Coreinfo for more information. --- (limited to 'resources/scripts/helpers/build') diff --git a/resources/scripts/helpers/build/module/coreinfo b/resources/scripts/helpers/build/module/coreinfo new file mode 100755 index 0000000..5870b28 --- /dev/null +++ b/resources/scripts/helpers/build/module/coreinfo @@ -0,0 +1,39 @@ +#!/bin/bash + +# helper script: builds coreinfo payload and it's dependency libpayload +# +# Copyright (C) 2015 Klemens Nanni +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +# + +# This script assumes that the working directory is the root +# of git or release archive + +[ "x${DEBUG+set}" = 'xset' ] && set -v +set -u -e + +printf "Building the coreinfo payload\n" + +( +cd coreboot/ + +# Build libpayload first +cp ../resources/libreboot/config/libpayload/config payloads/libpayload/.config +make -j"$(nproc)" -BC payloads/libpayload install + +# Build coreinfo itself +cp ../resources/libreboot/config/coreinfo/config payloads/coreinfo/.config +make -j"$(nproc)" -BC payloads/coreinfo +) diff --git a/resources/scripts/helpers/build/roms/withgrub_helper b/resources/scripts/helpers/build/roms/withgrub_helper index c2d2bf2..6dee9a0 100755 --- a/resources/scripts/helpers/build/roms/withgrub_helper +++ b/resources/scripts/helpers/build/roms/withgrub_helper @@ -105,6 +105,9 @@ do ./util/cbfstool/cbfstool "${boardtarget}_${romtype}.rom" add -f ../seabios/out/bios.bin.elf -n bios.bin.elf -t raw ./util/cbfstool/cbfstool "${boardtarget}_${romtype}.rom" add -f ../seabios/out/vgabios.bin -n vgaroms/vgabios.bin -t raw + # Path to coreinfo payload + coreinfo=payloads/coreinfo/build/coreinfo.elf + # Add the correct GRUB configuration file for this image. for keylayout in ../resources/utilities/grub-assemble/keymap/original/* do @@ -117,6 +120,9 @@ do ./util/cbfstool/cbfstool "${boardtarget}_${keymap}_${romtype}.rom" add -f "grub_${keymap}_${romtype}.cfg" -n grub.cfg -t raw # Insert grub test config into the image (for the user to test modifications to before modifying the main one) ./util/cbfstool/cbfstool "${boardtarget}_${keymap}_${romtype}.rom" add -f "grub_${keymap}_${romtype}_test.cfg" -n grubtest.cfg -t raw + + # Add coreinfo payload in case it was built before + [ -f "${coreinfo}" ] && ./util/cbfstool/cbfstool "${boardtarget}"_"${keymap}"_"${romtype}".rom add-payload -f "${coreinfo}" -n coreinfo.elf done # This config-less ROM is no longer needed -- cgit v0.9.1