From b6bc44fd10ea457222e1b4653a54bb271d74ef26 Mon Sep 17 00:00:00 2001 From: Sebastian Sumpf Date: Wed, 16 May 2018 11:03:59 +0200 Subject: [PATCH] run: add support to preserve 'genode' directory Add '--preserve-genode-dir' to RUN_OPT in order to preserve the 'genode' directory in '/var/run/' --- tool/run/boot_dir/fiasco | 2 +- tool/run/boot_dir/foc | 2 +- tool/run/boot_dir/hw | 2 +- tool/run/boot_dir/nova | 2 +- tool/run/boot_dir/okl4 | 2 +- tool/run/boot_dir/pistachio | 2 +- tool/run/boot_dir/sel4 | 2 +- tool/run/run | 13 +++++++++++++ 8 files changed, 20 insertions(+), 7 deletions(-) diff --git a/tool/run/boot_dir/fiasco b/tool/run/boot_dir/fiasco index a7340b699..9601d8e1c 100644 --- a/tool/run/boot_dir/fiasco +++ b/tool/run/boot_dir/fiasco @@ -42,7 +42,7 @@ proc run_boot_dir {binaries} { file copy -force [run_dir]/genode/fiasco [run_dir]/boot/kernel file copy -force [run_dir]/genode/sigma0-fiasco [run_dir]/boot/sigma0 file copy -force [run_dir]/genode/bootstrap-fiasco [run_dir]/boot/bootstrap - exec rm -r [run_dir]/genode + remove_genode_dir exec mv [run_dir]/image.elf [run_dir]/boot/image.elf diff --git a/tool/run/boot_dir/foc b/tool/run/boot_dir/foc index 29f84f0a2..1ea219148 100644 --- a/tool/run/boot_dir/foc +++ b/tool/run/boot_dir/foc @@ -85,7 +85,7 @@ proc run_boot_dir_x86 {binaries} { file copy -force [run_dir]/genode/foc [run_dir]/boot/kernel file copy -force [run_dir]/genode/sigma0-foc [run_dir]/boot/sigma0 file copy -force [run_dir]/genode/bootstrap-foc [run_dir]/boot/bootstrap - exec rm -r [run_dir]/genode + remove_genode_dir exec mv [run_dir]/image.elf [run_dir]/boot/image.elf diff --git a/tool/run/boot_dir/hw b/tool/run/boot_dir/hw index c637881d7..7bda254db 100644 --- a/tool/run/boot_dir/hw +++ b/tool/run/boot_dir/hw @@ -94,7 +94,7 @@ proc run_boot_dir {binaries} { build_core [run_dir]/genode/$core_obj $modules [run_dir]/genode/core.elf [core_link_address] exec [cross_dev_prefix]strip [run_dir]/genode/core.elf build_core [run_dir]/genode/$bootstrap_obj { core.elf } [run_dir]/image.elf [bootstrap_link_address] - exec rm -fr [run_dir]/genode + remove_genode_dir exec [cross_dev_prefix]strip [run_dir]/image.elf exec mkdir -p [run_dir]/boot diff --git a/tool/run/boot_dir/nova b/tool/run/boot_dir/nova index 995018514..8cc20416d 100644 --- a/tool/run/boot_dir/nova +++ b/tool/run/boot_dir/nova @@ -54,7 +54,7 @@ proc run_boot_dir {binaries} { exec [cross_dev_prefix]objcopy -O elf32-i386 [run_dir]/genode/hypervisor [run_dir]/boot/hypervisor exec [cross_dev_prefix]strip [run_dir]/boot/hypervisor - exec rm -rf [run_dir]/genode + remove_genode_dir exec mv [run_dir]/image.elf [run_dir]/boot/image.elf diff --git a/tool/run/boot_dir/okl4 b/tool/run/boot_dir/okl4 index 15dc8c260..a1bd4d20b 100644 --- a/tool/run/boot_dir/okl4 +++ b/tool/run/boot_dir/okl4 @@ -145,7 +145,7 @@ proc run_boot_dir {binaries} { # # Keep only the ELF boot image, but remove stripped binaries # - exec rm -rf [run_dir]/genode + remove_genode_dir exec mkdir -p [run_dir]/boot exec mv [run_dir]/image.elf [run_dir]/boot/image.elf diff --git a/tool/run/boot_dir/pistachio b/tool/run/boot_dir/pistachio index 7d74d5506..ae73d62d8 100644 --- a/tool/run/boot_dir/pistachio +++ b/tool/run/boot_dir/pistachio @@ -41,7 +41,7 @@ proc run_boot_dir {binaries} { file copy -force [run_dir]/genode/pistachio [run_dir]/boot/kernel file copy -force [run_dir]/genode/sigma0-pistachio [run_dir]/boot/sigma0 file copy -force [run_dir]/genode/kickstart-pistachio [run_dir]/boot/kickstart - exec rm -r [run_dir]/genode + remove_genode_dir exec mv [run_dir]/image.elf [run_dir]/boot/image.elf diff --git a/tool/run/boot_dir/sel4 b/tool/run/boot_dir/sel4 index 696ce05f9..aba07ee66 100644 --- a/tool/run/boot_dir/sel4 +++ b/tool/run/boot_dir/sel4 @@ -44,7 +44,7 @@ proc run_boot_dir {binaries} { # exec mkdir -p [run_dir]/boot file copy -force [run_dir]/genode/sel4 [run_dir]/boot/sel4 - exec rm -r [run_dir]/genode + remove_genode_dir exec mv [run_dir]/image.elf [run_dir]/boot/image.elf diff --git a/tool/run/run b/tool/run/run index 4f4184205..96d5122ea 100755 --- a/tool/run/run +++ b/tool/run/run @@ -663,6 +663,19 @@ proc wait_for_output { wait_for_re timeout_value running_spawn_id } { } +## +# Remove 'genode' directory in 'run_dir' unless --preserve-genode-dir is present +# in RUN_OPT +# +proc remove_genode_dir { } { + global env + + if {![get_cmd_switch --preserve-genode-dir]} { + exec rm -rf [run_dir]/genode + } +} + + ## ## Fall-back implementations of all run module procedures ##