# # Build # set build_components { core init drivers/timer test/sdl drivers/framebuffer drivers/input } source ${genode_dir}/repos/base/run/platform_drv.inc append_platform_drv_build_components build $build_components create_boot_directory # # Generate config # append config { <config> <parent-provides> <service name="ROM"/> <service name="RAM"/> <service name="IRQ"/> <service name="IO_MEM"/> <service name="IO_PORT"/> <service name="CAP"/> <service name="PD"/> <service name="RM"/> <service name="CPU"/> <service name="LOG"/> <service name="SIGNAL"/> </parent-provides> <default-route> <any-service> <parent/> <any-child/> </any-service> </default-route>} append_if [have_spec sdl] config { <start name="fb_sdl"> <resource name="RAM" quantum="4M"/> <provides> <service name="Input"/> <service name="Framebuffer"/> </provides> </start>} append_platform_drv_config append_if [have_spec framebuffer] config { <start name="fb_drv"> <resource name="RAM" quantum="4M"/> <provides><service name="Framebuffer"/></provides> </start>} append_if [have_spec ps2] config { <start name="ps2_drv"> <resource name="RAM" quantum="1M"/> <provides><service name="Input"/></provides> </start>} append config { <start name="timer"> <resource name="RAM" quantum="1M"/> <provides><service name="Timer"/></provides> </start> <start name="test-sdl"> <resource name="RAM" quantum="32M"/> <config> <libc stdout="/dev/log"> <vfs> <dir name="dev"> <log/> </dir> </vfs> </libc> </config> </start> </config>} install_config $config # # Boot modules # # generic modules set boot_modules { core init timer test-sdl ld.lib.so libc.lib.so sdl.lib.so pthread.lib.so } # platform-specific modules lappend_if [have_spec linux] boot_modules fb_sdl lappend_if [have_spec framebuffer] boot_modules fb_drv lappend_if [have_spec ps2] boot_modules ps2_drv append_platform_drv_boot_modules build_boot_image $boot_modules append qemu_args " -m 256 " run_genode_until forever