if {![have_spec foc] || ![have_spec 32bit]} { puts "\nThe Noux GDB scenario is supported on 32-bit Fiasco.OC only\n" exit 0 } source ${genode_dir}/repos/ports/run/noux_gdb.inc if {[have_spec arm]} { set tool_prefix "genode-arm-" } if {[have_spec x86]} { set tool_prefix "genode-x86-" } # # Uncomment the following line when working on the GDB source code. Otherwise, # the package may get recompiled, yet it does not get reinstalled into 'bin/'. # #exec rm -rf noux-pkg/[noux_gdb_pkg_name]/ bin/[noux_gdb_pkg_name]/ set build_components { core init drivers/timer noux lib/libc_noux drivers/framebuffer drivers/pci drivers/input drivers/usb server/terminal server/terminal_crosslink app/gdb_monitor test/gdb_monitor } lappend_if [have_spec gpio] build_components drivers/gpio lappend build_components noux-pkg/[noux_gdb_pkg_name] # the application to be debugged with GDB lappend build_components test/gdb_monitor set gdb_target_binary_name test-gdb_monitor build $build_components # names of the binaries needed for the GDB monitor test set gdb_target_binaries { test-gdb_monitor ld.lib.so libc.lib.so libc_log.lib.so } lappend gdb_target_binaries ${gdb_target_binary_name} create_gdb_tar create_binary_and_source_tars ${gdb_target_binary_name} ${gdb_target_binaries} create_boot_directory append config { } append_if [have_spec sdl] config { } append_if [have_spec pci] config { } append_if [have_spec framebuffer] config { } append_if [have_spec ps2] config { } append_if [have_spec gpio] config { } append_if [expr ![have_spec ps2] && [have_spec usb]] config { } append config { } append config " " append config { } append config " " append config { } append config " " append config { } append config " " append config { } install_config $config # # Boot modules # # generic modules set boot_modules { core init timer ld.lib.so noux terminal terminal_crosslink libc.lib.so libm.lib.so libc_noux.lib.so ncurses.lib.so expat.lib.so libc_lock_pipe.lib.so libc_log.lib.so libc_terminal.lib.so gdb_monitor test-gdb_monitor gdb.tar test-gdb_monitor.tar test-gdb_monitor-src.tar } # 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 framebuffer] boot_modules fb_drv lappend_if [have_spec ps2] boot_modules ps2_drv lappend_if [have_spec usb] boot_modules usb_drv lappend_if [have_spec gpio] boot_modules gpio_drv build_boot_image $boot_modules run_genode_until forever exec rm bin/gdb.tar