History

win32 fix

bellard committed 21 years ago

Commit c262e9e1 parent b78d3ff1 file · +18 −15Browse files

Unified · Split

Makefile+18−15
@@ -49,7 +49,7 @@ endif · 48 unmodified lines
49TCC=./tcc -B. -I.49TCC=./tcc -B. -I.
50 50
51all: $(PROGS) \51all: $(PROGS) \
52 libtcc1$(LIBSUF) $(BCHECK_O) tcc-doc.html tcc.1 libtcc$(LIBSUF) \52 libtcc1.a $(BCHECK_O) tcc-doc.html tcc.1 libtcc.a \
53 libtcc_test$(EXESUF)53 libtcc_test$(EXESUF)
54 54
55Makefile: config.mak55Makefile: config.mak
@@ -169,18 +169,21 @@ tiny_impdef$(EXESUF): tiny_impdef.c · 113 unmodified lines
169 169
170# TinyCC runtime libraries170# TinyCC runtime libraries
171ifdef CONFIG_WIN32171ifdef CONFIG_WIN32
172# for windows, we must use TCC because we generate ELF objects
172LIBTCC1_OBJS=$(addprefix win32/lib/, crt1.o wincrt1.o dllcrt1.o dllmain.o chkstk.o) libtcc1.o173LIBTCC1_OBJS=$(addprefix win32/lib/, crt1.o wincrt1.o dllcrt1.o dllmain.o chkstk.o) libtcc1.o
174LIBTCC1_CC=./tcc.exe -Bwin32
173else175else
174LIBTCC1_OBJS=libtcc1.o176LIBTCC1_OBJS=libtcc1.o
177LIBTCC1_CC=$(CC)
175endif178endif
176 179
177%.o: %.c180%.o: %.c
178 $(CC) -O2 -Wall -c -o $@ $<181 $(LIBTCC1_CC) -O2 -Wall -c -o $@ $<
179 182
180%.o: %.S183%.o: %.S
181 $(CC) -c -o $@ $<184 $(LIBTCC1_CC) -c -o $@ $<
182 185
183libtcc1$(LIBSUF): $(LIBTCC1_OBJS)186libtcc1.a: $(LIBTCC1_OBJS)
184 $(AR) rcs $@ $^187 $(AR) rcs $@ $^
185 188
186bcheck.o: bcheck.c189bcheck.o: bcheck.c
@@ -188,7 +191,7 @@ bcheck.o: bcheck.c · 1 unmodified line
188 191
189install: tcc_install libinstall192install: tcc_install libinstall
190 193
191tcc_install: $(PROGS) tcc.1 libtcc1$(LIBSUF) $(BCHECK_O) tcc-doc.html tcc.1194tcc_install: $(PROGS) tcc.1 libtcc1.a $(BCHECK_O) tcc-doc.html tcc.1
192 mkdir -p "$(bindir)"195 mkdir -p "$(bindir)"
193 $(INSTALL) -s -m755 $(PROGS) "$(bindir)"196 $(INSTALL) -s -m755 $(PROGS) "$(bindir)"
194ifndef CONFIG_WIN32197ifndef CONFIG_WIN32
@@ -199,11 +202,11 @@ endif · 4 unmodified lines
199 mkdir -p "$(tccdir)/include"202 mkdir -p "$(tccdir)/include"
200ifdef CONFIG_WIN32203ifdef CONFIG_WIN32
201 mkdir -p "$(tccdir)/lib"204 mkdir -p "$(tccdir)/lib"
202 $(INSTALL) -m644 libtcc1$(LIBSUF) win32/lib/*.def "$(tccdir)/lib"205 $(INSTALL) -m644 libtcc1.a win32/lib/*.def "$(tccdir)/lib"
203 cp -r win32/include "$(tccdir)/include"206 cp -r win32/include/. "$(tccdir)/include"
204 cp -r win32/examples "$(tccdir)/examples"207 cp -r win32/examples/. "$(tccdir)/examples"
205else208else
206 $(INSTALL) -m644 libtcc1$(LIBSUF) $(BCHECK_O) "$(tccdir)"209 $(INSTALL) -m644 libtcc1.a $(BCHECK_O) "$(tccdir)"
207 $(INSTALL) -m644 stdarg.h stddef.h stdbool.h float.h varargs.h \210 $(INSTALL) -m644 stdarg.h stddef.h stdbool.h float.h varargs.h \
208 tcclib.h "$(tccdir)/include"211 tcclib.h "$(tccdir)/include"
209endif212endif
@@ -216,7 +219,7 @@ endif · 6 unmodified lines
216clean:219clean:
217 rm -f *~ *.o *.a tcc tcc1 tcct tcc_g tcctest.ref *.bin *.i ex2 \220 rm -f *~ *.o *.a tcc tcc1 tcct tcc_g tcctest.ref *.bin *.i ex2 \
218 core gmon.out test.out test.ref a.out tcc_p \221 core gmon.out test.out test.ref a.out tcc_p \
219 *.exe *.lib tcc.pod libtcc$(LIBSUF) libtcc_test \222 *.exe *.lib tcc.pod libtcc_test \
220 tcctest[1234] test[1234].out $(PROGS) win32/lib/*.o223 tcctest[1234] test[1234].out $(PROGS) win32/lib/*.o
221 224
222distclean: clean225distclean: clean
@@ -227,20 +230,20 @@ tcc_p: tcc.c Makefile · 4 unmodified lines
227 $(CC) $(CFLAGS_P) -o $@ $< $(LIBS_P)230 $(CC) $(CFLAGS_P) -o $@ $< $(LIBS_P)
228 231
229# libtcc generation and example232# libtcc generation and example
230libinstall: libtcc$(LIBSUF) 233libinstall: libtcc.a
231 mkdir -p "$(libdir)"234 mkdir -p "$(libdir)"
232 $(INSTALL) -m644 libtcc$(LIBSUF) "$(libdir)"235 $(INSTALL) -m644 libtcc.a "$(libdir)"
233 mkdir -p "$(includedir)"236 mkdir -p "$(includedir)"
234 $(INSTALL) -m644 libtcc.h "$(includedir)"237 $(INSTALL) -m644 libtcc.h "$(includedir)"
235 238
236libtcc.o: tcc.c i386-gen.c Makefile239libtcc.o: tcc.c i386-gen.c Makefile
237 $(CC) $(CFLAGS) -DLIBTCC -c -o $@ $<240 $(CC) $(CFLAGS) -DLIBTCC -c -o $@ $<
238 241
239libtcc$(LIBSUF): libtcc.o 242libtcc.a: libtcc.o
240 $(AR) rcs $@ $^243 $(AR) rcs $@ $^
241 244
242libtcc_test$(EXESUF): libtcc_test.c libtcc$(LIBSUF)245libtcc_test$(EXESUF): libtcc_test.c libtcc.a
243 $(CC) $(CFLAGS) -o $@ $< libtcc$(LIBSUF) $(LIBS)246 $(CC) $(CFLAGS) -o $@ $< libtcc.a $(LIBS)
244 247
245libtest: libtcc_test248libtest: libtcc_test
246 ./libtcc_test249 ./libtcc_test