assert_spec foc # # Build # set build_components { core init drivers/timer drivers/framebuffer server/nitpicker server/liquid_framebuffer app/launchpad l4linux } lappend_if [have_spec pci] build_components drivers/pci lappend_if [have_spec ps2] build_components drivers/input/ps2 lappend_if [have_spec usb] build_components drivers/usb build $build_components create_boot_directory # # Config # set config { } append_if [have_spec pci] config { } append_if [have_spec framebuffer] config { } append_if [have_spec ps2] config { } append_if [expr ![have_spec ps2] && [have_spec usb]] config { } append config { init 70M } install_config $config # # Boot modules # set boot_modules { core init timer nitpicker launchpad liquid_fb l4linux initrd.gz } lappend_if [have_spec pci] boot_modules pci_drv lappend_if [have_spec ps2] boot_modules ps2_drv lappend_if [have_spec framebuffer] boot_modules fb_drv lappend_if [have_spec usb] boot_modules usb_drv if {[have_spec x86]} { set uri "https://github.com/downloads/skalk/genode/busybox-initrd-x86-20120618.gz" } elseif {[have_spec arm]} { set uri "https://github.com/downloads/skalk/genode/busybox-initrd-arm-20120618.gz" } if {![file exists bin/initrd.gz]} { puts "Download initramfs ..." exec >& /dev/null wget -c -O bin/initrd.gz $uri } build_boot_image [join $boot_modules " "] # # Qemu # append qemu_args " -m 512 " append qemu_args " -serial mon:stdio " append_if [have_spec x86] qemu_args " -net nic,model=e1000 -net user " append_if [have_spec lan9118] qemu_args " -net nic,model=lan9118 -net user " # # Execute test case # run_genode_until forever