From c3843cd0d61a44ea6ab8f78c8db7bdb5514a162e Mon Sep 17 00:00:00 2001 From: Alexander Boettcher Date: Fri, 27 Jan 2023 08:05:29 +0100 Subject: [PATCH] image/disk: factor out common boot parts to avoid divergence Issue #4741 --- tool/run/boot_dir/fiasco | 3 +-- tool/run/boot_dir/foc | 3 +-- tool/run/boot_dir/hw | 3 +-- tool/run/boot_dir/nova | 5 +---- tool/run/boot_dir/okl4 | 3 +-- tool/run/boot_dir/pistachio | 3 +-- tool/run/boot_dir/sel4 | 3 +-- tool/run/image/disk | 8 ++++++++ 8 files changed, 15 insertions(+), 16 deletions(-) diff --git a/tool/run/boot_dir/fiasco b/tool/run/boot_dir/fiasco index e3f29af063..5194df806a 100644 --- a/tool/run/boot_dir/fiasco +++ b/tool/run/boot_dir/fiasco @@ -49,8 +49,7 @@ proc run_boot_dir {binaries} { if {[have_include "image/iso"] || [have_include "image/disk"]} { if {[have_include "image/disk"]} { - exec mkdir -p [run_dir]/boot/grub - exec cp [genode_dir]/tool/boot/bender [run_dir]/boot/bender + install_disk_bootloader_to_run_dir } if {[have_include "image/iso"]} { diff --git a/tool/run/boot_dir/foc b/tool/run/boot_dir/foc index 84f909cf67..a24dd15662 100644 --- a/tool/run/boot_dir/foc +++ b/tool/run/boot_dir/foc @@ -93,8 +93,7 @@ proc run_boot_dir_x86 {binaries} { if {[have_include "image/iso"] || [have_include "image/disk"]} { if {[have_include "image/disk"]} { - exec mkdir -p [run_dir]/boot/grub - exec cp [genode_dir]/tool/boot/bender [run_dir]/boot/bender + install_disk_bootloader_to_run_dir } if {[have_include "image/iso"]} { diff --git a/tool/run/boot_dir/hw b/tool/run/boot_dir/hw index 1ac2d3582a..8d44c8dd2c 100644 --- a/tool/run/boot_dir/hw +++ b/tool/run/boot_dir/hw @@ -108,8 +108,7 @@ proc run_boot_dir {binaries} { set serial_bender_opt "" if {[have_include "image/disk"]} { - exec mkdir -p [run_dir]/boot/grub - exec cp [genode_dir]/tool/boot/bender [run_dir]/boot/bender + install_disk_bootloader_to_run_dir } if {[have_include "image/iso"]} { diff --git a/tool/run/boot_dir/nova b/tool/run/boot_dir/nova index 14bb5e99c8..02eefa8501 100644 --- a/tool/run/boot_dir/nova +++ b/tool/run/boot_dir/nova @@ -109,10 +109,7 @@ proc run_boot_dir {binaries} { exec gzip [run_dir]/boot/image.elf if {[have_include "image/disk"]} { - exec mkdir -p [run_dir]/boot/grub - exec cp [genode_dir]/tool/boot/bender [run_dir]/boot/bender - exec cp [genode_dir]/tool/boot/boot.png [run_dir]/boot/boot.png - exec cp [get_grub2_dir]/boot/font.pf2 [run_dir]/boot/font.pf2 + install_disk_bootloader_to_run_dir } if {[have_include "image/iso"]} { diff --git a/tool/run/boot_dir/okl4 b/tool/run/boot_dir/okl4 index fd430acafb..f9b81548a0 100644 --- a/tool/run/boot_dir/okl4 +++ b/tool/run/boot_dir/okl4 @@ -161,8 +161,7 @@ proc run_boot_dir {binaries} { if {[have_include "image/iso"] || [have_include "image/disk"]} { if {[have_include "image/disk"]} { - exec mkdir -p [run_dir]/boot/grub - exec cp [genode_dir]/tool/boot/bender [run_dir]/boot/bender + install_disk_bootloader_to_run_dir } if {[have_include "image/iso"]} { diff --git a/tool/run/boot_dir/pistachio b/tool/run/boot_dir/pistachio index f6f5004c5b..ee6f47cc25 100644 --- a/tool/run/boot_dir/pistachio +++ b/tool/run/boot_dir/pistachio @@ -48,8 +48,7 @@ proc run_boot_dir {binaries} { if {[have_include "image/iso"] || [have_include "image/disk"]} { if {[have_include "image/disk"]} { - exec mkdir -p [run_dir]/boot/grub - exec cp [genode_dir]/tool/boot/bender [run_dir]/boot/bender + install_disk_bootloader_to_run_dir } if {[have_include "image/iso"]} { diff --git a/tool/run/boot_dir/sel4 b/tool/run/boot_dir/sel4 index 617fac8d66..08ffaebb1f 100644 --- a/tool/run/boot_dir/sel4 +++ b/tool/run/boot_dir/sel4 @@ -58,8 +58,7 @@ proc run_boot_dir {binaries} { set serial_bender_opt "" if {[have_include "image/disk"]} { - exec mkdir -p [run_dir]/boot/grub - exec cp [genode_dir]/tool/boot/bender [run_dir]/boot/bender + install_disk_bootloader_to_run_dir } if {[have_include "image/iso"]} { diff --git a/tool/run/image/disk b/tool/run/image/disk index 3bbe605ef7..9d202e5896 100644 --- a/tool/run/image/disk +++ b/tool/run/image/disk @@ -91,3 +91,11 @@ proc run_image { } { set size_image [expr [regsub {\s.*} [exec du -sk [run_dir].img] {}]] puts "Created image file [run_dir].img (${size_image}kiB)" } + + +proc install_disk_bootloader_to_run_dir { } { + exec mkdir -p [run_dir]/boot/grub + exec cp [genode_dir]/tool/boot/bender [run_dir]/boot/bender + exec cp [genode_dir]/tool/boot/boot.png [run_dir]/boot/boot.png + exec cp [get_grub2_dir]/boot/font.pf2 [run_dir]/boot/font.pf2 +}