]> pd.if.org Git - pdclib.old/blob - Jamfile
* Test cleanups: surround the code for all functions by #ifndef REGTEST
[pdclib.old] / Jamfile
1 SubDir PDCLIB_TOP ;\r
2 if $(PDCLIB_PLATFORM) {\r
3     SubInclude PDCLIB_TOP platform $(PDCLIB_PLATFORM) ;\r
4     SubDir PDCLIB_TOP ;\r
5 }\r
6 PDCLibConfig ;\r
7 \r
8 PDCLIB_SOURCES = [ RecursiveGlob $(PDCLIB_TOP) : [ FDirName functions ] : *.c ] ;\r
9 \r
10 if $(PDCLIB_PLATFORM) {\r
11     PDCLIB_PLATFORM_SOURCE_DIR = \r
12         [ FDirName platform $(PDCLIB_PLATFORM) functions ] ;\r
13     PDCLIB_SOURCES += [ RecursiveGlob $(PDCLIB_TOP) : $(PDCLIB_PLATFORM_SOURCE_DIR) : *.c ] ;\r
14 }\r
15 \r
16 for opt in $(PDCLIB_OPTIONS) {\r
17     optdir = [ FDirName opt $(opt) ] ;\r
18     PDCLIB_SOURCES += [ RecursiveGlob $(PDCLIB_TOP) : $(optdir) : *.c ] ;   \r
19 }\r
20 \r
21 Library $(PDCLIB) : $(PDCLIB_SOURCES) ;\r
22 \r
23 if ! $(PDCLIB_NO_TEST) {\r
24     for file in $(PDCLIB_SOURCES) {\r
25         testfile    = $(file:S=_t) ;\r
26         regtestfile = $(file:S=_r) ;\r
27         test        = $(file:S=-test) ;\r
28         regtest     = $(file:S=-regtest) ;\r
29 \r
30         Object $(testfile).o    : $(file) ;\r
31         Object $(regtestfile).o : $(file) ;\r
32         MainFromObjects $(testfile)    : $(testfile).o $(CRT0) ;\r
33         MainFromObjects $(regtestfile) : $(regtestfile).o ;\r
34         CCFLAGS on $(testfile).o += -DTEST $(PDCLIB_TEST_CCFLAGS) ;\r
35         CCFLAGS on $(regtestfile).o += -DTEST -DREGTEST \r
36                                        $(PDCLIB_REGTEST_CCFLAGS) ;\r
37         CCHDRS on $(regtestfile).o = [ FIncludes [ FDirName testing ] ] ;\r
38 \r
39         LINKFLAGS on $(testfile)$(SUFEXE) += $(PDCLIB_TEST_LINKFLAGS) ;\r
40         LINKFLAGS on $(regtestfile)$(SUFEXE) += $(PDCLIB_REGTEST_LINKFLAGS) ;\r
41         LINKLIBS on $(testfile)$(SUFEXE) += $(PDCLIB_TEST_LINKLIBS) ;\r
42         LINKLIBS on $(regtestfile)$(SUFEXE) += $(PDCLIB_REGTEST_LINKLIBS) ;\r
43         LinkLibraries $(testfile) : $(PDCLIB) ;\r
44 \r
45         Test    $(test)    : $(testfile) ;\r
46         RegTest $(regtest) : $(regtestfile) ;\r
47     }\r
48 }