Mercurial > projects > ldc
comparison runtime/lib/gc/basic/ldc.mak @ 665:d8a1481eaa0c
Renames.
author | Christian Kamm <kamm incasoftware de> |
---|---|
date | Mon, 06 Oct 2008 22:56:54 +0200 |
parents | runtime/lib/gc/basic/llvmdc.mak@6aaa3d3c1183 |
children | dc078dd8d2e1 |
comparison
equal
deleted
inserted
replaced
664:eef8ac26c66c | 665:d8a1481eaa0c |
---|---|
1 # Makefile to build the garbage collector D library for LDC | |
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_BC=libtango-gc-basic-bc.a | |
14 LIB_TARGET_NATIVE=libtango-gc-basic.a | |
15 LIB_TARGET_SHARED=libtango-gc-basic-shared.so | |
16 LIB_MASK=libtango-gc-basic*.* | |
17 | |
18 CP=cp -f | |
19 RM=rm -f | |
20 MD=mkdir -p | |
21 | |
22 ADD_CFLAGS= | |
23 ADD_DFLAGS= | |
24 | |
25 #CFLAGS=-O3 $(ADD_CFLAGS) | |
26 CFLAGS=$(ADD_CFLAGS) | |
27 | |
28 #DFLAGS=-release -O3 -inline -w -nofloat $(ADD_DFLAGS) | |
29 DFLAGS=-w -disable-invariants $(ADD_DFLAGS) | |
30 | |
31 #TFLAGS=-O3 -inline -w -nofloat $(ADD_DFLAGS) | |
32 TFLAGS=-w -disable-invariants $(ADD_DFLAGS) | |
33 | |
34 DOCFLAGS=-version=DDoc | |
35 | |
36 CC=gcc | |
37 LC=llvm-ar rsv | |
38 LCC=llc | |
39 LLINK=llvm-link | |
40 CLC=ar rsv | |
41 LD=llvm-ld | |
42 DC=ldc | |
43 | |
44 LIB_DEST=.. | |
45 | |
46 .SUFFIXES: .s .S .c .cpp .d .html .o .bc | |
47 | |
48 .s.o: | |
49 $(CC) -c $(CFLAGS) $< -o$@ | |
50 | |
51 .S.o: | |
52 $(CC) -c $(CFLAGS) $< -o$@ | |
53 | |
54 .c.o: | |
55 $(CC) -c $(CFLAGS) $< -o$@ | |
56 | |
57 .cpp.o: | |
58 g++ -c $(CFLAGS) $< -o$@ | |
59 | |
60 .d.bc: | |
61 $(DC) -c $(DFLAGS) $< -of$@ | |
62 | |
63 .d.html: | |
64 $(DC) -c -o- $(DOCFLAGS) -Df$*.html $< | |
65 # $(DC) -c -o- $(DOCFLAGS) -Df$*.html dmd.ddoc $< | |
66 | |
67 targets : lib sharedlib doc | |
68 all : lib sharedlib doc | |
69 lib : basic.lib basic.nlib | |
70 sharedlib : basic.sharedlib | |
71 doc : basic.doc | |
72 | |
73 ###################################################### | |
74 | |
75 ALL_OBJS= \ | |
76 gc.bc \ | |
77 gcalloc.bc \ | |
78 gcbits.bc \ | |
79 gcstats.bc \ | |
80 gcx.bc | |
81 | |
82 ###################################################### | |
83 | |
84 ALL_DOCS= | |
85 | |
86 ###################################################### | |
87 | |
88 basic.lib : $(LIB_TARGET_BC) | |
89 basic.nlib : $(LIB_TARGET_NATIVE) | |
90 basic.sharedlib : $(LIB_TARGET_SHARED) | |
91 | |
92 $(LIB_TARGET_BC) : $(ALL_OBJS) | |
93 $(RM) $@ | |
94 $(LC) $@ $(ALL_OBJS) | |
95 | |
96 | |
97 $(LIB_TARGET_NATIVE) : $(ALL_OBJS) | |
98 $(RM) $@ $@.bc $@.s $@.o | |
99 $(LLINK) -o=$@.bc $(ALL_OBJS) | |
100 $(LCC) -o=$@.s $@.bc | |
101 $(CC) -c -o $@.o $@.s | |
102 $(CLC) $@ $@.o | |
103 | |
104 | |
105 $(LIB_TARGET_SHARED) : $(ALL_OBJS) | |
106 $(RM) $@ $@.bc $@.s $@.o | |
107 $(LLINK) -o=$@.bc $(ALL_OBJS) | |
108 $(LCC) -relocation-model=pic -o=$@.s $@.bc | |
109 $(CC) -shared -o $@ $@.s | |
110 | |
111 basic.doc : $(ALL_DOCS) | |
112 echo No documentation available. | |
113 | |
114 ###################################################### | |
115 | |
116 clean : | |
117 find . -name "*.di" | xargs $(RM) | |
118 $(RM) $(ALL_OBJS) | |
119 $(RM) $(ALL_DOCS) | |
120 $(RM) $(LIB_MASK) | |
121 | |
122 install : | |
123 $(MD) $(LIB_DEST) | |
124 $(CP) $(LIB_MASK) $(LIB_DEST)/. |