Quellcode durchsuchen

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 vor 9 Jahren
Ursprung
Commit
03bd65562a
2 geänderte Dateien mit 25 neuen und 17 gelöschten Zeilen
  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=