summaryrefslogtreecommitdiff
path: root/testsuites
diff options
context:
space:
mode:
authorAmar Takhar <amar@rtems.org>2014-12-28 17:24:12 -0500
committerAmar Takhar <amar@rtems.org>2015-12-11 15:13:45 -0500
commit162684666af4c15522052447afb7775a413f4d6a (patch)
tree7d256a52beb6458ac3b17c0ba73966a41e9dbdb6 /testsuites
parentb618d8cfc54f84d4ed03dc7b7fa510c872e6128a (diff)
Add waf build system.
Diffstat (limited to 'testsuites')
-rw-r--r--testsuites/fstests/wscript92
-rw-r--r--testsuites/libtests/wscript167
-rw-r--r--testsuites/mptests/wscript57
-rw-r--r--testsuites/psxtests/wscript109
-rw-r--r--testsuites/psxtmtests/wscript52
-rw-r--r--testsuites/smptests/wscript21
-rw-r--r--testsuites/sptests/wscript203
-rw-r--r--testsuites/tmtests/wscript44
-rw-r--r--testsuites/wscript54
9 files changed, 799 insertions, 0 deletions
diff --git a/testsuites/fstests/wscript b/testsuites/fstests/wscript
new file mode 100644
index 0000000000..ae3214ab97
--- /dev/null
+++ b/testsuites/fstests/wscript
@@ -0,0 +1,92 @@
+def build(ctx):
+ srcnode = ctx.srcnode. abspath()
+
+ includes_common = [
+ "%s/testsuites/fstests/support" % srcnode,
+ "%s/testsuites/psxtests/include" % srcnode,
+ "%s/testsuites/support/include" % srcnode,
+ ]
+
+ def test(target, source, includes=[], use=[]):
+ ctx.rtems_test(
+ "fstests_%s" % target,
+ source,
+ includes = includes_common + includes,
+ use = use
+ )
+
+ def objects_common(target, source):
+ ctx.objects(
+ source = source,
+ name = "fstests_%s_common" % target,
+ includes = ["%s/testsuites/fstests/%s_support" % (srcnode, target)] + includes_common,
+ features = "bld_include src_include"
+ )
+
+
+ def imfs(target, source):
+ test(
+ target,
+ source,
+ includes = ["%s/testsuites/fstests/imfs_support" % srcnode],
+ use = "fstests_imfs_common"
+ )
+ objects_common("imfs", ["imfs_support/fs_support.c", "support/fstest_support.c"])
+ imfs("imfs_fserror", ["fserror/test.c"])
+ imfs("imfs_fslink", ["fslink/test.c"])
+ imfs("imfs_fspatheval", ["fspatheval/test.c"])
+ imfs("imfs_fspermission", ["fspermission/test.c"])
+ imfs("imfs_fsrdwr", ["fsrdwr/init.c"])
+ imfs("imfs_fssymlink", ["fssymlink/test.c"])
+ imfs("imfs_fstime", ["fstime/test.c"])
+
+
+
+ def mdosfs(target, source):
+ test(
+ target,
+ source,
+ includes = ["%s/testsuites/fstests/mdosfs_support" % srcnode],
+ use = "fstests_mdosfs_common"
+ )
+ objects_common("mdosfs", ["mdosfs_support/fs_support.c", "support/fstest_support.c", "support/ramdisk_support.c"])
+ mdosfs("mdosfs_fserror", ["fserror/test.c"])
+ mdosfs("mdosfs_fspatheval", ["fspatheval/test.c"])
+ mdosfs("mdosfs_fsrdwr", ["fsrdwr/init.c"])
+ mdosfs("mdosfs_fstime", ["fstime/test.c"])
+
+
+
+ def mimfs(target, source):
+ test(
+ target,
+ source,
+ includes = ["%s/testsuites/fstests/mimfs_support" % srcnode],
+ use = "fstests_mimfs_common"
+ )
+ objects_common("mimfs", ["mimfs_support/fs_support.c", "support/fstest_support.c"])
+ mimfs("mimfs_fserror", ["fserror/test.c"])
+ mimfs("mimfs_fslink", ["fslink/test.c"])
+ mimfs("mimfs_fspatheval", ["fspatheval/test.c"])
+ mimfs("mimfs_fspermission", ["fspermission/test.c"])
+ mimfs("mimfs_fsrdwr", ["fsrdwr/init.c"])
+ mimfs("mimfs_fssymlink", ["fssymlink/test.c"])
+ mimfs("mimfs_fstime", ["fstime/test.c"])
+
+
+
+ def mrfs(target, source):
+ test(
+ target,
+ source,
+ includes = ["%s/testsuites/fstests/mimfs_support" % srcnode],
+ use = "fstests_mrfs_common"
+ )
+ objects_common("mrfs", ["mrfs_support/fs_support.c", "support/fstest_support.c", "support/ramdisk_support.c"])
+ mrfs("mrfs_fserror", ["fserror/test.c"])
+ mrfs("mrfs_fslink", ["fslink/test.c"])
+ mrfs("mrfs_fspatheval", ["fspatheval/test.c"])
+ mrfs("mrfs_fspermission", ["fspermission/test.c"])
+ mrfs("mrfs_fsrdwr", ["fsrdwr/init.c"])
+ mrfs("mrfs_fssymlink", ["fssymlink/test.c"])
+ mrfs("mrfs_fstime", ["fstime/test.c"])
diff --git a/testsuites/libtests/wscript b/testsuites/libtests/wscript
new file mode 100644
index 0000000000..757f786afc
--- /dev/null
+++ b/testsuites/libtests/wscript
@@ -0,0 +1,167 @@
+def build(ctx):
+
+ broken = False
+# XXX: This needs fixing!
+ if broken:
+# if ctx.env.ENABLE_POSIX:
+ def posix(target, source):
+ ctx.rtems_test(
+ "libtests_posix_%s" % target,
+ source,
+ )
+
+ posix("calloc", "POSIX/calloc.c")
+ posix("clock_gettime", "POSIX/clock_gettime.c")
+ posix("close", "POSIX/close.c")
+ posix("dup2", "POSIX/dup2.c")
+ posix("fcntl", "POSIX/fcntl.c")
+ posix("flockfile", "POSIX/flockfile.c")
+ posix("fork", "POSIX/fork.c")
+ posix("free", "POSIX/free.c")
+ posix("fstat", "POSIX/fstat.c")
+ posix("ftrylockfile", "POSIX/ftrylockfile.c")
+ posix("funlockfile", "POSIX/funlockfile.c")
+ posix("getlogin", "POSIX/getlogin.c")
+ posix("getpwnam", "POSIX/getpwnam.c")
+ posix("getpwuid", "POSIX/getpwuid.c")
+ posix("gettimeofday", "POSIX/gettimeofday.c")
+ posix("getuid", "POSIX/getuid.c")
+ posix("htonl", "POSIX/htonl.c")
+ posix("iconv", "POSIX/iconv.c")
+ posix("iconv_close", "POSIX/iconv_close.c")
+ posix("iconv_open", "POSIX/iconv_open.c")
+ posix("kill", "POSIX/kill.c")
+ posix("longjmp", "POSIX/longjmp.c")
+ posix("lseek", "POSIX/lseek.c")
+ posix("lstat", "POSIX/lstat.c")
+ posix("malloc", "POSIX/malloc.c")
+ posix("nanosleep", "POSIX/nanosleep.c")
+ posix("open", "POSIX/open.c")
+ posix("pipe", "POSIX/pipe.c")
+ posix("posix_memalign", "POSIX/posix_memalign.c")
+ posix("read", "POSIX/read.c")
+ posix("readv", "POSIX/readv.c")
+ posix("realloc", "POSIX/realloc.c")
+ posix("setjmp", "POSIX/setjmp.c")
+ posix("sigaddset", "POSIX/sigaddset.c")
+ posix("sigdelset", "POSIX/sigdelset.c")
+ posix("sigemptyset", "POSIX/sigemptyset.c")
+ posix("sigfillset", "POSIX/sigfillset.c")
+ posix("sigismember", "POSIX/sigismember.c")
+ posix("sigprocmask", "POSIX/sigprocmask.c")
+ posix("stat", "POSIX/stat.c")
+ posix("unlink", "POSIX/unlink.c")
+ posix("vfork", "POSIX/vfork.c")
+ posix("wait", "POSIX/wait.c")
+ posix("waitpid", "POSIX/waitpid.c")
+ posix("write", "POSIX/write.c")
+ posix("writev", "POSIX/writev.c")
+
+ return
+
+ def test(target, source, **kwarg):
+ ctx.rtems_test(
+ "libtests_%s" % target,
+ source,
+ features = "test_include",
+ **kwarg
+ )
+
+ test("block01", ["block01/init.c"])
+ test("block02", ["block02/init.c"])
+ test("block03", ["block03/init.c"])
+ test("block04", ["block04/init.c"])
+ test("block05", ["block05/init.c"])
+ test("block06", ["block06/init.c"])
+ test("block07", ["block07/init.c"])
+ test(
+ "block08",
+ ["block08/bdbuf_test1_1.c", "block08/bdbuf_test1_2.c", "block08/bdbuf_test1_3.c", "block08/bdbuf_test1_4.c", "block08/bdbuf_test1_5.c", "block08/bdbuf_test2_1.c", "block08/bdbuf_test2_2.c", "block08/bdbuf_test3_1.c", "block08/bdbuf_test3_2.c", "block08/bdbuf_test3_3.c", "block08/bdbuf_test4_1.c", "block08/bdbuf_test4_2.c", "block08/bdbuf_test4_3.c", "block08/bdbuf_tests.c", "block08/init.c", "block08/test_disk.c"],
+ includes="%s/testsuites/libtests/block08" % ctx.srcnode.abspath()
+ )
+ test("block09", ["block09/init.c"])
+ test("block10", ["block10/init.c"])
+ test("bspcmdline01", ["bspcmdline01/init.c"])
+# requires build hacking test("complex", ["complex/docomplex.c", "complex/docomplexf.c", "complex/docomplexl.c", "complex/init.c"], stlib=["m"])
+ test("cpuuse", ["cpuuse/init.c", "cpuuse/task1.c", "cpuuse/task2.c", "cpuuse/task3.c", "cpuuse/tswitch.c"])
+ test("devfs01", ["devfs01/init.c"])
+ test("devfs02", ["devfs02/init.c"])
+ test("devfs03", ["devfs03/init.c"])
+ test("devfs04", ["devfs04/init.c", "devfs04/test_driver.c"])
+ test("deviceio01", ["deviceio01/init.c", "deviceio01/test_driver.c"])
+# test("devnullfatal01", ["../sptests/spfatal_support/init.c"]) # XXX: relative path
+ test("dumpbuf01", ["dumpbuf01/init.c"])
+ test("ftp01", ["ftp01/init.c"])
+ test("gxx01", ["gxx01/init.c"])
+ test("heapwalk", ["heapwalk/init.c"])
+ test("malloc02", ["malloc02/init.c"])
+ test("malloc03", ["malloc03/init.c"])
+ test("malloc04", ["malloc04/init.c"])
+ test("malloc05", ["malloc05/init.c"])
+ test("malloctest", ["malloctest/init.c", "malloctest/task1.c"])
+
+ test(
+ "math",
+ ["math/domath.c", "math/init.c"],
+ stlib=["m"]
+ )
+
+ test(
+ "mathf",
+ ["mathf/domathf.c", "mathf/init.c"],
+ stlib=["m"]
+ )
+
+ test(
+ "mathl",
+ ["mathl/domathl.c", "mathl/init.c"],
+ stlib=["m"]
+)
+ test("monitor", ["monitor/init.c"])
+
+ test("monitor02", ["monitor02/init.c"])
+
+ test(
+ "mouse01",
+ ["mouse01/init.c", "mouse01/msmouse.c", "mouse01/serial_mouse_config.c", "termios04/termios_testdriver_intr.c"],
+ includes="%s/testsuites/libtests/termios04" % ctx.srcnode.abspath()
+ )
+
+ test("putenvtest", ["putenvtest/init.c"])
+# test("rtems++", ["Init.cc", "Task1.cc", "Task2.cc", "Task3.cc"])
+
+ test("rtmonuse", ["rtmonuse/getall.c", "rtmonuse/init.c", "rtmonuse/task1.c"])
+ test("stackchk", ["stackchk/blow.c", "stackchk/init.c", "stackchk/task1.c"])
+ test("stackchk01", ["stackchk01/init.c"])
+ test("stringto01", ["stringto01/init.c"])
+#bin2c test("tar01", ["tar01/init.c"])
+#bin2c test("tar02", ["tar02/init.c"])
+ test("tar03", ["tar03/init.c"])
+ test("termios", ["termios/init.c"])
+ test("termios01", ["termios01/init.c", "termios01/termios_testdriver.c"])
+ test("termios02", ["termios02/init.c"])
+ test("termios03", ["termios03/init.c", "termios03/termios_testdriver_polled.c"])
+ test("termios04", ["termios04/init.c", "termios04/termios_testdriver_intr.c"])
+ test(
+ "termios05",
+ ["termios05/init.c", "termios05/termios_testdriver_taskdriven.c"],
+ includes="%s/testsuites/libtests/termios04" % ctx.srcnode.abspath()
+ )
+ test(
+ "termios06",
+ ["termios06/init.c", "termios06/test_pppd.c", "termios04/termios_testdriver_intr.c"],
+ includes="%s/testsuites/libtests/termios03" % ctx.srcnode.abspath()
+ )
+ test(
+ "termios07",
+ ["termios07/init.c", "termios04/termios_testdriver_intr.c"],
+ includes="%s/testsuites/libtests/termios04" % ctx.srcnode.abspath()
+ )
+ test(
+ "termios08",
+ ["termios08/init.c", "termios04/termios_testdriver_intr.c"],
+ includes="%s/testsuites/libtests/termios03" % ctx.srcnode.abspath()
+ )
+ test("tztest", ["tztest/init.c"])
+
+
diff --git a/testsuites/mptests/wscript b/testsuites/mptests/wscript
new file mode 100644
index 0000000000..e727092bc7
--- /dev/null
+++ b/testsuites/mptests/wscript
@@ -0,0 +1,57 @@
+def build(ctx):
+ srcnode = ctx.srcnode.abspath()
+
+ def test(target, source, defines):
+ ctx.rtems_test(
+ "mptests_%s" % target,
+ source,
+ includes = [
+ "%s/testsuites/psxtests/include/" % srcnode,
+ "%s/c/src/libchip/shmdr/" % srcnode,
+ ],
+ features = "test_include",
+ defines = defines
+ )
+
+ test("mp01-node01", ["mp01/init.c", "mp01/task1.c"], defines=["NODE_NUMBER=1"])
+ test("mp01-node02", ["mp01/init.c", "mp01/task1.c"], defines=["NODE_NUMBER=2"])
+
+ test("mp02-node01", ["mp02/init.c", "mp02/task1.c"], defines=["NODE_NUMBER=1"])
+ test("mp02-node02", ["mp02/init.c", "mp02/task1.c"], defines=["NODE_NUMBER=1"])
+
+ test("mp03-node01", ["mp03/delay.c", "mp03/init.c", "mp03/task1.c"], defines=["NODE_NUMBER=1"])
+ test("mp03-node02", ["mp03/delay.c", "mp03/init.c", "mp03/task1.c"], defines=["NODE_NUMBER=1"])
+
+ test("mp04-node01", ["mp04/init.c", "mp04/task1.c"], defines=["NODE_NUMBER=1"])
+ test("mp04-node02", ["mp04/init.c", "mp04/task1.c"], defines=["NODE_NUMBER=1"])
+
+ test("mp05-node01", ["mp05/asr.c", "mp05/init.c", "mp05/task1.c"], defines=["NODE_NUMBER=1"])
+ test("mp05-node02", ["mp05/asr.c", "mp05/init.c", "mp05/task1.c"], defines=["NODE_NUMBER=1"])
+
+ test("mp06-node01", ["mp06/init.c", "mp06/task1.c"], defines=["NODE_NUMBER=1"])
+ test("mp06-node02", ["mp06/init.c", "mp06/task1.c"], defines=["NODE_NUMBER=1"])
+
+ test("mp07-node01", ["mp07/init.c", "mp07/task1.c"], defines=["NODE_NUMBER=1"])
+ test("mp07-node02", ["mp07/init.c", "mp07/task1.c"], defines=["NODE_NUMBER=1"])
+
+ test("mp08-node01", ["mp08/init.c", "mp08/task1.c"], defines=["NODE_NUMBER=1"])
+ test("mp08-node02", ["mp08/init.c", "mp08/task1.c"], defines=["NODE_NUMBER=1"])
+
+ test("mp09-node01", ["mp09/init.c", "mp09/recvmsg.c", "mp09/sendmsg.c", "mp09/task1.c"], defines=["NODE_NUMBER=1"])
+ test("mp09-node02", ["mp09/init.c", "mp09/recvmsg.c", "mp09/sendmsg.c", "mp09/task1.c"], defines=["NODE_NUMBER=1"])
+
+ test("mp10-node01", ["mp10/init.c", "mp10/task1.c", "mp10/task2.c", "mp10/task3.c"], defines=["NODE_NUMBER=1"])
+ test("mp10-node02", ["mp10/init.c", "mp10/task1.c", "mp10/task2.c", "mp10/task3.c"], defines=["NODE_NUMBER=1"])
+
+ test("mp11-node01", ["mp11/init.c"], defines=["NODE_NUMBER=1"])
+ test("mp11-node02", ["mp11/init.c"], defines=["NODE_NUMBER=1"])
+
+ test("mp12-node01", ["mp12/init.c"], defines=["NODE_NUMBER=1"])
+ test("mp12-node02", ["mp12/init.c"], defines=["NODE_NUMBER=1"])
+
+ test("mp13-node01", ["mp13/init.c", "mp13/task1.c", "mp13/task2.c"], defines=["NODE_NUMBER=1"])
+ test("mp13-node02", ["mp13/init.c", "mp13/task1.c", "mp13/task2.c"], defines=["NODE_NUMBER=1"])
+
+#XXX: MAX_LONG_TEST_DURATION needs to be an option in config.cg
+ test("mp14-node01", ["mp14/delay.c", "mp14/evtask1.c", "mp14/evtmtask.c", "mp14/exit.c", "mp14/init.c", "mp14/msgtask1.c", "mp14/pttask1.c", "mp14/smtask1.c"], defines=["NODE_NUMBER=1", "MAX_LONG_TEST_DURATION=100"])
+ test("mp14-node02", ["mp14/delay.c", "mp14/evtask1.c", "mp14/evtmtask.c", "mp14/exit.c", "mp14/init.c", "mp14/msgtask1.c", "mp14/pttask1.c", "mp14/smtask1.c"], defines=["NODE_NUMBER=1", "MAX_LONG_TEST_DURATION=100"])
diff --git a/testsuites/psxtests/wscript b/testsuites/psxtests/wscript
new file mode 100644
index 0000000000..fc597ae728
--- /dev/null
+++ b/testsuites/psxtests/wscript
@@ -0,0 +1,109 @@
+def build(ctx):
+ srcnode = ctx.srcnode.abspath()
+
+ def test(target, source, **kwarg):
+
+ includes_merge = []
+ if "includes" in kwarg:
+ includes_merge = kwarg["includes"]
+ del kwarg["includes"]
+
+ ctx.rtems_test(
+ "sptests_%s" % target,
+ source,
+ includes = [
+ "%s/testsuites/psxtests/include/" % srcnode,
+ ] + includes_merge,
+ features = "test_include",
+ **kwarg
+ )
+
+
+ ctx(
+ target = "test_psxtests_psxhdrs",
+ source = ["psxhdrs/clock01.c", "psxhdrs/clock02.c", "psxhdrs/clock03.c", "psxhdrs/clock04.c", "psxhdrs/clock05.c", "psxhdrs/clock06.c", "psxhdrs/cond01.c", "psxhdrs/cond02.c", "psxhdrs/cond03.c", "psxhdrs/cond04.c", "psxhdrs/cond05.c", "psxhdrs/cond06.c", "psxhdrs/cond07.c", "psxhdrs/cond08.c", "psxhdrs/cond09.c", "psxhdrs/cond10.c", "psxhdrs/key01.c", "psxhdrs/key02.c", "psxhdrs/key03.c", "psxhdrs/key04.c", "psxhdrs/mutex01.c", "psxhdrs/mutex02.c", "psxhdrs/mutex03.c", "psxhdrs/mutex04.c", "psxhdrs/mutex05.c", "psxhdrs/mutex06.c", "psxhdrs/mutex07.c", "psxhdrs/mutex08.c", "psxhdrs/mutex09.c", "psxhdrs/mutex10.c", "psxhdrs/mutex11.c", "psxhdrs/mutex12.c", "psxhdrs/mutex13.c", "psxhdrs/mutex14.c", "psxhdrs/mutex15.c", "psxhdrs/mutex16.c", "psxhdrs/proc01.c", "psxhdrs/proc02.c", "psxhdrs/proc03.c", "psxhdrs/proc04.c", "psxhdrs/proc05.c", "psxhdrs/proc06.c", "psxhdrs/proc07.c", "psxhdrs/proc08.c", "psxhdrs/proc09.c", "psxhdrs/proc10.c", "psxhdrs/proc11.c", "psxhdrs/proc12.c", "psxhdrs/proc13.c", "psxhdrs/proc14.c", "psxhdrs/pthread01.c", "psxhdrs/pthread02.c", "psxhdrs/pthread03.c", "psxhdrs/pthread04.c", "psxhdrs/pthread05.c", "psxhdrs/pthread06.c", "psxhdrs/pthread07.c", "psxhdrs/pthread08.c", "psxhdrs/pthread09.c", "psxhdrs/pthread10.c", "psxhdrs/pthread11.c", "psxhdrs/pthread12.c", "psxhdrs/pthread13.c", "psxhdrs/pthread14.c", "psxhdrs/pthread15.c", "psxhdrs/pthread16.c", "psxhdrs/pthread17.c", "psxhdrs/pthread18.c", "psxhdrs/pthread19.c", "psxhdrs/pthread20.c", "psxhdrs/pthread21.c", "psxhdrs/pthread22.c", "psxhdrs/pthread23.c", "psxhdrs/pthread24.c", "psxhdrs/pthread25.c", "psxhdrs/pthread26.c", "psxhdrs/pthread27.c", "psxhdrs/pthread28.c", "psxhdrs/pthread29.c", "psxhdrs/pthread30.c", "psxhdrs/pthread31.c", "psxhdrs/pthread32.c", "psxhdrs/pthread34.c", "psxhdrs/pthread35.c", "psxhdrs/pthread36.c", "psxhdrs/pthread37.c", "psxhdrs/pthread38.c", "psxhdrs/pthread39.c", "psxhdrs/pthread40.c", "psxhdrs/sched01.c", "psxhdrs/sched02.c", "psxhdrs/sched03.c", "psxhdrs/sched04.c", "psxhdrs/sched05.c", "psxhdrs/sched06.c", "psxhdrs/sched07.c", "psxhdrs/sched08.c", "psxhdrs/signal01.c", "psxhdrs/signal02.c", "psxhdrs/signal03.c", "psxhdrs/signal04.c", "psxhdrs/signal05.c", "psxhdrs/signal06.c", "psxhdrs/signal07.c", "psxhdrs/signal08.c", "psxhdrs/signal09.c", "psxhdrs/signal10.c", "psxhdrs/signal11.c", "psxhdrs/signal12.c", "psxhdrs/signal13.c", "psxhdrs/signal14.c", "psxhdrs/signal15.c", "psxhdrs/signal16.c", "psxhdrs/signal17.c", "psxhdrs/signal18.c", "psxhdrs/signal19.c", "psxhdrs/signal20.c", "psxhdrs/signal21.c", "psxhdrs/signal22.c", "psxhdrs/signal23.c", "psxhdrs/sync01.c", "psxhdrs/sync02.c", "psxhdrs/sync03.c", "psxhdrs/time01.c", "psxhdrs/time02.c", "psxhdrs/time03.c", "psxhdrs/time04.c", "psxhdrs/time05.c", "psxhdrs/time06.c", "psxhdrs/time07.c", "psxhdrs/time08.c", "psxhdrs/time09.c", "psxhdrs/time10.c", "psxhdrs/time11.c", "psxhdrs/time12.c", "psxhdrs/time13.c", "psxhdrs/timer01.c", "psxhdrs/timer02.c", "psxhdrs/timer03.c", "psxhdrs/timer04.c", "psxhdrs/timer05.c", "psxhdrs/timer06.c", "psxhdrs/timer07.c"],
+ features = "c cstlib bld_include src_include",
+ )
+
+
+ test("psx01", ["psx01/init.c", "psx01/task.c"])
+ test("psx02", ["psx02/init.c", "psx02/task.c"])
+ test("psx03", ["psx03/init.c", "psx03/task.c"])
+ test("psx04", ["psx04/init.c", "psx04/task1.c", "psx04/task2.c", "psx04/task3.c"])
+ test("psx05", ["psx05/init.c", "psx05/task.c", "psx05/task2.c", "psx05/task3.c"])
+ test("psx06", ["psx06/init.c", "psx06/task.c", "psx06/task2.c"])
+ test("psx07", ["psx07/init.c", "psx07/task.c"])
+ test("psx08", ["psx08/init.c", "psx08/task1.c", "psx08/task2.c", "psx08/task3.c"])
+ test("psx09", ["psx09/init.c"])
+ test("psx10", ["psx10/init.c", "psx10/task.c", "psx10/task2.c", "psx10/task3.c"])
+ test("psx11", ["psx11/init.c", "psx11/task.c"])
+ test("psx12", ["psx12/init.c", "psx12/task.c"])
+ test("psx13", ["psx13/main.c", "psx13/test.c"])
+ test("psx14", ["psx14/init.c"])
+ test("psx15", ["psx15/init.c"])
+ test("psx16", ["psx16/init.c"])
+ test("psxaio01", ["psxaio01/init.c"])
+ test("psxaio02", ["psxaio02/init.c"])
+ test("psxaio03", ["psxaio03/init.c"])
+ test("psxalarm01", ["psxalarm01/init.c"])
+ test("psxautoinit01", ["psxautoinit01/init.c"])
+ test("psxautoinit02", ["psxautoinit02/init.c"])
+ test("psxbarrier01", ["psxbarrier01/main.c", "psxbarrier01/test.c"])
+# test("psxcancel", ["psxcancel/init.c"]) _pthread_cleanup_push
+ test("psxcancel01", ["psxcancel01/init.c"])
+ test("psxchroot01", ["psxchroot01/main.c", "psxchroot01/test.c"])
+ test("psxclassic01", ["psxclassic01/init.c"])
+# test("psxcleanup", ["psxcleanup/psxcleanup.c"]) _pthread_cleanup_push
+# test("psxcleanup01", ["psxcleanup01/init.c"]) _pthread_cleanup_push
+ test("psxclock", ["psxclock/init.c"])
+ test("psxcond01", ["psxcond01/init.c"])
+ test("psxeintr_join", ["psxeintr_join/init.c"])
+ test("psxenosys", ["psxenosys/init.c"])
+ test("psxfatal01", ["psxfatal_support/init.c"], includes=["%s/testsuites/psxtests/psxfatal01/" % srcnode])
+ test("psxfatal02", ["psxfatal_support/init.c"], includes=["%s/testsuites/psxtests/psxfatal02/" % srcnode])
+ test("psxfchx01", ["psxfchx01/init.c"])
+ test("psxfile01", ["psxfile01/main.c", "psxfile01/test.c", "psxfile01/test_cat.c", "psxfile01/test_extend.c", "psxfile01/test_write.c"])
+ test("psxfile02", ["psxfile02/init.c"])
+#flockfile test("psxfilelock01", ["psxfilelock01/init.c"])
+ test("psxgetrusage01", ["psxgetrusage01/init.c"], use="test_support_spin")
+ test("psxid01", ["psxid01/init.c"])
+ test("psximfs01", ["psximfs01/init.c"])
+ test("psximfs02", ["psximfs02/init.c"])
+ test("psxintrcritical01", ["psxintrcritical01/init.c", "../sptests/spintrcritical_support/intrcritical.c"], includes=["%s/testsuites/sptests/spintrcritical_support/" % srcnode]) #XXX: relative path
+ test("psxitimer", ["psxitimer/init.c"])
+ test("psxkey01", ["psxkey01/init.c"], use="test_support")
+ test("psxkey02", ["psxkey02/init.c"])
+ test("psxkey03", ["psxkey03/init.c"])
+ test("psxmount", ["psxmount/main.c", "psxmount/test.c"])
+ test("psxmsgq01", ["psxmsgq01/init.c"], use="test_support")
+ test("psxmsgq02", ["psxmsgq02/init.c"], use="test_support")
+ test("psxmsgq03", ["psxmsgq03/init.c"])
+ test("psxmsgq04", ["psxmsgq04/init.c"], use="test_support")
+ test("psxmutexattr01", ["psxmutexattr01/init.c"])
+ test("psxobj01", ["psxobj01/init.c"], use="test_support")
+ test("psxpasswd01", ["psxpasswd01/init.c"])
+ test("psxpasswd02", ["psxpasswd02/init.c"])
+ test("psxpipe01", ["psxpipe01/init.c"])
+ test("psxrdwrv", ["psxrdwrv/main.c", "psxrdwrv/test.c"])
+ test("psxreaddir", ["psxreaddir/main.c", "psxreaddir/test.c"])
+ test("psxrwlock01", ["psxrwlock01/main.c", "psxrwlock01/test.c"])
+ test("psxsem01", ["psxsem01/init.c"], use="test_support")
+ test("psxsignal01", ["psxsignal01/init.c", "psxsignal01/task1.c"])
+ test("psxsignal02", ["psxsignal02/init.c"])
+ test("psxsignal03", ["psxsignal03/init.c"], defines=["USE_USER_SIGNALS_PROCESS"])
+ test("psxsignal04", ["psxsignal03/init.c"], defines=["USE_REAL_TIME_SIGNALS_PROCESS"])
+ test("psxsignal05", ["psxsignal05/init.c"])
+ test("psxsignal06", ["psxsignal06/init.c"])
+ test("psxspin01", ["psxspin01/main.c", "psxspin01/test.c"])
+ test("psxspin02", ["psxspin02/main.c", "psxspin02/test.c"])
+ test("psxstack01", ["psxstack01/init.c"])
+ test("psxstack02", ["psxstack02/init.c"])
+ test("psxstat", ["psxstat/main.c", "psxstat/test.c"])
+ test("psxsysconf", ["psxsysconf/init.c"])
+ test("psxtime", ["psxtime/main.c", "psxtime/test.c"])
+ test("psxtimer01", ["psxtimer01/psxtimer.c"])
+ test("psxtimer02", ["psxtimer02/psxtimer.c"])
+ test("psxtimes01", ["psxtimes01/init.c"], use="test_support_spin")
+ test("psxualarm", ["psxualarm/init.c"])
+ test("psxusleep", ["psxusleep/init.c"])
+
diff --git a/testsuites/psxtmtests/wscript b/testsuites/psxtmtests/wscript
new file mode 100644
index 0000000000..e7f7d50ed1
--- /dev/null
+++ b/testsuites/psxtmtests/wscript
@@ -0,0 +1,52 @@
+def build(ctx):
+ srcnode = ctx.srcnode.abspath()
+
+ def test(target, source, **kwarg):
+
+ includes_merge = []
+ if "includes" in kwarg:
+ includes_merge = kwarg["includes"]
+ del kwarg["includes"]
+
+ ctx.rtems_test(
+ "sptests_%s" % target,
+ source,
+ includes = [
+ "%s/testsuites/tmtests/include/" % srcnode,
+ ] + includes_merge,
+ features = "test_include",
+ **kwarg
+ )
+
+
+ test("psxtmbarrier01", ["psxtmbarrier01/init.c"])
+ test("psxtmbarrier02", ["psxtmbarrier02/init.c"])
+ test("psxtmbarrier03", ["psxtmbarrier03/init.c"])
+ test("psxtmkey01", ["psxtmkey01/init.c"])
+ test("psxtmkey02", ["psxtmkey02/init.c"])
+ test("psxtmmq01", ["psxtmmq01/init.c"])
+ test("psxtmmutex01", ["psxtmmutex01/init.c"])
+ test("psxtmmutex02", ["psxtmmutex02/init.c"])
+ test("psxtmmutex03", ["psxtmmutex03/init.c"])
+ test("psxtmmutex04", ["psxtmmutex04/init.c"])
+ test("psxtmmutex05", ["psxtmmutex05/init.c"])
+ test("psxtmmutex06", ["psxtmmutex06/init.c"])
+ test("psxtmmutex07", ["psxtmmutex07/init.c"])
+ test("psxtmnanosleep01", ["psxtmnanosleep01/init.c"])
+ test("psxtmnanosleep02", ["psxtmnanosleep02/init.c"])
+ test("psxtmrwlock01", ["psxtmrwlock01/init.c"])
+ test("psxtmrwlock02", ["psxtmrwlock02/init.c"])
+ test("psxtmrwlock03", ["psxtmrwlock03/init.c"])
+ test("psxtmrwlock04", ["psxtmrwlock04/init.c"])
+ test("psxtmrwlock05", ["psxtmrwlock05/init.c"])
+ test("psxtmrwlock06", ["psxtmrwlock06/init.c"])
+ test("psxtmrwlock07", ["psxtmrwlock07/init.c"])
+ test("psxtmsem01", ["psxtmsem01/init.c"])
+ test("psxtmsem02", ["psxtmsem02/init.c"])
+ test("psxtmsem03", ["psxtmsem03/init.c"])
+ test("psxtmsem04", ["psxtmsem04/init.c"])
+ test("psxtmsem05", ["psxtmsem05/init.c"])
+ test("psxtmsleep01", ["psxtmsleep01/init.c"])
+ test("psxtmsleep02", ["psxtmsleep02/init.c"])
+ test("psxtmthread01", ["psxtmthread01/init.c"], use="test_support_tmtests test_support_empty_func")
+ test("psxtmthread03", ["psxtmthread03/init.c"])
diff --git a/testsuites/smptests/wscript b/testsuites/smptests/wscript
new file mode 100644
index 0000000000..075d347aa8
--- /dev/null
+++ b/testsuites/smptests/wscript
@@ -0,0 +1,21 @@
+def build(ctx):
+ srcnode = ctx.srcnode.abspath()
+
+ def test(target, source):
+ ctx.rtems_test(
+ "smptests_%s" % target,
+ source,
+ features = "test_include",
+ use = "test_support_locked_print"
+ )
+
+
+ test("smp01", ["smp01/init.c", "smp01/tasks.c"])
+ test("smp02", ["smp02/init.c", "smp02/tasks.c"])
+ test("smp03", ["smp03/init.c", "smp03/tasks.c"])
+ test("smp04", ["smp04/init.c"])
+ test("smp05", ["smp05/init.c"])
+ test("smp06", ["smp06/init.c"])
+ test("smp07", ["smp07/init.c"])
+ test("smp08", ["smp08/init.c", "smp08/tasks.c"])
+ test("smp09", ["smp09/init.c"])
diff --git a/testsuites/sptests/wscript b/testsuites/sptests/wscript
new file mode 100644
index 0000000000..b1e99503a9
--- /dev/null
+++ b/testsuites/sptests/wscript
@@ -0,0 +1,203 @@
+def build(ctx):
+ def test(target, source, **kwarg):
+ ctx.rtems_test(
+ "sptests_%s" % target,
+ source,
+ features = "test_include",
+ **kwarg
+ )
+
+ test("sp01", ["sp01/init.c", "sp01/task1.c"])
+ test("sp02", ["sp02/init.c", "sp02/preempt.c", "sp02/task1.c", "sp02/task2.c", "sp02/task3.c"])
+ test("sp03", ["sp03/init.c", "sp03/task1.c", "sp03/task2.c"])
+ test("sp04", ["sp04/init.c", "sp04/task1.c", "sp04/task2.c", "sp04/task3.c", "sp04/tswitch.c"])
+ test("sp05", ["sp05/init.c", "sp05/task1.c", "sp05/task2.c", "sp05/task3.c"])
+ test("sp06", ["sp06/init.c", "sp06/task1.c", "sp06/task2.c", "sp06/task3.c"])
+ test("sp07", ["sp07/init.c", "sp07/task1.c", "sp07/task2.c", "sp07/task3.c", "sp07/task4.c", "sp07/taskexit.c", "sp07/tcreate.c", "sp07/tdelete.c", "sp07/trestart.c", "sp07/tstart.c"])
+ test("sp08", ["sp08/init.c"])
+# test("sp09", ["sp09/init.c", "sp09/isr.c", "sp09/screen01.c", "sp09/screen02.c", "sp09/screen03.c", "sp09/screen04.c", "sp09/screen05.c", "sp09/screen06.c", "sp09/screen07.c", "sp09/screen08.c", "sp09/screen09.c", "sp09/screen10.c", "sp09/screen11.c", "sp09/screen12.c", "sp09/screen13.c", "sp09/screen14.c", "sp09/task1.c", "sp09/task2.c", "sp09/task3.c", "sp09/task4.c"])
+ test("sp10", ["sp10/init.c"])
+ test("sp11", ["sp11/init.c", "sp11/task1.c", "sp11/task2.c", "sp11/timer.c"])
+ test("sp12", ["sp12/init.c", "sp12/pridrv.c", "sp12/pritask.c", "sp12/task1.c", "sp12/task2.c", "sp12/task3.c", "sp12/task4.c", "sp12/task5.c"])
+ test("sp13", ["sp13/fillbuff.c", "sp13/init.c", "sp13/putbuff.c", "sp13/task1.c", "sp13/task2.c", "sp13/task3.c"])
+ test("sp14", ["sp14/asr.c", "sp14/init.c", "sp14/task1.c", "sp14/task2.c"])
+ test("sp15", ["sp15/init.c", "sp15/task1.c"])
+ test("sp16", ["sp16/init.c", "sp16/task1.c", "sp16/task2.c", "sp16/task3.c", "sp16/task4.c", "sp16/task5.c"])
+ test("sp17", ["sp17/asr.c", "sp17/init.c", "sp17/task1.c", "sp17/task2.c"])
+ test("sp18", ["sp18/init.c"])
+ test("sp19", ["sp19/first.c", "sp19/fptask.c", "sp19/init.c", "sp19/task1.c"])
+ test("sp20", ["sp20/getall.c", "sp20/init.c", "sp20/task1.c"])
+ test("sp21", ["sp21/init.c"])
+ test("sp22", ["sp22/delay.c", "sp22/init.c", "sp22/prtime.c", "sp22/task1.c"])
+ test("sp23", ["sp23/init.c", "sp23/task1.c"])
+ test("sp24", ["sp24/init.c", "sp24/resume.c", "sp24/task1.c"])
+ test("sp25", ["sp25/init.c", "sp25/task1.c"])
+ test("sp26", ["sp26/init.c", "sp26/task1.c"])
+ test("sp27", ["sp27/init.c"])
+ test("sp27a", ["sp27/init.c"])
+ test("sp28", ["sp28/init.c"])
+ test("sp29", ["sp29/init.c"])
+ test("sp30", ["sp30/init.c", "sp30/resume.c", "sp30/task1.c"])
+ test("sp31", ["sp31/delay.c", "sp31/init.c", "sp31/prtime.c", "sp31/task1.c"])
+ test("sp32", ["sp32/init.c"])
+ test("sp33", ["sp33/init.c"])
+ test("sp34", ["sp34/changepri.c"])
+ test("sp35", ["sp35/priinv.c"])
+ test("sp36", ["sp36/strict_order_mut.c"])
+ test("sp37", ["sp37/init.c"])
+ test("sp38", ["sp38/init.c"])
+# test("sp39", ["sp39/init.c"])
+ test("sp40", ["sp40/init.c"])
+ test("sp41", ["sp41/init.c"])
+ test("sp42", ["sp42/init.c"])
+ test("sp43", ["sp43/init.c"])
+ test("sp44", ["sp44/init.c"])
+ test("sp45", ["sp45/init.c"])
+ test("sp46", ["sp46/init.c"])
+ test("sp47", ["sp47/init.c"])
+ test("sp48", ["sp48/init.c"])
+ test("sp49", ["sp49/init.c"])
+ test("sp50", ["sp50/init.c"])
+ test("sp51", ["sp51/init.c"])
+ test("sp52", ["sp52/init.c"])
+ test("sp53", ["sp52/init.c"], defines=["USE_TIMER_SERVER"])
+ test("sp54", ["sp54/init.c"])
+ test("sp55", ["sp55/init.c"])
+ test("sp56", ["sp56/init.c"])
+ test("sp57", ["sp57/init.c"])
+ test("sp58", ["sp58/init.c"])
+ test("sp59", ["sp59/init.c"])
+ test("sp60", ["sp60/init.c"])
+ test("sp62", ["sp62/init.c"])
+ test("sp63", ["sp63/init.c"])
+ test("sp64", ["sp64/init.c"])
+ test("sp65", ["sp65/init.c"])
+ test("sp66", ["sp65/init.c"])
+ test("sp67", ["sp67/init.c"])
+ test("sp68", ["sp68/init.c"])
+#support/src/spin.c test("sp69", ["sp69/init.c"])
+ test("sp70", ["sp70/init.c"])
+ test("sp71", ["sp71/init.c"])
+ test("sp72", ["sp72/init.c"])
+ test("sp73", ["sp73/init.c"])
+ test("sp74", ["sp74/init.c"])
+ test("sp75", ["sp75/init.c"])
+ test("sp76", ["sp76/init.c"])
+ test("spassoc01", ["spassoc01/init.c"])
+ test("spchain", ["spchain/init.c"])
+ test("spclockget", ["spclockget/init.c"])
+ test("spcoverage", ["spcoverage/init.c"])
+ test("sperror01", ["sperror01/init.c"])
+ test("sperror02", ["sperror02/init.c"])
+ test("sperror03", ["sperror03/init.c"])
+
+ ctx.objects(
+ source = ["spfatal_support/consume_sems.c"],
+ name = "test_sptests_spfatal_support",
+ includes = "%s/testsuites/support/include" % ctx.srcnode.abspath(),
+ features = "bld_include src_include"
+ )
+
+ def spfatal(target, source):
+ ctx.rtems_test(
+ "sptests_%s" % target,
+ source,
+ includes = [
+ "%s/testsuites/support/include" % ctx.srcnode.abspath(),
+ "%s/testsuites/sptests/%s" % (ctx.srcnode.abspath(), target)
+ ],
+ features = "test_include",
+ use="test_sptests_spfatal_support"
+ )
+
+ spfatal("spfatal01", ["spfatal_support/init.c"])
+ spfatal("spfatal02", ["spfatal_support/init.c"])
+ spfatal("spfatal03", ["spfatal_support/init.c"])
+ spfatal("spfatal04", ["spfatal_support/init.c"])
+ spfatal("spfatal05", ["spfatal_support/init.c"])
+ spfatal("spfatal06", ["spfatal_support/init.c"])
+ spfatal("spfatal07", ["spfatal_support/init.c"])
+ spfatal("spfatal08", ["spfatal_support/init.c"])
+ spfatal("spfatal09", ["spfatal_support/init.c"])
+ spfatal("spfatal10", ["spfatal_support/init.c"])
+ spfatal("spfatal11", ["spfatal_support/init.c"])
+ spfatal("spfatal12", ["spfatal_support/init.c"])
+ spfatal("spfatal13", ["spfatal_support/init.c"])
+ spfatal("spfatal14", ["spfatal_support/init.c"])
+ spfatal("spfatal15", ["spfatal_support/init.c"])
+ spfatal("spfatal16", ["spfatal_support/init.c"])
+ spfatal("spfatal17", ["spfatal_support/init.c"])
+ spfatal("spfatal18", ["spfatal_support/init.c"])
+ spfatal("spfatal19", ["spfatal_support/init.c"])
+ spfatal("spfatal20", ["spfatal_support/init.c"])
+#testsuites/support/src/test_support.c spfatal("spfatal22", ["spfatal_support/init.c"])
+# spfatal("spfatal23", ["spfatal_support/init.c"])
+ spfatal("spfatal24", ["spfatal_support/init.c"])
+ spfatal("spfatal25", ["spfatal_support/init.c"])
+
+
+ test("spfifo01", ["spfifo01/init.c"])
+ test("spfifo02", ["spfifo02/init.c"])
+ test("spfifo03", ["spfifo03/init.c"])
+ test("spfifo04", ["spfifo04/init.c"])
+ test("spfifo05", ["spfifo05/init.c"])
+ test("spheapprot", ["spheapprot/init.c"])
+
+
+ ctx.objects(
+ source = ["spintrcritical_support/intrcritical.c"],
+ name = "test_sptests_spintrcritical_support",
+ includes = [
+ "%s/testsuites/support/include" % ctx.srcnode.abspath(),
+ "%s/testsuites/sptests/spintrcritical_support" % ctx.srcnode.abspath()
+ ],
+ features = "bld_include src_include"
+ )
+
+ def spincritical(target, source, **kwargs):
+ ctx.rtems_test(
+ "sptests_%s" % target,
+ source,
+ includes = [
+ "%s/testsuites/sptests/spintrcritical_support" % ctx.srcnode.abspath()
+ ],
+ features = "test_include",
+ use="test_sptests_spintrcritical_support",
+ **kwargs
+ )
+
+ spincritical("spintrcritical01", ["spintrcritical01/init.c"], defines=["FIFO_NO_TIMEOUT"])
+ spincritical("spintrcritical02", ["spintrcritical01/init.c"], defines=["FIFO_WITH_TIMEOUT"])
+ spincritical("spintrcritical03", ["spintrcritical01/init.c"], defines=["PRIORITY_NO_TIMEOUT"])
+ spincritical("spintrcritical04", ["spintrcritical01/init.c"], defines=["PRIORITY_WITH_TIMEOUT"])
+ spincritical("spintrcritical05", ["spintrcritical01/init.c"], defines=["PRIORITY_NO_TIMEOUT_REVERSE"])
+ spincritical("spintrcritical06", ["spintrcritical06/init.c"], defines=["PRIORITY_NO_TIMEOUT_FORWARD"])
+ spincritical("spintrcritical07", ["spintrcritical06/init.c"], defines=["PRIORITY_NO_TIMEOUT_REVERSE"])
+ spincritical("spintrcritical08", ["spintrcritical08/init.c"])
+ spincritical("spintrcritical09", ["spintrcritical09/init.c"])
+ spincritical("spintrcritical10", ["spintrcritical10/init.c"])
+ spincritical("spintrcritical11", ["spintrcritical11/init.c"], defines=["EVENT_ANY"])
+ spincritical("spintrcritical12", ["spintrcritical11/init.c"], defines=["EVENT_ALL"])
+ spincritical("spintrcritical13", ["spintrcritical13/init.c"], defines=["FIRE_AFTER"])
+ spincritical("spintrcritical14", ["spintrcritical13/init.c"], defines=["SERVER_FIRE_AFTER"])
+ spincritical("spintrcritical15", ["spintrcritical15/init.c"])
+ spincritical("spintrcritical16", ["spintrcritical16/init.c"])
+ spincritical("spintrcritical17", ["spintrcritical17/init.c"])
+
+
+ test("spmkdir", ["spmkdir/init.c"])
+ test("spmountmgr01", ["spmountmgr01/init.c"])
+ test("spnotepad01", ["spnotepad01/init.c"])
+ test("spnsext01", ["spnsext01/init.c"])
+ test("spobjgetnext", ["spobjgetnext/init.c"])
+ test("spprintk", ["spprintk/init.c"])
+ test("spprivenv01", ["spprivenv01/init.c"])
+ test("sprbtree01", ["sprbtree01/init.c"])
+ test("spsimplesched01", ["spsimplesched01/init.c"])
+ test("spsimplesched02", ["spsimplesched02/init.c"])
+ test("spsimplesched03", ["spsimplesched03/init.c"])
+ test("spsize", ["spsize/getint.c", "spsize/init.c", "spsize/size.c"])
+ test("spstkalloc", ["spstkalloc/init.c"])
+ test("spthreadq01", ["spthreadq01/init.c"])
+ test("spwatchdog", ["spwatchdog/delay.c", "spwatchdog/init.c", "spwatchdog/prtime.c", "spwatchdog/task1.c"])
+ test("spwkspace", ["spwkspace/init.c"])
diff --git a/testsuites/tmtests/wscript b/testsuites/tmtests/wscript
new file mode 100644
index 0000000000..285110da75
--- /dev/null
+++ b/testsuites/tmtests/wscript
@@ -0,0 +1,44 @@
+def build(ctx):
+ def test(target, source):
+ ctx.rtems_test(
+ "tmtests_%s" % target,
+ source,
+ use = "test_support_empty_func",
+ includes = [
+ "%s/testsuites/tmtests/include/" % ctx.srcnode.abspath(),
+ "%s/testsuites/support/include/" % ctx.srcnode.abspath(),
+ ],
+ )
+
+ test("tmck", "tmck/task1.c")
+ test("tmoverhd", ["tmoverhd/empty.c", "tmoverhd/testtask.c"])
+ test("tm01", "tm01/task1.c")
+# test("tm02", "tm02/task1.c")
+# test("tm03", "tm03/task1.c")
+ test("tm04", "tm04/task1.c")
+ test("tm05", "tm05/task1.c")
+ test("tm06", "tm06/task1.c")
+ test("tm07", "tm07/task1.c")
+ test("tm08", "tm08/task1.c")
+ test("tm09", "tm09/task1.c")
+ test("tm10", "tm10/task1.c")
+ test("tm11", "tm11/task1.c")
+ test("tm12", "tm12/task1.c")
+ test("tm13", "tm13/task1.c")
+ test("tm14", "tm14/task1.c")
+ test("tm15", "tm15/task1.c")
+ test("tm16", "tm16/task1.c")
+ test("tm17", "tm17/task1.c")
+ test("tm18", "tm18/task1.c")
+ test("tm19", "tm19/task1.c")
+ test("tm20", "tm20/task1.c")
+ test("tm21", "tm21/task1.c")
+ test("tm22", "tm22/task1.c")
+ test("tm23", "tm23/task1.c")
+ test("tm24", "tm24/task1.c")
+ test("tm25", "tm25/task1.c")
+ test("tm26", "tm26/task1.c")
+ test("tm27", "tm27/task1.c")
+ test("tm28", "tm28/task1.c")
+ test("tm29", "tm29/task1.c")
+ test("tm30", ["tm30/init.c", "../support/src/tmtests_support.c"]) # XXX: fix this relative path.
diff --git a/testsuites/wscript b/testsuites/wscript
new file mode 100644
index 0000000000..f9fecbf519
--- /dev/null
+++ b/testsuites/wscript
@@ -0,0 +1,54 @@
+def build(ctx):
+ srcnode = ctx.srcnode.abspath()
+
+ ctx.objects(
+ source = ["support/src/tmtests_empty_function.c"],
+ name = "test_support_empty_func",
+ includes = ["%s/testsuites/support/include/" % srcnode],
+ features = "bld_include src_include"
+ )
+
+ ctx.objects(
+ source = ["support/src/spin.c"],
+ name = "test_support_spin",
+ includes = ["%s/testsuites/support/include/" % srcnode], #XXX: why was this added in ac165341
+ features = "bld_include src_include"
+ )
+
+ ctx.objects(
+ source = ["support/src/test_support.c"],
+ name = "test_support",
+ features = "bld_include src_include test_include"
+ )
+
+ ctx.objects(
+ source = ["support/src/tmtests_support.c"],
+ name = "test_support_tmtests",
+ includes = ["%s/testsuites/tmtests/include/" % srcnode],
+ features = "bld_include src_include test_include"
+ )
+
+ if ctx.env.ENABLE_SMP and ctx.env.BSP[0] in ["sparc/leon3", "i386/pc386"]:
+ ctx.objects(
+ source = ["support/src/locked_print.c"],
+ name = "test_support_locked_print",
+ features = "bld_include src_include test_include"
+ )
+
+ ctx.recurse("fstests")
+ ctx.recurse("libtests")
+
+ if ctx.env.ENABLE_MP:
+ ctx.recurse("mptests")
+
+ if ctx.env.ENABLE_POSIX:
+ ctx.recurse("psxtests")
+ ctx.recurse("psxtmtests")
+
+ if ctx.env.ENABLE_SMP and ctx.env.BSP[0] in ["sparc/leon3", "i386/pc386"]:
+ ctx.recurse("smptests")
+
+ ctx.recurse("sptests")
+ ctx.recurse("tmtests")
+
+# ctx.recurse("samples")