option.c: fixed warnings
[k8jam.git] / dlang / Jamfile
blobe29a0763a0e87b7a9c00e7de8c0013d0ff91b784
1 Echo "building libraries..." ;
3 if ! 'clean' in $(JAM_TARGETS) {
4   if ! 'debug' in $(JAM_TARGETS) { RELEASE = tan ; }
5   if ! $(PROFILE) {
6     if 'speed' in $(JAM_TARGETS) { PROFILE = speed ; }
7     else if 'size' in $(JAM_TARGETS) { PROFILE = size ; }
8   }
9   JAM_TARGETS = 'all' ;
12 set-profile ;
14 LOCATE_LIB = $(DLANG_LIB_DIR) ;
16 #if $(USE_DMD) { LOCATE_LIB = "$(LOCATE_LIB:J)_dmd" ; }
17 #Echo "$(LOCATE_LIB)" ;
19 DLANG_LIBS_DONE = ;
21 #include scanlibs.jam ;
24 rule BuildLib lib {
25   local srcs ;
26   if $(lib) in $(DLANG_LIBS_DONE) { return ; }
27   if ! $(lib) in $(DLANG.LIBS) { Exit "FATAL: unknown D library:" $(lib) ; }
28   DLANG_LIBS_DONE += $(lib) ;
29   ddep = $(DLANG.LIBDEPS.$(lib)) ;
30   sdep = $(DLANG.LIBSDEPS.$(lib)) ;
31   local ln = [ Split $(lib) : '.' ] ;
32   ln = $(ln:J=_) ;
33   LINKLIBS.all += -l$(ln) ;
34   if $(ddep) { BuildLib $(ddep) ; }
35   for local slib in $(sdep) { LINKLIBS.all += -l$(slib) ; }
36   Echo "===" $(lib) "===" ;
37   local libaname = [ dlang.libaname $(lib) ] ;
38   #Echo "libaname:" $(libaname) ;
39   local libsrcdir = [ dlang.libsrcdir $(lib) ] ;
40   libsrcdir = $(DLANG_LIBSRC_DIR)/$(libsrcdir) ;
41   if [ FileExists "$(libsrcdir).d" ] {
42     #Echo "library:" "$(libsrcdir).d" ;
43     srcs = "$(libsrcdir).d" ;
44   } else {
45     #Echo "libsrcdir:" $(libsrcdir) ;
46     srcs = [ Glob $(libsrcdir) : "*.d" : files-only full-path ] ;
47   }
48   #Echo "sources:" $(srcs) ;
49   Library $(libaname) : $(srcs) ;
50   Depends dlibs : $(libaname) ;
51   Depends clean : $(libaname) ;
55 for lib in $(DLANG.LIBS) {
56   BuildLib $(lib) ;
59 Depends all : dlibs ;