From 368730ce0b8fcc458ccd614d00145e0b99bb7983 Mon Sep 17 00:00:00 2001 From: Norman Feske Date: Tue, 8 Feb 2022 16:46:21 +0100 Subject: [PATCH] run: don't build ld at boot-dir stage With the kernel-specific build of the dynamic linker triggered automatically at the build stage, the artificial build step at the boot-dir stage can be skipped. Issue #4320 --- tool/run/boot_dir/hw | 5 +---- tool/run/boot_dir/linux | 2 -- tool/run/boot_dir/okl4 | 10 ++++++---- 3 files changed, 7 insertions(+), 10 deletions(-) diff --git a/tool/run/boot_dir/hw b/tool/run/boot_dir/hw index b98d16a129..0768a115cf 100644 --- a/tool/run/boot_dir/hw +++ b/tool/run/boot_dir/hw @@ -46,16 +46,13 @@ proc run_boot_dir {binaries} { # set bootstrap_arg "" set core_arg "" - set ld_arg "" - if {![file exists [run_dir]/genode/ld.lib.so]} { set ld_arg lib/ld/hw } if {![file exists [run_dir]/genode/core-hw-[board].a]} { set core_arg core/hw } if {![file exists [run_dir]/genode/bootstrap-hw-[board].o]} { set bootstrap_arg bootstrap/hw } - set build_args "$bootstrap_arg $core_arg $ld_arg" + set build_args "$bootstrap_arg $core_arg" if {[llength $build_args]} { build $build_args } - if {$ld_arg != ""} { copy_file bin/ld-hw.lib.so [run_dir]/genode/ld.lib.so } if {$core_arg != ""} { copy_file bin/core-hw-[board].a [run_dir]/genode/ } if {$bootstrap_arg != ""} { copy_file bin/bootstrap-hw-[board].o [run_dir]/genode/ } diff --git a/tool/run/boot_dir/linux b/tool/run/boot_dir/linux index ba39a800c4..d79fd23c54 100644 --- a/tool/run/boot_dir/linux +++ b/tool/run/boot_dir/linux @@ -8,8 +8,6 @@ proc binary_name_timer { } { return "linux_timer_drv" } # proc run_boot_dir {binaries} { - if {![file exists [run_dir]/genode/ld.lib.so]} { build { lib/ld/linux } } - set missing_boot_modules { } foreach binary $binaries { set src_binary_path "[pwd]/bin/[kernel_specific_binary $binary]" diff --git a/tool/run/boot_dir/okl4 b/tool/run/boot_dir/okl4 index ea006292d4..30d60f2620 100644 --- a/tool/run/boot_dir/okl4 +++ b/tool/run/boot_dir/okl4 @@ -115,11 +115,13 @@ proc run_boot_dir {binaries} { # Build kernel and dynamic linker if needed # set kernel_arg "" - set ld_arg "" - if {![file exists [run_dir]/genode/okl4]} { set kernel_arg kernel/okl4 } - if {![file exists [run_dir]/genode/ld.lib.so]} { set ld_arg lib/ld/okl4 } - set targets "$kernel_arg $ld_arg" + + if {![file exists [run_dir]/genode/okl4]} { set kernel_arg kernel/okl4 } + + set targets "$kernel_arg" + if {[llength $targets]} { build $targets } + if {$kernel_arg != ""} { copy_file bin/okl4 [run_dir]/genode/okl4 } build_core_image $binaries