Skip to content

Commit 71baeee

Browse files
committed
build.sh: Fix builds with LAN ROM extraction
LAN ROM extarcton happened after the build, however the defconfigs already require the blob to be present during the build. Move the extraction before building the image. Fix the path to 3rdparty/blobs where the LAN ROM is expected to reside according to defconfigs. Build cbfstool and extarct the payload inside docker to avoid problems with hsot compilation and environment. Remove the spaces in the argument parsing for V5x0TU builds. Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
1 parent 410670e commit 71baeee

1 file changed

Lines changed: 18 additions & 12 deletions

File tree

build.sh

Lines changed: 18 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -223,25 +223,31 @@ function build_novacustom_v5x0tu {
223223

224224
cp $DEFCONFIG .config
225225

226+
# Obtain LAN ROM blob from release binary
227+
wget -O UEFIExtract_NE_A68_x64_linux.zip https://github.com/LongSoft/UEFITool/releases/download/A68/UEFIExtract_NE_A68_x64_linux.zip
228+
unzip -o UEFIExtract_NE_A68_x64_linux.zip
229+
wget -O novacustom_v54x_mtl_v0.9.0.rom https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v54x_mtl/v0.9.0/novacustom_v54x_mtl_v0.9.0.rom
230+
231+
# Extract and transfer LAN ROM blob
232+
docker run --rm -t -u $UID -v $PWD:/home/coreboot/coreboot \
233+
-v $HOME/.ssh:/home/coreboot/.ssh \
234+
-w /home/coreboot/coreboot coreboot/coreboot-sdk:$SDKVER \
235+
/bin/bash -c "make -C util/cbfstool && \
236+
util/cbfstool/cbfstool novacustom_v54x_mtl_v0.9.0.rom extract -r COREBOOT -f payload -n fallback/payload -m x86"
237+
238+
./uefiextract payload DEB917C0-C56A-4860-A05B-BF2F22EBB717
239+
cp payload.dump/2\ 8C8CE578-8A3D-4F1C-9935-896185C32DD3/82\ DEB917C0-C56A-4860-A05B-BF2F22EBB717/1\ PE32\ image\ section/body.bin 3rdparty/blobs/mainboard/novacustom/mtl-h/LanRom.efi
240+
rm -rf payload.dump
241+
226242
echo "Building Dasharo for Novacustom $1 (version $FW_VERSION)"
227243

228244
docker run --rm -t -u $UID -v $PWD:/home/coreboot/coreboot \
229245
-v $HOME/.ssh:/home/coreboot/.ssh \
230246
-w /home/coreboot/coreboot coreboot/coreboot-sdk:$SDKVER \
231247
/bin/bash -c "make olddefconfig && make -j$(nproc)"
232248

233-
# Obtain LAN ROM blob from release binary
234-
wget -O UEFIExtract_NE_A68_x64_linux.zip https://github.com/LongSoft/UEFITool/releases/download/A68/UEFIExtract_NE_A68_x64_linux.zip
235-
unzip -o UEFIExtract_NE_A68_x64_linux.zip
236-
wget -O novacustom_v54x_mtl_v0.9.0.rom https://dl.3mdeb.com/open-source-firmware/Dasharo/novacustom_v54x_mtl/v0.9.0/novacustom_v54x_mtl_v0.9.0.rom
237249
cp build/coreboot.rom novacustom_$1_${FW_VERSION}.rom
238250

239-
# Extract and transfer LAN ROM blob
240-
make -C util/cbfstool
241-
util/cbfstool/cbfstool novacustom_v54x_mtl_v0.9.0.rom extract -r COREBOOT -f payload -n fallback/payload -m x86
242-
./uefiextract payload DEB917C0-C56A-4860-A05B-BF2F22EBB717
243-
cp payload.dump/2\ 8C8CE578-8A3D-4F1C-9935-896185C32DD3/82\ DEB917C0-C56A-4860-A05B-BF2F22EBB717/1\ PE32\ image\ section/body.bin 3rdparty/blobs/mainboard/clevo/mtl-h/LanRom.efi
244-
245251
if [ $? -eq 0 ]; then
246252
echo "Result binary placed in $PWD/novacustom_$1_${FW_VERSION}.rom"
247253
sha256sum novacustom_$1_${FW_VERSION}.rom > novacustom_$1_${FW_VERSION}.rom.sha256
@@ -444,9 +450,9 @@ case "$CMD" in
444450
BOARD="v560tu"
445451
build_novacustom_v5x0tu "v560tu"
446452
;;
447-
"v540tu " | "V540TU " )
453+
"v540tu" | "V540TU" )
448454
BOARD="v540tu"
449-
build_novacustom_v5x0tu "v540tu "
455+
build_novacustom_v5x0tu "v540tu"
450456
;;
451457
"apu2" | "APU2" )
452458
build_pcengines "apu2"

0 commit comments

Comments
 (0)