Mercurial > projects > ldc
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)/. |