mirror of
https://github.com/reactos/reactos.git
synced 2024-10-16 06:04:13 +00:00
Support custom C and C++ compilers, by variables HOST_CC, HOST_CPP, TARGET_CC and TARGET_CPP
Simplify usage of ROS_PREFIX variable svn path=/trunk/; revision=29371
This commit is contained in:
parent
2ea98ca374
commit
254bdce1b8
|
@ -260,45 +260,59 @@ else
|
|||
ECHO_STRIP =
|
||||
endif
|
||||
|
||||
|
||||
host_gcc = $(Q)gcc
|
||||
host_gpp = $(Q)g++
|
||||
# Set host compiler/linker
|
||||
ifeq ($(HOST_CC),)
|
||||
HOST_CC = gcc
|
||||
endif
|
||||
ifeq ($(HOST_CPP),)
|
||||
HOST_CPP = g++
|
||||
endif
|
||||
host_gcc = $(Q)$(HOST_CC)
|
||||
host_gpp = $(Q)$(HOST_CPP)
|
||||
host_ld = $(Q)ld
|
||||
host_ar = $(Q)ar
|
||||
host_objcopy = $(Q)objcopy
|
||||
|
||||
# Set target compiler/linker
|
||||
ifneq ($(ROS_PREFIX),)
|
||||
PREFIX_ := $(ROS_PREFIX)-
|
||||
else
|
||||
PREFIX_ :=
|
||||
endif
|
||||
ifeq ($(TARGET_CC),)
|
||||
TARGET_CC = $(PREFIX_)gcc
|
||||
endif
|
||||
ifeq ($(TARGET_CPP),)
|
||||
TARGET_CPP = $(PREFIX_)g++
|
||||
endif
|
||||
gcc = $(Q)$(TARGET_CC)
|
||||
gpp = $(Q)$(TARGET_CPP)
|
||||
ld = $(Q)$(PREFIX_)ld
|
||||
nm = $(Q)$(PREFIX_)nm
|
||||
objdump = $(Q)$(PREFIX_)objdump
|
||||
ar = $(Q)$(PREFIX_)ar
|
||||
objcopy = $(Q)$(PREFIX_)objcopy
|
||||
dlltool = $(Q)$(PREFIX_)dlltool
|
||||
strip = $(Q)$(PREFIX_)strip
|
||||
windres = $(Q)$(PREFIX_)windres
|
||||
|
||||
# Set utilities
|
||||
ifeq ($(OSTYPE),msys)
|
||||
HOST=mingw32-linux
|
||||
endif
|
||||
ifeq ($(HOST),mingw32-linux)
|
||||
export EXEPREFIX = ./
|
||||
ifeq ($(OSTYPE),msys)
|
||||
ifeq ($(OSTYPE),msys)
|
||||
export EXEPOSTFIX = .exe
|
||||
else
|
||||
else
|
||||
export EXEPOSTFIX =
|
||||
endif
|
||||
endif
|
||||
export SEP = /
|
||||
mkdir = -$(Q)mkdir -p
|
||||
gcc = $(Q)$(PREFIX)-gcc
|
||||
gpp = $(Q)$(PREFIX)-g++
|
||||
ld = $(Q)$(PREFIX)-ld
|
||||
nm = $(Q)$(PREFIX)-nm
|
||||
objdump = $(Q)$(PREFIX)-objdump
|
||||
ar = $(Q)$(PREFIX)-ar
|
||||
objcopy = $(Q)$(PREFIX)-objcopy
|
||||
dlltool = $(Q)$(PREFIX)-dlltool
|
||||
strip = $(Q)$(PREFIX)-strip
|
||||
windres = $(Q)$(PREFIX)-windres
|
||||
rm = $(Q)rm -f
|
||||
cp = $(Q)cp
|
||||
NUL = /dev/null
|
||||
else # mingw32-windows
|
||||
ifeq ($(OSTYPE),msys)
|
||||
HOST=mingw32-linux
|
||||
export EXEPREFIX = ./
|
||||
export EXEPOSTFIX = .exe
|
||||
export SEP = /
|
||||
mkdir = -$(Q)mkdir -p
|
||||
rm = $(Q)rm -f
|
||||
cp = $(Q)cp
|
||||
NUL = /dev/null
|
||||
else
|
||||
export EXEPREFIX =
|
||||
export EXEPOSTFIX = .exe
|
||||
ROS_EMPTY =
|
||||
|
@ -307,30 +321,6 @@ else # mingw32-windows
|
|||
rm = $(Q)del /f /q
|
||||
cp = $(Q)copy /y
|
||||
NUL = NUL
|
||||
endif
|
||||
ifeq ($(ROS_PREFIX),)
|
||||
gcc = $(Q)gcc
|
||||
gpp = $(Q)g++
|
||||
ld = $(Q)ld
|
||||
nm = $(Q)nm
|
||||
objdump = $(Q)objdump
|
||||
ar = $(Q)ar
|
||||
objcopy = $(Q)objcopy
|
||||
dlltool = $(Q)dlltool
|
||||
strip = $(Q)strip
|
||||
windres = $(Q)windres
|
||||
else
|
||||
gcc = $(Q)$(ROS_PREFIX)-gcc
|
||||
gpp = $(Q)$(ROS_PREFIX)-g++
|
||||
ld = $(Q)$(ROS_PREFIX)-ld
|
||||
nm = $(Q)$(ROS_PREFIX)-nm
|
||||
objdump = $(Q)$(ROS_PREFIX)-objdump
|
||||
ar = $(Q)$(ROS_PREFIX)-ar
|
||||
objcopy = $(Q)$(ROS_PREFIX)-objcopy
|
||||
dlltool = $(Q)$(ROS_PREFIX)-dlltool
|
||||
strip = $(Q)$(ROS_PREFIX)-strip
|
||||
windres = $(Q)$(ROS_PREFIX)-windres
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(ROS_INTERMEDIATE),)
|
||||
|
|
Loading…
Reference in a new issue