| @@ -14,7 +14,7 @@ LIBTCCA=libtcc.a · 13 unmodified lines |
| 14 | 14 | ifdef DISABLE_STATIC |
| 15 | 15 | CFLAGS+=-fPIC |
| 16 | 16 | LIBTCCA= |
| 17 | | −LIBTCCL=-ltcc |
| 17 | +LIBTCCL=-L. -ltcc |
| 18 | 18 | LIBTCCSO=libtcc.so.1 |
| 19 | 19 | endif |
| 20 | 20 | LIBTCCB=$(LIBTCCA) |
| @@ -110,11 +110,11 @@ PROGS_CROSS=$(WIN64_CROSS) $(I386_CROSS) $(X64_CROSS) $(ARM_CROSS) $(C67_CROSS) · 89 unmodified lines |
| 110 | 110 | else |
| 111 | 111 | ifeq ($(ARCH),i386) |
| 112 | 112 | NATIVE_FILES=$(I386_FILES) |
| 113 | | −PROGS_CROSS=$(X64_CROSS) libtcc1_win32 $(WIN32_CROSS) $(WIN64_CROSS) $(ARM_CROSS) $(C67_CROSS) |
| 113 | +PROGS_CROSS=$(X64_CROSS) $(WIN32_CROSS) $(WIN64_CROSS) $(ARM_CROSS) $(C67_CROSS) |
| 114 | 114 | else |
| 115 | 115 | ifeq ($(ARCH),x86-64) |
| 116 | 116 | NATIVE_FILES=$(X86_64_FILES) |
| 117 | | −PROGS_CROSS=$(I386_CROSS) libtcc1_win32 $(WIN32_CROSS) $(WIN64_CROSS) $(ARM_CROSS) $(C67_CROSS) |
| 117 | +PROGS_CROSS=$(I386_CROSS) $(WIN32_CROSS) $(WIN64_CROSS) $(ARM_CROSS) $(C67_CROSS) |
| 118 | 118 | else |
| 119 | 119 | ifeq ($(ARCH),arm) |
| 120 | 120 | NATIVE_FILES=$(ARM_FILES) |
| @@ -125,14 +125,13 @@ endif · 4 unmodified lines |
| 125 | 125 | endif |
| 126 | 126 | |
| 127 | 127 | ifdef CONFIG_CROSS |
| 128 | | − |
| 129 | 128 | PROGS+=$(PROGS_CROSS) |
| 130 | 129 | endif |
| 131 | 130 | |
| 132 | 131 | all: $(PROGS) $(LIBTCC1) $(BCHECK_O) $(LIBTCCB) tcc-doc.html tcc.1 libtcc_test$(EXESUF) |
| 133 | 132 | |
| 134 | 133 | # Host Tiny C Compiler |
| 135 | | −tcc$(EXESUF): tcc.o $(LIBTCCA) |
| 134 | +tcc$(EXESUF): tcc.o $(LIBTCCB) |
| 136 | 135 | $(CC) -o $@ $^ $(LIBS) $(LIBTCCL) |
| 137 | 136 | |
| 138 | 137 | # Cross Tiny C Compilers |
| @@ -179,11 +178,22 @@ libtcc.so.1: $(LIBTCC_OBJ) · 40 unmodified lines |
| 179 | 178 | $(CC) -shared -Wl,-soname,$@ -o $@.0 $^ |
| 180 | 179 | ln -sf libtcc.so.1.0 libtcc.so.1 |
| 181 | 180 | ln -sf libtcc.so.1.0 libtcc.so |
| 182 | | −libtcc1_win32: |
| 183 | | − ./make_libtcc1_win32.sh |
| 184 | 181 | |
| 185 | | −libtcc_test$(EXESUF): tests/libtcc_test.c $(LIBTCCA) |
| 182 | +libtcc_test$(EXESUF): tests/libtcc_test.c $(LIBTCCB) |
| 186 | 183 | $(CC) -o $@ $^ -I. $(CFLAGS) $(LIBS) $(LIBTCCL) |
| 184 | +ifdef CONFIG_CROSS |
| 185 | +ifndef CONFIG_WIN32 |
| 186 | + echo "ARCH=i386" >> config.mak |
| 187 | + make i386-win32-tcc |
| 188 | + cp i386-win32-tcc tcc.exe |
| 189 | + mv libtcc1.a libtcc1.bak |
| 190 | + make CONFIG_WIN32=1 libtcc1.a |
| 191 | + mv libtcc1.a lib |
| 192 | + mv libtcc1.bak libtcc1.a |
| 193 | + head -n -1 config.mak > config.bak |
| 194 | + mv config.bak config.mak |
| 195 | +endif |
| 196 | +endif |
| 187 | 197 | |
| 188 | 198 | libtest: libtcc_test$(EXESUF) $(LIBTCC1) |
| 189 | 199 | ./libtcc_test$(EXESUF) lib_path=. |
| @@ -239,10 +249,20 @@ endif · 49 unmodified lines |
| 239 | 249 | $(INSTALL) -m644 $(addprefix include/,$(TCC_INCLUDES)) "$(tccdir)/include" |
| 240 | 250 | mkdir -p "$(libdir)" |
| 241 | 251 | $(INSTALL) -m644 $(LIBTCCB) "$(libdir)" |
| 252 | +ifeq ($(LIBTCCB),$(LIBTCCSO)) |
| 253 | + $(INSTALL) -m644 $(LIBTCCB,.1.0=.1) "$(libdir)" |
| 254 | + $(INSTALL) -m644 $(LIBTCCB,.1.0=) "$(libdir)" |
| 255 | +endif |
| 242 | 256 | mkdir -p "$(includedir)" |
| 243 | 257 | $(INSTALL) -m644 libtcc.h "$(includedir)" |
| 244 | 258 | mkdir -p "$(docdir)" |
| 245 | | − -$(INSTALL) -m644 tcc-doc.html "$(docdir)" |
| 259 | + $(INSTALL) -m644 tcc-doc.html "$(docdir)" |
| 260 | +ifdef CONFIG_CROSS |
| 261 | + mkdir -p "$(tccdir)/lib" |
| 262 | + $(INSTALL) -m644 win32/lib/*.def lib/libtcc1.a "$(tccdir)/lib" |
| 263 | + cp -r win32/include/. "$(tccdir)/include" |
| 264 | + cp -r win32/examples/. "$(tccdir)/examples" |
| 265 | +endif |
| 246 | 266 | |
| 247 | 267 | uninstall: |
| 248 | 268 | rm -fv $(foreach P,$(PROGS),"$(bindir)/$P") |
| @@ -250,7 +270,14 @@ uninstall: · 1 unmodified line |
| 250 | 270 | rm -fv $(foreach P,$(TCC_INCLUDES),"$(tccdir)/include/$P") |
| 251 | 271 | rm -fv "$(docdir)/tcc-doc.html" "$(mandir)/man1/tcc.1" |
| 252 | 272 | rm -fv "$(libdir)/$(LIBTCCB)" "$(includedir)/libtcc.h" |
| 253 | | − |
| 273 | +ifeq ($(LIBTCCB),$(LIBTCCSO)) |
| 274 | + rm -fv "$(libdir)/$(LIBTCCB,.1.0=.1)" "$(libdir)/$(LIBTCCB,.1.0=)" |
| 275 | +endif |
| 276 | +ifdef CONFIG_CROSS |
| 277 | + rm -rf "$(tccdir)/include" |
| 278 | + rm -rf "$(tccdir)/lib" |
| 279 | + rm -rf "$(tccdir)/examples" |
| 280 | +endif |
| 254 | 281 | else |
| 255 | 282 | install: $(PROGS) $(LIBTCC1) libtcc.a tcc-doc.html |
| 256 | 283 | mkdir -p "$(tccdir)" |