1 Echo "building libraries..." ;
3 if ! 'clean' in $(JAM_TARGETS) {
4 if ! 'debug' in $(JAM_TARGETS) { RELEASE = tan ; }
6 if 'speed' in $(JAM_TARGETS) { PROFILE = speed ; }
7 else if 'size' in $(JAM_TARGETS) { PROFILE = size ; }
14 LOCATE_LIB = $(DLANG_LIB_DIR) ;
16 #if $(USE_DMD) { LOCATE_LIB = "$(LOCATE_LIB:J)_dmd" ; }
17 #Echo "$(LOCATE_LIB)" ;
21 #include scanlibs.jam ;
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) : '.' ] ;
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" ;
45 #Echo "libsrcdir:" $(libsrcdir) ;
46 srcs = [ Glob $(libsrcdir) : "*.d" : files-only full-path ] ;
48 #Echo "sources:" $(srcs) ;
49 Library $(libaname) : $(srcs) ;
50 Depends dlibs : $(libaname) ;
51 Depends clean : $(libaname) ;
55 for lib in $(DLANG.LIBS) {