1Import('rtconfig')
2from building import *
3
4cwd     = GetCurrentDir()
5src     = []
6CPPPATH = [cwd]
7
8if GetDepend(['UTEST_OBJECT_TC']):
9    src += ['object_tc.c']
10
11if GetDepend(['UTEST_MEMHEAP_TC']):
12    src += ['memheap_tc.c']
13
14if GetDepend(['UTEST_SMALL_MEM_TC']):
15    src += ['mem_tc.c']
16
17if GetDepend(['UTEST_SLAB_TC']):
18    src += ['slab_tc.c']
19
20if GetDepend(['UTEST_IRQ_TC']):
21    src += ['irq_tc.c']
22
23if GetDepend(['UTEST_SEMAPHORE_TC']):
24    src += ['semaphore_tc.c']
25
26if GetDepend(['UTEST_EVENT_TC']):
27    src += ['event_tc.c']
28
29if GetDepend(['UTEST_TIMER_TC']):
30    src += ['timer_tc.c']
31
32if GetDepend(['UTEST_MESSAGEQUEUE_TC']):
33    src += ['messagequeue_tc.c']
34
35if GetDepend(['UTEST_SIGNAL_TC']):
36    src += ['signal_tc.c']
37
38if GetDepend(['UTEST_MUTEX_TC']):
39    src += ['mutex_tc.c', 'mutex_pi_tc.c']
40
41if GetDepend(['UTEST_MAILBOX_TC']):
42    src += ['mailbox_tc.c']
43
44if GetDepend(['UTEST_THREAD_TC']):
45    src += ['thread_tc.c']
46
47if GetDepend(['UTEST_DEVICE_TC']):
48    src += ['device_tc.c']
49
50if GetDepend(['UTEST_ATOMIC_TC']):
51    src += ['atomic_tc.c']
52
53if GetDepend(['UTEST_HOOKLIST_TC']):
54    src += ['hooklist_tc.c']
55
56if GetDepend(['UTEST_MTSAFE_KPRINT_TC']):
57    src += ['mtsafe_kprint_tc.c']
58
59# Stressful testcase for scheduler (MP/UP)
60if GetDepend(['UTEST_SCHEDULER_TC']):
61    src += ['sched_timed_sem_tc.c']
62    src += ['sched_timed_mtx_tc.c']
63    src += ['sched_mtx_tc.c']
64    src += ['sched_sem_tc.c', 'sched_thread_tc.c']
65
66group = DefineGroup('utestcases', src, depend = ['RT_USING_UTESTCASES'], CPPPATH = CPPPATH)
67
68list = os.listdir(cwd)
69for item in list:
70    if os.path.isfile(os.path.join(cwd, item, 'SConscript')):
71        group = group + SConscript(os.path.join(item, 'SConscript'))
72
73Return('group')
74