#
# Build
#
set build_components {
core init
drivers/timer
server/nitpicker app/pointer app/status_bar
server/liquid_framebuffer app/launchpad app/scout
test/nitpicker server/nitlog
drivers/framebuffer drivers/pci drivers/input
server/report_rom
}
lappend_if [have_spec usb] build_components drivers/usb
lappend_if [have_spec gpio] build_components drivers/gpio
lappend_if [have_spec imx53] build_components drivers/platform
lappend_if [have_spec exynos5] build_components drivers/platform
lappend_if [have_spec platform_rpi] build_components drivers/platform
build $build_components
create_boot_directory
#
# Generate config
#
append config {
}
append_if [have_spec sdl] config {
}
append_if [have_spec pci] config {
}
append_if [have_spec framebuffer] config {
}
append_if [have_spec gpio] config {
}
append_if [have_spec exynos5] config {
}
append_if [have_spec platform_rpi] config {
}
append_if [have_spec imx53] config {
}
append_if [have_spec ps2] config {
}
append_if [expr ![have_spec ps2] && [have_spec usb]] config {
}
append config {
}
install_config $config
#
# Create launchpad configuration
#
set launchpad_config_fd [open "bin/launchpad.config" w]
puts $launchpad_config_fd {
}
close $launchpad_config_fd
#
# Boot modules
#
# generic modules
set boot_modules {
core init
timer
nitpicker pointer status_bar report_rom liquid_fb launchpad scout
testnit nitlog
launchpad.config
}
# platform-specific modules
lappend_if [have_spec linux] boot_modules fb_sdl
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
lappend_if [have_spec gpio] boot_modules gpio_drv
lappend_if [have_spec imx53] boot_modules platform_drv
lappend_if [have_spec exynos5] boot_modules platform_drv
lappend_if [have_spec platform_rpi] boot_modules platform_drv
lappend_if [have_spec imx53] boot_modules input_drv
build_boot_image $boot_modules
append qemu_args " -m 256 "
run_genode_until forever