diff --git a/repos/gems/run/terminal_mux.run b/repos/gems/run/terminal_mux.run
index e14402d0b6..9b6c8ccabb 100644
--- a/repos/gems/run/terminal_mux.run
+++ b/repos/gems/run/terminal_mux.run
@@ -4,6 +4,8 @@
# \date 2013-02-20
#
+assert_spec x86
+
#
# On Linux, we don't have a UART driver, on which this run script depends.
#
@@ -40,7 +42,7 @@ append config {
-
+
@@ -57,7 +59,8 @@ append config {
-
+
+
@@ -66,7 +69,8 @@ append config {
-
+
+
@@ -141,7 +145,7 @@ set boot_modules {
core init timer ld.lib.so noux terminal_mux terminal_log
test-signal cli_monitor test-resource_yield posix.lib.so
libc.lib.so vfs.lib.so libm.lib.so libc_noux.lib.so libc_terminal.lib.so ncurses.lib.so
- vim.tar uart_drv
+ vim.tar pc_uart_drv
}
set fiasco_serial_esc_arg ""
diff --git a/repos/os/run/panda_uart4_echo.run b/repos/os/run/panda_uart4_echo.run
index 08f6500e12..187997bf45 100644
--- a/repos/os/run/panda_uart4_echo.run
+++ b/repos/os/run/panda_uart4_echo.run
@@ -39,7 +39,7 @@ set config {
-
+
@@ -62,7 +62,7 @@ install_config $config
# generic modules
set boot_modules {
core ld.lib.so init
- timer uart_drv test-terminal_echo
+ timer panda_uart_drv test-terminal_echo
}
build_boot_image $boot_modules
diff --git a/repos/os/run/uart.run b/repos/os/run/uart.run
index 01158f7274..014975ca44 100644
--- a/repos/os/run/uart.run
+++ b/repos/os/run/uart.run
@@ -2,6 +2,8 @@
# Build
#
+assert_spec pbxa9
+
# generic components
set build_components {
core init timer
@@ -37,7 +39,7 @@ set config {
-
+
@@ -69,7 +71,7 @@ install_config $config
# generic modules
set boot_modules {
core ld.lib.so init
- timer uart_drv test-uart
+ timer pbxa9_uart_drv test-uart
}
build_boot_image $boot_modules
diff --git a/repos/os/src/drivers/uart/spec/arndale/target.mk b/repos/os/src/drivers/uart/spec/arndale/target.mk
index daa5ce4ae7..ca8153a8cf 100644
--- a/repos/os/src/drivers/uart/spec/arndale/target.mk
+++ b/repos/os/src/drivers/uart/spec/arndale/target.mk
@@ -1,3 +1,4 @@
-REQUIRES = arndale
+TARGET = arndale_uart_drv
+REQUIRES = arm_v7
include $(REP_DIR)/src/drivers/uart/target.inc
diff --git a/repos/os/src/drivers/uart/spec/panda/target.mk b/repos/os/src/drivers/uart/spec/panda/target.mk
index 54a945a10d..942b7e9d82 100644
--- a/repos/os/src/drivers/uart/spec/panda/target.mk
+++ b/repos/os/src/drivers/uart/spec/panda/target.mk
@@ -1,3 +1,4 @@
-REQUIRES = panda
+TARGET = panda_uart_drv
+REQUIRES = arm_v7
include $(REP_DIR)/src/drivers/uart/target.inc
diff --git a/repos/os/src/drivers/uart/spec/pbxa9/target.mk b/repos/os/src/drivers/uart/spec/pbxa9/target.mk
index 9e66e7833a..2484b148fb 100644
--- a/repos/os/src/drivers/uart/spec/pbxa9/target.mk
+++ b/repos/os/src/drivers/uart/spec/pbxa9/target.mk
@@ -1,3 +1,4 @@
-REQUIRES = pbxa9
+TARGET = pbxa9_uart_drv
+REQUIRES = arm_v7
include $(REP_DIR)/src/drivers/uart/target.inc
diff --git a/repos/os/src/drivers/uart/spec/x86/target.mk b/repos/os/src/drivers/uart/spec/x86/target.mk
index 7cd5fb431e..44ed442e38 100644
--- a/repos/os/src/drivers/uart/spec/x86/target.mk
+++ b/repos/os/src/drivers/uart/spec/x86/target.mk
@@ -1,3 +1,4 @@
+TARGET = pc_uart_drv
REQUIRES = x86
include $(REP_DIR)/src/drivers/uart/target.inc
diff --git a/repos/os/src/drivers/uart/target.inc b/repos/os/src/drivers/uart/target.inc
index 25e71f6269..2e5c97fdc1 100644
--- a/repos/os/src/drivers/uart/target.inc
+++ b/repos/os/src/drivers/uart/target.inc
@@ -1,4 +1,3 @@
-TARGET = uart_drv
SRC_CC = main.cc
LIBS = base
diff --git a/repos/ports/run/debug_nitpicker.run b/repos/ports/run/debug_nitpicker.run
index 663056e348..5d116a1c2d 100644
--- a/repos/ports/run/debug_nitpicker.run
+++ b/repos/ports/run/debug_nitpicker.run
@@ -12,6 +12,8 @@
# 'tcp_terminal' could be used (to attach GDB via a network connection).
#
+assert_spec x86
+
create_boot_directory
import_from_depot [depot_user]/src/[base_src] \
[depot_user]/pkg/[drivers_interactive_pkg] \
@@ -49,7 +51,7 @@ install_config {
-
+
@@ -111,7 +113,7 @@ proc binary_name_gdbserver_platform_lib_so { } {
# generic modules
build_boot_image {
libc.lib.so vfs.lib.so libc_pipe.lib.so
- uart_drv
+ pc_uart_drv
gdb_monitor gdbserver_platform.lib.so
}
diff --git a/repos/ports/run/gdb_monitor.run b/repos/ports/run/gdb_monitor.run
index 1ece2db2fa..e3e1434ba5 100644
--- a/repos/ports/run/gdb_monitor.run
+++ b/repos/ports/run/gdb_monitor.run
@@ -55,7 +55,7 @@ set config {
-
+
@@ -97,7 +97,7 @@ proc binary_name_gdbserver_platform_lib_so { } {
set boot_modules {
core init timer
ld.lib.so libc.lib.so vfs.lib.so libm.lib.so libc_pipe.lib.so
- uart_drv posix.lib.so
+ pc_uart_drv posix.lib.so
gdb_monitor gdbserver_platform.lib.so test-gdb_monitor
}
diff --git a/repos/ports/run/gdb_monitor_interactive.run b/repos/ports/run/gdb_monitor_interactive.run
index 59535d549d..998c0209be 100644
--- a/repos/ports/run/gdb_monitor_interactive.run
+++ b/repos/ports/run/gdb_monitor_interactive.run
@@ -5,6 +5,8 @@
# \date 2011-05-24
#
+assert_spec x86
+
#
# Build
#
@@ -46,7 +48,7 @@ set config {
-
+
@@ -83,10 +85,8 @@ proc binary_name_gdbserver_platform_lib_so { } {
# generic modules
set boot_modules {
- core init timer
- ld.lib.so libc.lib.so vfs.lib.so libm.lib.so posix.lib.so
libc_pipe.lib.so
- uart_drv
+ pc_uart_drv
gdb_monitor gdbserver_platform.lib.so test-gdb_monitor
}
diff --git a/repos/ports/run/gdb_monitor_target_config.run b/repos/ports/run/gdb_monitor_target_config.run
index 0ed988b5b0..2a4de0326d 100644
--- a/repos/ports/run/gdb_monitor_target_config.run
+++ b/repos/ports/run/gdb_monitor_target_config.run
@@ -4,6 +4,7 @@
# \date 2012-04-16
#
+assert_spec x86
#
# Build
#
@@ -45,7 +46,7 @@ set config {
-
+
@@ -85,7 +86,7 @@ proc binary_name_gdbserver_platform_lib_so { } {
set boot_modules {
core init timer
ld.lib.so libc.lib.so vfs.lib.so libc_pipe.lib.so
- uart_drv
+ pc_uart_drv
gdb_monitor gdbserver_platform.lib.so test-gdb_monitor_target_config
}
diff --git a/repos/ports/run/libc_noux.run b/repos/ports/run/libc_noux.run
deleted file mode 100644
index 6ebdeabc81..0000000000
--- a/repos/ports/run/libc_noux.run
+++ /dev/null
@@ -1,101 +0,0 @@
-if {[have_spec linux]} {
- puts "\nLinux not supported because of missing UART driver\n"
- exit 0
-}
-
-set build_components {
- core init timer drivers/uart
- noux lib/libc_noux
- server/ram_fs test/libc_noux
-}
-
-build $build_components
-
-# create tar archive
-exec tar cfv bin/libc_noux.tar -h -C bin test-libc_noux
-
-create_boot_directory
-
-append config {
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-}
-
-install_config $config
-
-
-#
-# Boot modules
-#
-
-# generic modules
-set boot_modules {
- core init timer uart_drv ram_fs noux
- ld.lib.so libc.lib.so vfs.lib.so libc_noux.lib.so posix.lib.so
- libc_noux.tar
-}
-
-build_boot_image $boot_modules
-
-#
-# Redirect the output of Noux via the virtual serial port 1 into a file to be
-# dumped after the successful completion of the test.
-#
-set noux_output_file "noux_output.log"
-
-append qemu_args " -nographic"
-append qemu_args " -serial mon:stdio"
-append qemu_args " -serial file:$noux_output_file"
-
-run_genode_until "child.*exited.*\n" 20
-
-set output [exec cat $noux_output_file]
-puts $output
-
-exec rm bin/libc_noux.tar
-exec rm $noux_output_file
-
-grep_output "test finished"
-compare_output_to "test finished"
diff --git a/repos/ports/run/noux_signals.run b/repos/ports/run/noux_signals.run
deleted file mode 100644
index 133f47e1de..0000000000
--- a/repos/ports/run/noux_signals.run
+++ /dev/null
@@ -1,100 +0,0 @@
-set build_components {
- core init timer drivers/uart
- noux
- test/noux_signals
-}
-
-build $build_components
-
-# create tar archive
-exec tar cfv bin/noux_signals.tar -h -C bin test-noux_signals
-
-create_boot_directory
-
-append config {
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-}
-
-install_config $config
-
-set boot_modules {
- core init timer ld.lib.so noux libc.lib.so vfs.lib.so posix.lib.so
- uart_drv libc_noux.lib.so noux_signals.tar
-}
-
-build_boot_image $boot_modules
-
-#
-# Redirect the LOG session output of Noux into a file
-#
-set noux_output_file "noux_signals.log"
-
-append qemu_args " -nographic"
-append qemu_args " -serial file:$noux_output_file"
-append qemu_args " -serial mon:stdio"
-
-run_genode_until "test ready" 10
-
-# send Ctrl-C
-send \003
-
-run_genode_until "test finished" 10 $spawn_id
-
-set error_occured 0
-
-if {![regexp {0: signal handler for signal 2 called} $output]} {
- set error_occured 1
-}
-
-if {![regexp {1: signal handler for signal 2 called} $output]} {
- set error_occured 1
-}
-
-if {![regexp {0: 'read\(\)' returned with error EINTR} $output]} {
- set error_occured 1
-}
-
-if {![regexp {1: 'read\(\)' returned with error EINTR} $output]} {
- set error_occured 1
-}
-
-if { $error_occured == 1 } {
- puts "output not as expected"
- exit -1
-}
-
-exec rm bin/noux_signals.tar
-exec rm $noux_output_file
-