| @@ -19,6 +19,16 @@ NATIVE = -m$(ARCH) -DTCC_TARGET_I386 · 18 unmodified lines |
| 19 | PREFIX = i386 | 19 | PREFIX = i386 |
| 20 | endif | 20 | endif |
| 21 | | 21 | |
| | 22 | TARGET = $(ARCH) |
| | 23 | |
| | 24 | ifeq ($(TARGET), 64) |
| | 25 | TFLAGS = -m$(TARGET) -DTCC_TARGET_X86_64 |
| | 26 | TPREFIX = x86_64 |
| | 27 | else |
| | 28 | TFLAGS = -m$(TARGET) -DTCC_TARGET_I386 |
| | 29 | TPREFIX = i386 |
| | 30 | endif |
| | 31 | |
| 22 | all: pre bootstrap libs rebuild | 32 | all: pre bootstrap libs rebuild |
| 23 | @chmod 775 *.exe | 33 | @chmod 775 *.exe |
| 24 | @ls -ls *.exe | 34 | @ls -ls *.exe |
| @@ -70,7 +80,7 @@ lib/32/libtcc1.a: tiny_libmaker32.exe · 45 unmodified lines |
| 70 | @./tiny_libmaker32 lib/32/libtcc1.a libtcc1.o alloca86.o alloca86-bt.o crt1.o wincrt1.o dllcrt1.o dllmain.o chkstk.o | 80 | @./tiny_libmaker32 lib/32/libtcc1.a libtcc1.o alloca86.o alloca86-bt.o crt1.o wincrt1.o dllcrt1.o dllmain.o chkstk.o |
| 71 | @rm *.o | 81 | @rm *.o |
| 72 | | 82 | |
| 73 | lib/64/libtcc1.a: tcc.exe tiny_libmaker64.exe | 83 | lib/64/libtcc1.a: tiny_libmaker64.exe |
| 74 | @echo Building $*.a with tcc -m64 | 84 | @echo Building $*.a with tcc -m64 |
| 75 | @./tcc -m64 -DTCC_TARGET_PE -DTCC_TARGET_X86_64 -c ../lib/libtcc1.c | 85 | @./tcc -m64 -DTCC_TARGET_PE -DTCC_TARGET_X86_64 -c ../lib/libtcc1.c |
| 76 | @./tcc -m64 -DTCC_TARGET_PE -DTCC_TARGET_X86_64 -c ../lib/alloca86_64.S | 86 | @./tcc -m64 -DTCC_TARGET_PE -DTCC_TARGET_X86_64 -c ../lib/alloca86_64.S |
| @@ -88,14 +98,14 @@ libs: lib/32/libtcc1.a lib/64/libtcc1.a · 11 unmodified lines |
| 88 | PHONY += libs | 98 | PHONY += libs |
| 89 | | 99 | |
| 90 | rebuild: | 100 | rebuild: |
| 91 | @echo Rebuild using tcc itself - default $(ARCH)bits | 101 | @echo Rebuild using tcc itself - default $(TARGET)bits |
| 92 | @./$(PREFIX)-win32-tcc $(NATIVE) -DTCC_TARGET_PE -DONE_SOURCE -o tcc.exe ../tcc.c libtcc.dll | 102 | @./$(TPREFIX)-win32-tcc $(TFLAGS) -DTCC_TARGET_PE -DONE_SOURCE -o tcc.exe ../tcc.c |
| 93 | @./$(PREFIX)-win32-tcc $(NATIVE) -DTCC_TARGET_PE -DONE_SOURCE -o tiny_libmaker.exe tools/tiny_libmaker.c | 103 | @./$(TPREFIX)-win32-tcc $(TFLAGS) -DTCC_TARGET_PE -DONE_SOURCE -o tiny_libmaker.exe tools/tiny_libmaker.c |
| 94 | @./tcc $(NATIVE) -DTCC_TARGET_PE -DONE_SOURCE -DLIBTCC_AS_DLL -o libtcc.dll -shared ../libtcc.c | 104 | @./tcc $(TFLAGS) -DTCC_TARGET_PE -DONE_SOURCE -DLIBTCC_AS_DLL -o libtcc.dll -shared ../libtcc.c |
| 95 | @./tcc -m$(ARCH) -DTCC_TARGET_PE -DONE_SOURCE -DTCC_TARGET_I386 -o tmp-tcc.exe ../tcc.c && mv tmp-tcc.exe i386-win32-tcc.exe | 105 | @./tcc -m$(TARGET) -DTCC_TARGET_PE -DONE_SOURCE -DTCC_TARGET_I386 -o tmp-tcc.exe ../tcc.c && mv tmp-tcc.exe i386-win32-tcc.exe |
| 96 | @./tcc -m$(ARCH) -DTCC_TARGET_PE -DONE_SOURCE -DTCC_TARGET_X86_64 -o tmp-tcc.exe ../tcc.c && mv tmp-tcc.exe x86_64-win32-tcc.exe | 106 | @./tcc -m$(TARGET) -DTCC_TARGET_PE -DONE_SOURCE -DTCC_TARGET_X86_64 -o tmp-tcc.exe ../tcc.c && mv tmp-tcc.exe x86_64-win32-tcc.exe |
| 97 | @./tcc -m$(ARCH) -DTCC_TARGET_PE -DONE_SOURCE -DTCC_TARGET_I386 -o tiny_libmaker32.exe tools/tiny_libmaker.c | 107 | @./tcc -m$(TARGET) -DTCC_TARGET_PE -DONE_SOURCE -DTCC_TARGET_I386 -o tiny_libmaker32.exe tools/tiny_libmaker.c |
| 98 | @./tcc -m$(ARCH) -DTCC_TARGET_PE -DONE_SOURCE -DTCC_TARGET_X86_64 -o tiny_libmaker64.exe tools/tiny_libmaker.c | 108 | @./tcc -m$(TARGET) -DTCC_TARGET_PE -DONE_SOURCE -DTCC_TARGET_X86_64 -o tiny_libmaker64.exe tools/tiny_libmaker.c |
| 99 | | 109 | |
| 100 | PHONY += rebuild | 110 | PHONY += rebuild |
| 101 | | 111 | |
| @@ -110,7 +120,6 @@ tarball: · 8 unmodified lines |
| 110 | @cp -r lib $(TARNAME) | 120 | @cp -r lib $(TARNAME) |
| 111 | @cp -r libtcc $(TARNAME) | 121 | @cp -r libtcc $(TARNAME) |
| 112 | @cp -r tools $(TARNAME) | 122 | @cp -r tools $(TARNAME) |
| 113 | # @cp -r vs2015 $(TARNAME) | | |
| 114 | @cp -r build-tcc.bat $(TARNAME) | 123 | @cp -r build-tcc.bat $(TARNAME) |
| 115 | @cp -r i386-win32-tcc.exe $(TARNAME) | 124 | @cp -r i386-win32-tcc.exe $(TARNAME) |
| 116 | @cp -r libtcc.def $(TARNAME) | 125 | @cp -r libtcc.def $(TARNAME) |
| @@ -128,4 +137,4 @@ tarball: · 11 unmodified lines |
| 128 | PHONY += tarball | 137 | PHONY += tarball |
| 129 | | 138 | |
| 130 | clean: | 139 | clean: |
| 131 | rm -f *.o *.exe *.dll lib/*/*.a | 140 | rm -f *.o *.exe *.dll lib/*/*.a *.pdb *.obj *.exp *.def *.lib |