genode/tool/run/boot_dir/linux
2019-08-28 14:22:32 +02:00

40 lines
1.0 KiB
Plaintext

proc binary_name_ld_lib_so { } { return "ld-linux.lib.so" }
proc binary_name_core { } { return "core-linux" }
proc binary_name_timer { } { return "linux_timer_drv" }
##
# Populate boot directory with binaries on Linux
#
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]"
if {[file exists $src_binary_path]} {
exec ln -sf $src_binary_path [run_dir]/genode/$binary
} else {
lappend missing_boot_modules $binary
}
}
if {[llength $missing_boot_modules]} {
puts stderr "Missing boot modules: $missing_boot_modules"
exit -1
}
# check syntax of all boot modules named *.config
foreach file [glob -nocomplain [run_dir]/genode/*.config] {
check_xml_syntax $file }
# Save config part of the image.elf for easy inspection
exec cp -f [run_dir]/genode/config [run_dir].config
}
##
# Base source archive within depot
#
proc base_src { } { return base-linux }