if {![have_spec x86_64]} { puts "\nSolo5 requires a 64bit architecture\n" exit 0 } if {![file exists bin/mirage]} { puts "" puts "A mirage image must be provided at 'bin/mirage' to execute this scenario." puts "" exit 1 } if {[have_spec linux]} { puts "" puts "This scenario is not available for Linux." puts "" exit 1 } create_boot_directory import_from_depot \ [depot_user]/src/[base_src] \ [depot_user]/src/init \ [depot_user]/src/ipxe_nic_drv \ [depot_user]/src/rtc_drv \ [depot_user]/pkg/terminal source ${genode_dir}/repos/base/run/platform_drv.inc set build_components { app/log_core drivers/framebuffer drivers/input/dummy lib/solo5 server/terminal_log } append_platform_drv_build_components build $build_components set fb_drv "vesa_fb_drv" if {[have_include "image/uefi"]} { set fb_drv "fb_boot_drv" } append config { } append_platform_drv_config append config { } install_config $config append boot_modules { dummy_input_drv log_core terminal_log mirage solo5.lib.so } append boot_modules " $fb_drv" # platform-specific modules append_platform_drv_boot_modules build_boot_image $boot_modules append qemu_args " -netdev user,id=net0 " append qemu_args " -net nic,model=e1000,netdev=net0 " run_genode_until forever