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