comparison runtime/lib/gc/basic/llvmdc.mak @ 443:44f08170f4ef

Removed tango from the repository and instead added a runtime dir with the files needed to patch and build tango from svn. Reworked the LLVMDC specific pragmas.
author Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
date Fri, 01 Aug 2008 00:32:06 +0200
parents
children 8bd31c8208da
comparison
equal deleted inserted replaced
442:76078c8ab5b9 443:44f08170f4ef
1 # Makefile to build the garbage collector D library for LLVMDC
2 # Designed to work with GNU make
3 # Targets:
4 # make
5 # Same as make all
6 # make lib
7 # Build the garbage collector library
8 # make doc
9 # Generate documentation
10 # make clean
11 # Delete unneeded files created by build process
12
13 LIB_TARGET=libtango-gc-basic.a
14 LIB_MASK=libtango-gc-basic*.a
15
16 CP=cp -f
17 RM=rm -f
18 MD=mkdir -p
19
20 ADD_CFLAGS=
21 ADD_DFLAGS=
22
23 #CFLAGS=-O3 $(ADD_CFLAGS)
24 CFLAGS=-g $(ADD_CFLAGS)
25
26 #DFLAGS=-release -O3 -inline -w -nofloat $(ADD_DFLAGS)
27 DFLAGS=-g -w -nofloat $(ADD_DFLAGS)
28
29 #TFLAGS=-O3 -inline -w -nofloat $(ADD_DFLAGS)
30 TFLAGS=-g -w -nofloat $(ADD_DFLAGS)
31
32 DOCFLAGS=-version=DDoc
33
34 CC=gcc
35 LC=llvm-ar rsv
36 DC=llvmdc
37
38 LIB_DEST=..
39
40 .SUFFIXES: .s .S .c .cpp .d .html .o .bc
41
42 .s.o:
43 $(CC) -c $(CFLAGS) $< -o$@
44
45 .S.o:
46 $(CC) -c $(CFLAGS) $< -o$@
47
48 .c.o:
49 $(CC) -c $(CFLAGS) $< -o$@
50
51 .cpp.o:
52 g++ -c $(CFLAGS) $< -o$@
53
54 .d.bc:
55 $(DC) -c $(DFLAGS) $< -of$@
56
57 .d.html:
58 $(DC) -c -o- $(DOCFLAGS) -Df$*.html $<
59 # $(DC) -c -o- $(DOCFLAGS) -Df$*.html dmd.ddoc $<
60
61 targets : lib doc
62 all : lib doc
63 lib : basic.lib
64 doc : basic.doc
65
66 ######################################################
67
68 ALL_OBJS= \
69 gc.bc \
70 gcalloc.bc \
71 gcbits.bc \
72 gcstats.bc \
73 gcx.bc
74
75 ######################################################
76
77 ALL_DOCS=
78
79 ######################################################
80
81 basic.lib : $(LIB_TARGET)
82
83 $(LIB_TARGET) : $(ALL_OBJS)
84 $(RM) $@
85 $(LC) $@ $(ALL_OBJS)
86
87 basic.doc : $(ALL_DOCS)
88 echo No documentation available.
89
90 ######################################################
91
92 clean :
93 find . -name "*.di" | xargs $(RM)
94 $(RM) $(ALL_OBJS)
95 $(RM) $(ALL_DOCS)
96 $(RM) $(LIB_MASK)
97
98 install :
99 $(MD) $(LIB_DEST)
100 $(CP) $(LIB_MASK) $(LIB_DEST)/.