litecross: build target config logic into the makefile

leaving necessary configuration options for certain targets to the
user is error-prone and inconvenient. instead of configuration for
exact target string matchs in the sample config.mak, provide general
logic in the makefile itself which should cover all variants as well.
This commit is contained in:
Rich Felker 2016-05-19 03:15:32 +00:00
parent ab95e8efdc
commit 03bd65562a
2 changed files with 25 additions and 17 deletions

View File

@ -63,20 +63,3 @@
# where to look for source files. # where to look for source files.
# COMMON_CONFIG += --with-debug-prefix-map=$(PWD)= # COMMON_CONFIG += --with-debug-prefix-map=$(PWD)=
# The following are options needed to make certain targets work right.
# They may be moved to main build logic rather than config.mak at some
# point in the future.
ifeq ($(TARGET),sh2eb-linux-muslfdpic)
GCC_CONFIG += --with-cpu=mj2
GCC_CONFIG += --enable-fdpic
endif
ifeq ($(TARGET),mips64-linux-musl)
GCC_CONFIG += --with-abi=64
endif
ifeq ($(TARGET),arm-linux-musleabihf)
GCC_CONFIG += --with-float=hard
endif

View File

@ -12,6 +12,31 @@ TOOLCHAIN_CONFIG = $(GCC_CONFIG)
XGCC_DIR = ../obj_toolchain/gcc XGCC_DIR = ../obj_toolchain/gcc
XGCC = $(XGCC_DIR)/xgcc -B $(XGCC_DIR) XGCC = $(XGCC_DIR)/xgcc -B $(XGCC_DIR)
ifneq ($(findstring fdpic,$(TARGET)),)
GCC_CONFIG += --enable-fdpic
endif
ifneq ($(filter x86_64%x32,$(TARGET)),)
GCC_CONFIG += --with-abi=x32
endif
ifneq ($(findstring mips64,$(TARGET))$(findstring mipsisa64,$(TARGET)),)
ifneq ($(findstring n32,$(TARGET)),)
GCC_CONFIG += --with-abi=n32
else
GCC_CONFIG += --with-abi=64
endif
endif
ifneq ($(filter %sf,$(TARGET)),)
GCC_CONFIG += --with-float=soft
endif
ifneq ($(filter %hf,$(TARGET)),)
GCC_CONFIG += --with-float=hard
endif
-include config.mak -include config.mak
MAKE += MULTILIB_OSDIRNAMES= MAKE += MULTILIB_OSDIRNAMES=