Pārlūkot izejas kodu

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.
Rich Felker 9 gadi atpakaļ
vecāks
revīzija
03bd65562a
2 mainītis faili ar 25 papildinājumiem un 17 dzēšanām
  1. 0 17
      config.mak.dist
  2. 25 0
      litecross/Makefile

+ 0 - 17
config.mak.dist

@@ -63,20 +63,3 @@
 # where to look for source files.
 
 # 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

+ 25 - 0
litecross/Makefile

@@ -12,6 +12,31 @@ TOOLCHAIN_CONFIG = $(GCC_CONFIG)
 XGCC_DIR = ../obj_toolchain/gcc
 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
 
 MAKE += MULTILIB_OSDIRNAMES=