1 # Makefile to build the garbage collector D library for Win32
2 # Designed to work with DigitalMars make
7 # Build the garbage collector library
9 # Generate documentation
11 # Delete unneeded files created by build process
13 LIB_BASE=tango-gc-naive
15 LIB_TARGET=$(LIB_BASE)$(LIB_BUILD).lib
16 LIB_MASK=$(LIB_BASE)*.lib
25 CFLAGS_RELEASE=-mn -6 -r $(ADD_CFLAGS)
26 CFLAGS_DEBUG=-g -mn -6 -r $(ADD_CFLAGS)
27 DFLAGS_RELEASE=-release -O -inline -w -nofloat -I. -I../shared -I../../.. $(ADD_DFLAGS)
28 DFLAGS_DEBUG=-g -w -nofloat -I. -I../shared -I../../.. $(ADD_DFLAGS)
29 TFLAGS_RELEASE=-O -inline -w -nofloat $(ADD_DFLAGS)
30 TFLAGS_DEBUG=-g -w -nofloat $(ADD_DFLAGS)
32 CFLAGS=$(CFLAGS_RELEASE)
33 DFLAGS=$(DFLAGS_RELEASE)
34 TFLAGS=$(TFLAGS_RELEASE)
36 DOCFLAGS=-version=DDoc
44 .DEFAULT: .asm .c .cpp .d .html .obj
50 $(CC) -c $(CFLAGS) $< -o$@
53 $(CC) -c $(CFLAGS) $< -o$@
56 $(DC) -c $(DFLAGS) $< -of$@
59 $(DC) -c -o- $(DOCFLAGS) -Df$*.html $<
60 # $(DC) -c -o- $(DOCFLAGS) -Df$*.html dmd.ddoc $<
67 ######################################################
77 ######################################################
81 ######################################################
83 naive.lib : $(LIB_TARGET)
85 $(LIB_TARGET) : $(ALL_OBJS)
87 $(LC) -c -n $@ $(ALL_OBJS)
89 naive.doc : $(ALL_DOCS)
90 @echo No documentation available.
92 ######################################################
102 $(CP) $(LIB_MASK) $(LIB_DEST)\.