Unified · Split
| @@ -204,7 +204,7 @@ VPATH+=lib · 203 unmodified lines | ||
| 204 | 204 | WINDLLS=$(LIBTCC1_DIR)/crt1.o $(LIBTCC1_DIR)/wincrt1.o $(LIBTCC1_DIR)/dllcrt1.o $(LIBTCC1_DIR)/dllmain.o |
| 205 | 205 | ifdef CONFIG_WIN32 |
| 206 | 206 | # for windows, we must use TCC because we generate ELF objects |
| 207 | − LIBTCC1_OBJS+=$(WINDLLS) $(LIBTCC1_DIR)/chkstk.o $(LIBTCC1_DIR)/bcheck.o | |
| 207 | + LIBTCC1_OBJS+=$(WINDLLS) $(BCHECK_O) | |
| 208 | 208 | LIBTCC1_CC=./$(TCC)$(EXESUF) -B. -Iinclude $(NATIVE_DEFINES) |
| 209 | 209 | VPATH+=win32/lib |
| 210 | 210 | endif |
| @@ -228,19 +228,26 @@ $(LIBTCC1_DIR)/libtcc1.a: $(LIBTCC1_OBJS) · 17 unmodified lines | ||
| 228 | 228 | $(RM) $^ |
| 229 | 229 | |
| 230 | 230 | #recursively build cross-compiler lib archives for each arch |
| 231 | −win32: $(TCC)$(EXESUF) $(I386_CROSS) | |
| 231 | +win32: $(TCC)$(EXESUF) $(WIN64_CROSS) | |
| 232 | +#testing: bleeding: cross-cross (./configure --enable-mingw32 --enable-cross) | |
| 233 | +#fixme: The windows exe cross-compilers still use Linux libc | |
| 234 | +#fixme: thus cygwin or some such needed to even run them on Windows | |
| 232 | 235 | $(MAKE) CC=./$(I386_CROSS) ARCH=i386 LIBTCC1_DIR=lib lib/libtcc1.a |
| 233 | − $(MAKE) CC=./$(X64_CROSS) LIBTCC1_DIR=lib64 ARCH=x86-64 lib64/libtcc1.a \ | |
| 234 | − LIBTCC1_OBJS="lib/libtcc1.o alloca86_64.o" | |
| 235 | − #todo: build arm, etc cross lib archives | |
| 236 | + $(MAKE) CC=./$(X64_CROSS) LIBTCC1_DIR=lib64 \ | |
| 237 | + ARCH=x86-64 LIBTCC1_OBJS="lib/libtcc1.o alloca86_64.o" lib64/libtcc1.a | |
| 238 | + $(MAKE) CC=./$(WIN64_CROSS) CONFIG_CROSS= TCC=./x86_64-win32-tcc \ | |
| 239 | + ARCH=x86-64 LIBTCC1_DIR=win32/lib/64 CONFIG_WIN64=1 win32/lib/64/libtcc1.a | |
| 240 | + #todo: add arm, etc cross lib archives | |
| 236 | 241 | |
| 237 | 242 | win64: $(PROGS_CROSS) |
| 243 | +#testing: bleeding: mingw64 cross-cross lib stuff would go here | |
| 238 | 244 | $(MAKE) TCC=./$(WIN32_CROSS) CC=./$(WIN32_CROSS) LIBTCC1_DIR=win32/lib/32 \ |
| 239 | 245 | ARCH=i386 CONFIG_WIN32=1 win32/lib/32/libtcc1.a |
| 240 | 246 | $(MAKE) CC=./$(I386_CROSS) LIBTCC1_DIR=lib ARCH=i386 lib/libtcc1.a |
| 241 | 247 | $(MAKE) CC=./$(X64_CROSS) LIBTCC1_DIR=lib64 ARCH=x86-64 lib64/libtcc1.a |
| 242 | 248 | |
| 243 | 249 | i386: $(PROGS_CROSS) |
| 250 | +#testing: unstable: build cross-compiler libs on i386 platform | |
| 244 | 251 | $(MAKE) TCC=./$(WIN32_CROSS) CC=./$(WIN32_CROSS) LIBTCC1_DIR=win32/lib/32 \ |
| 245 | 252 | ARCH=i386 CONFIG_WIN32=1 win32/lib/32/libtcc1.a |
| 246 | 253 | $(MAKE) TCC=./$(WIN64_CROSS) CC=./$(WIN64_CROSS) LIBTCC1_DIR=win32/lib/64 \ |
| @@ -248,6 +255,7 @@ i386: $(PROGS_CROSS) · 1 unmodified line | ||
| 248 | 255 | $(MAKE) CC=./$(X64_CROSS) LIBTCC1_DIR=lib64 ARCH=x86-64 lib64/libtcc1.a |
| 249 | 256 | |
| 250 | 257 | x86-64: $(PROGS_CROSS) |
| 258 | +#stable: build cross-compiler lib archives on x86_64 platform | |
| 251 | 259 | $(MAKE) TCC=./$(WIN32_CROSS) CC=./$(WIN32_CROSS) LIBTCC1_DIR=win32/lib/32 \ |
| 252 | 260 | ARCH=i386 CONFIG_WIN32=1 win32/lib/32/libtcc1.a |
| 253 | 261 | $(MAKE) TCC=./$(WIN64_CROSS) CC=./$(WIN64_CROSS) LIBTCC1_DIR=win32/lib/64 \ |
| @@ -309,7 +317,7 @@ uninstall: · 55 unmodified lines | ||
| 309 | 317 | ifdef DISABLE_STATIC |
| 310 | 318 | rm -fv "$(libdir)/libtcc.so" |
| 311 | 319 | rm -fv "$(libdir)/libtcc.so.1" |
| 312 | − rm -fv "$(libdir)/libtcc.so" | |
| 320 | + rm -fv "$(libdir)/libtcc.so.1.0" | |
| 313 | 321 | else |
| 314 | 322 | rm -fv "$(libdir)/libtcc.a" |
| 315 | 323 | endif |