Skip to content

Commit a1a06b6

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. Also create the path ito ensure it exists. 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 a1a06b6

1 file changed

Lines changed: 19 additions & 12 deletions

File tree

build.sh

Lines changed: 19 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -223,25 +223,32 @@ 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+
mkdir -p 3rdparty/blobs/mainboard/novacustom/mtl-h
240+
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
241+
rm -rf payload.dump
242+
226243
echo "Building Dasharo for Novacustom $1 (version $FW_VERSION)"
227244

228245
docker run --rm -t -u $UID -v $PWD:/home/coreboot/coreboot \
229246
-v $HOME/.ssh:/home/coreboot/.ssh \
230247
-w /home/coreboot/coreboot coreboot/coreboot-sdk:$SDKVER \
231248
/bin/bash -c "make olddefconfig && make -j$(nproc)"
232249

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
237250
cp build/coreboot.rom novacustom_$1_${FW_VERSION}.rom
238251

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-
245252
if [ $? -eq 0 ]; then
246253
echo "Result binary placed in $PWD/novacustom_$1_${FW_VERSION}.rom"
247254
sha256sum novacustom_$1_${FW_VERSION}.rom > novacustom_$1_${FW_VERSION}.rom.sha256
@@ -444,9 +451,9 @@ case "$CMD" in
444451
BOARD="v560tu"
445452
build_novacustom_v5x0tu "v560tu"
446453
;;
447-
"v540tu " | "V540TU " )
454+
"v540tu" | "V540TU" )
448455
BOARD="v540tu"
449-
build_novacustom_v5x0tu "v540tu "
456+
build_novacustom_v5x0tu "v540tu"
450457
;;
451458
"apu2" | "APU2" )
452459
build_pcengines "apu2"

0 commit comments

Comments
 (0)