Selaa lähdekoodia

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 vuotta sitten
vanhempi
commit
03bd65562a
2 muutettua tiedostoa jossa 25 lisäystä ja 17 poistoa
  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=