A native tcc for MSYS (Windows) must be i386-win-tcc.exe and not i386-tcc.exe

i386-tcc.exe is a compiler for i386 Linux. A HOST_OS variable in Makefile is
introduced and used to select a native compiler (which one to name as tcc.exe)
This commit is contained in:
seyko 2015-03-10 13:39:26 +03:00
parent 25b2779c3d
commit 87ec08ecc8
2 changed files with 17 additions and 1 deletions

View file

@ -89,6 +89,18 @@ $(ARM_FPA_LD_CROSS)_LINK = arm-fpa-ld-tcc$(EXESUF)
$(ARM_VFP_CROSS)_LINK = arm-vfp-tcc$(EXESUF) $(ARM_VFP_CROSS)_LINK = arm-vfp-tcc$(EXESUF)
$(ARM_EABI_CROSS)_LINK = arm-eabi-tcc$(EXESUF) $(ARM_EABI_CROSS)_LINK = arm-eabi-tcc$(EXESUF)
ifeq ($(HOST_OS),Windows)
ifeq ($(ARCH),i386)
PROGS:=$($(WIN32_CROSS)_LINK)
$($(WIN32_CROSS)_LINK)_TCC = yes
endif
ifeq ($(ARCH),x86-64)
PROGS:=$($(WIN64_CROSS)_LINK)
$($(WIN64_CROSS)_LINK)_TCC = yes
endif
endif
ifeq ($(HOST_OS),Linux)
ifeq ($(ARCH),i386) ifeq ($(ARCH),i386)
PROGS:=$($(I386_CROSS)_LINK) PROGS:=$($(I386_CROSS)_LINK)
$($(I386_CROSS)_LINK)_TCC = yes $($(I386_CROSS)_LINK)_TCC = yes
@ -97,6 +109,7 @@ ifeq ($(ARCH),x86-64)
PROGS:=$($(X64_CROSS)_LINK) PROGS:=$($(X64_CROSS)_LINK)
$($(X64_CROSS)_LINK)_TCC = yes $($(X64_CROSS)_LINK)_TCC = yes
endif endif
endif
CORE_FILES = tcc.c libtcc.c tccpp.c tccgen.c tccelf.c tccasm.c tccrun.c CORE_FILES = tcc.c libtcc.c tccpp.c tccgen.c tccelf.c tccasm.c tccrun.c
CORE_FILES += tcc.h config.h libtcc.h tcctok.h CORE_FILES += tcc.h config.h libtcc.h tcctok.h

5
configure vendored
View file

@ -47,11 +47,12 @@ tcc_elfinterp=""
tcc_lddir= tcc_lddir=
confvars= confvars=
cpu= cpu=
host_os=Linux
# OS specific # OS specific
targetos=`uname -s` targetos=`uname -s`
case $targetos in case $targetos in
MINGW32*) mingw32=yes;; MINGW32*) mingw32=yes; host_os=Windows; ;;
DragonFly) noldl=yes;; DragonFly) noldl=yes;;
OpenBSD) noldl=yes;; OpenBSD) noldl=yes;;
FreeBSD) noldl=yes;; FreeBSD) noldl=yes;;
@ -407,6 +408,7 @@ echo "cross compilers $build_cross"
if test "$build_cross" = "no"; then if test "$build_cross" = "no"; then
echo "Target CPU $cpu" echo "Target CPU $cpu"
fi fi
echo "Host OS $host_os"
echo "Target OS $targetos" echo "Target OS $targetos"
echo "Big Endian $bigendian" echo "Big Endian $bigendian"
echo "gprof enabled $gprof" echo "gprof enabled $gprof"
@ -435,6 +437,7 @@ CFLAGS=$CFLAGS
LDFLAGS=$LDFLAGS LDFLAGS=$LDFLAGS
LIBSUF=$LIBSUF LIBSUF=$LIBSUF
EXESUF=$EXESUF EXESUF=$EXESUF
HOST_OS=$host_os
EOF EOF
if test "$mingw32" = "yes"; then if test "$mingw32" = "yes"; then
cat >>config.mak <<EOF cat >>config.mak <<EOF