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