wip. rework handling of TARGET_C/XXFLAGS so they expose the actual target build flags.

git-svn-id: https://svn.aros.org/svn/aros/trunk/AROS@54437 fb15a70f-31f2-0310-bbcc-cdcc74a49acc
This commit is contained in:
NicJA 2017-04-02 03:19:31 +00:00
parent 0de91bae18
commit aba0092e81
6 changed files with 29 additions and 33 deletions

View File

@ -38,7 +38,6 @@ endif
TARGET_LTO := @aros_config_lto@
KERNEL_CXXFLAGS := $(subst -Wno-pointer-sign,, $(subst -Werror-implicit-function-declaration,, $(KERNEL_CFLAGS)))
TARGET_CXXFLAGS := $(subst -Wno-pointer-sign,, $(subst -Werror-implicit-function-declaration,, $(TARGET_CFLAGS)))
# Kernel private includes, in order of precedence:
ifneq (,$(findstring $(ARCH),raspi))

View File

@ -198,8 +198,8 @@ MECHO := $(NOP)
endif
# compiler and assembler flags are set depending upon the directory
CFLAGS = $(ISA_FLAGS) $(OPTIMIZATION_CFLAGS) $(USER_INCLUDES) $(CONFIG_CFLAGS) $(USER_CFLAGS)
CXXFLAGS = $(ISA_FLAGS) $(OPTIMIZATION_CFLAGS) $(USER_INCLUDES) $(CONFIG_CXXFLAGS) $(USER_CXXFLAGS)
CFLAGS = $(TARGET_CFLAGS)
CXXFLAGS = $(TARGET_CXXFLAGS)
AFLAGS = $(ISA_FLAGS) $(USER_AFLAGS) $(CONFIG_AFLAGS)
LDFLAGS = $(USER_LDFLAGS) $(CONFIG_LDFLAGS)

View File

@ -22,7 +22,7 @@ endif
#------------------------------------------------------------------------------
# Compile the file %(from) to %(to) with %(cmd). Write any errors to %(err)
# and use the options in %(opt). Use %(iquote) and %(iquote_end) for supplying -iquote or -I- flags
%define compile_q cmd="$(TARGET_CC) $(TARGET_SYSROOT)" opt="$(TARGET_CFLAGS) $(CFLAGS)" from=$< to=$@ iquote=$(CFLAGS_IQUOTE) iquote_end=$(CFLAGS_IQUOTE_END)
%define compile_q cmd="$(TARGET_CC) $(TARGET_SYSROOT)" opt="$(CFLAGS)" from=$< to=$@ iquote=$(CFLAGS_IQUOTE) iquote_end=$(CFLAGS_IQUOTE_END)
@$(ECHO) "Compiling $(if $(filter /%,%(from)),$(if $(filter $(SRCDIR)/%,$(abspath %(from))),$(patsubst $(SRCDIR)/%,%,$(abspath %(from))),$(patsubst $(TOP)/%,%,$(abspath %(from)))),$(patsubst $(SRCDIR)/%,%,$(abspath $(SRCDIR)/$(CURDIR)/%(from))))"
@$(IF) %(cmd) %(iquote) $(dir %(from)) %(iquote) $(SRCDIR)/$(CURDIR) %(iquote) . %(iquote_end) %(opt) -c %(from) -o %(to) > $(GENDIR)/cerrors 2>&1 ; then \
$(IF) $(TEST) -s $(GENDIR)/cerrors ; then \
@ -306,8 +306,8 @@ BD_LINK ?= $(TARGET_CC) $(TARGET_SYSROOT) $(TARGET_LDFLAGS)
BD_STRIP ?= $(TARGET_STRIP)
$(TMP_TARGETBASE).o : TMP_CMD:=$(TARGET_CC) $(TARGET_SYSROOT)
$(TMP_TARGETBASE).d : TMP_CMD:=$(TARGET_CC) $(TARGET_SYSROOT)
$(TMP_TARGETBASE).o : TMP_CFLAGS:=$(TARGET_CFLAGS) $(TMP_CFLAGS)
$(TMP_TARGETBASE).d : TMP_DFLAGS:=$(TARGET_CFLAGS) $(TMP_DFLAGS)
$(TMP_TARGETBASE).o : TMP_CFLAGS:=$(TMP_CFLAGS)
$(TMP_TARGETBASE).d : TMP_DFLAGS:=$(TMP_DFLAGS)
$(TMP_TARGETBASE).o : TMP_IQUOTE:=$(CFLAGS_IQUOTE)
$(TMP_TARGETBASE).d : TMP_IQUOTE:=$(CFLAGS_IQUOTE)
$(TMP_TARGETBASE).o : TMP_IQUOTE_END:=$(CFLAGS_IQUOTE_END)
@ -389,8 +389,8 @@ BD_LINK ?= $(AROS_CXX) $(TARGET_SYSROOT) $(TARGET_LDFLAGS)
BD_STRIP ?= $(TARGET_STRIP)
$(TMP_TARGETBASE).o : TMP_CMD:=$(AROS_CXX) $(TARGET_SYSROOT)
$(TMP_TARGETBASE).d : TMP_CMD:=$(AROS_CXX) $(TARGET_SYSROOT)
$(TMP_TARGETBASE).o : TMP_CXXFLAGS:=$(TARGET_CXXFLAGS) $(TMP_CXXFLAGS)
$(TMP_TARGETBASE).d : TMP_DXXFLAGS:=$(TARGET_CXXFLAGS) $(TMP_DXXFLAGS)
$(TMP_TARGETBASE).o : TMP_CXXFLAGS:=$(TMP_CXXFLAGS)
$(TMP_TARGETBASE).d : TMP_DXXFLAGS:=$(TMP_DXXFLAGS)
$(TMP_TARGETBASE).o : TMP_IQUOTE:=$(CFLAGS_IQUOTE)
$(TMP_TARGETBASE).d : TMP_IQUOTE:=$(CFLAGS_IQUOTE)
$(TMP_TARGETBASE).o : TMP_IQUOTE_END:=$(CFLAGS_IQUOTE_END)
@ -485,8 +485,8 @@ BD_LINK ?= $(TMP_CC) $(TARGET_SYSROOT) $(TARGET_LDFLAGS)
BD_STRIP ?= $(TARGET_STRIP)
$(TMP_TARGETBASE).o : TMP_CMD:=$(TMP_CC) $(TARGET_SYSROOT)
$(TMP_TARGETBASE).d : TMP_CMD:=$(TMP_CC) $(TARGET_SYSROOT)
$(TMP_TARGETBASE).o : TMP_OBJCFLAGS:=$(TARGET_CFLAGS) $(TMP_OBJCFLAGS)
$(TMP_TARGETBASE).d : TMP_OBJCDFLAGS:=$(TARGET_CFLAGS) $(TMP_OBJCDFLAGS)
$(TMP_TARGETBASE).o : TMP_OBJCFLAGS:=$(TMP_OBJCFLAGS)
$(TMP_TARGETBASE).d : TMP_OBJCDFLAGS:=$(TMP_OBJCDFLAGS)
$(TMP_TARGETBASE).o : TMP_IQUOTE:=$(CFLAGS_IQUOTE)
$(TMP_TARGETBASE).d : TMP_IQUOTE:=$(CFLAGS_IQUOTE)
$(TMP_TARGETBASE).o : TMP_IQUOTE_END:=$(CFLAGS_IQUOTE_END)
@ -595,8 +595,8 @@ BD_LINK ?= $(TARGET_CC) $(TARGET_SYSROOT) $(TARGET_LDFLAGS)
BD_STRIP ?= $(TARGET_STRIP)
BD_ASSEMBLER ?= $(TARGET_CC) $(TARGET_SYSROOT)
$(TMP_TARGETS) $(TMP_DTARGETS) : CMD:=$(TARGET_CC) $(TARGET_SYSROOT)
$(TMP_TARGETS) $(TMP_DTARGETS) : TMP_CFLAGS:=$(TARGET_CFLAGS) $(TMP_CFLAGS)
$(TMP_TARGETS) $(TMP_DTARGETS) : TMP_DFLAGS:=$(TARGET_CFLAGS) $(TMP_DFLAGS)
$(TMP_TARGETS) $(TMP_DTARGETS) : TMP_CFLAGS:=$(TMP_CFLAGS)
$(TMP_TARGETS) $(TMP_DTARGETS) : TMP_DFLAGS:=$(TMP_DFLAGS)
$(TMP_TARGETS) $(TMP_DTARGETS) : TMP_IQUOTE:=$(CFLAGS_IQUOTE)
$(TMP_TARGETS) $(TMP_DTARGETS) : TMP_IQUOTE_END:=$(CFLAGS_IQUOTE_END)
endif
@ -698,8 +698,8 @@ ifeq (%(compiler),target)
BD_STRIP ?= $(TARGET_STRIP)
BD_ASSEMBLER ?= $(TARGET_CC) $(TARGET_SYSROOT)
TMP_CXXCMD:=$(AROS_CXX) $(TARGET_SYSROOT)
TMP_CXXFLAGS := $(TARGET_CXXFLAGS) $(TMP_CXXFLAGS)
TMP_DXXFLAGS := $(TARGET_CXXFLAGS) $(TMP_DXXFLAGS)
TMP_CXXFLAGS := $(TMP_CXXFLAGS)
TMP_DXXFLAGS := $(TMP_DXXFLAGS)
TMP_CXXIQUOTE:=$(CFLAGS_IQUOTE)
TMP_CXXIQUOTE_END:=$(CFLAGS_IQUOTE_END)
endif
@ -801,8 +801,8 @@ ifeq (%(compiler),target)
BD_STRIP ?= $(TARGET_STRIP)
BD_ASSEMBLER ?= $(TARGET_CC) $(TARGET_SYSROOT)
$(TMP_TARGETS) $(TMP_DTARGETS) : CMD:=$(TMP_CC) $(TARGET_SYSROOT)
$(TMP_TARGETS) $(TMP_DTARGETS) : TMP_OBJCFLAGS:=$(TARGET_CFLAGS) $(TMP_OBJCFLAGS)
$(TMP_TARGETS) $(TMP_DTARGETS) : TMP_OBJCDFLAGS:=$(TARGET_CFLAGS) $(TMP_OBJCDFLAGS)
$(TMP_TARGETS) $(TMP_DTARGETS) : TMP_OBJCFLAGS:=$(TMP_OBJCFLAGS)
$(TMP_TARGETS) $(TMP_DTARGETS) : TMP_OBJCDFLAGS:=$(TMP_OBJCDFLAGS)
$(TMP_TARGETS) $(TMP_DTARGETS) : TMP_IQUOTE:=$(CFLAGS_IQUOTE)
$(TMP_TARGETS) $(TMP_DTARGETS) : TMP_IQUOTE_END:=$(CFLAGS_IQUOTE_END)
endif
@ -2529,7 +2529,7 @@ ifeq ($(findstring %(compiler),host kernel target),)
$(error unknown compiler %(compiler))
endif
ifeq (%(compiler),target)
$(BD_FILEOBJS$(BDID)) $(BD_DEPS$(BDID)) $(BD_LINKLIBOBJS$(BDID)) : TMP_CMD:=$(TARGET_CC) $(TARGET_SYSROOT) $(TARGET_CFLAGS)
$(BD_FILEOBJS$(BDID)) $(BD_DEPS$(BDID)) $(BD_LINKLIBOBJS$(BDID)) : TMP_CMD:=$(TARGET_CC) $(TARGET_SYSROOT)
$(BD_FILEOBJS$(BDID)) $(BD_DEPS$(BDID)) $(BD_LINKLIBOBJS$(BDID)) : TMP_IQUOTE:=$(CFLAGS_IQUOTE)
$(BD_FILEOBJS$(BDID)) $(BD_DEPS$(BDID)) $(BD_LINKLIBOBJS$(BDID)) : TMP_IQUOTE_END:=$(CFLAGS_IQUOTE_END)
endif
@ -2587,7 +2587,7 @@ endif
%define ctoasm_q
%.s : %.c
@$(ECHO) "Generating $(CURDIR)/$(notdir $@)..."
@$(TARGET_CC) $(TARGET_SYSROOT) -S $(CFLAGS) $(TARGET_CFLAGS) $< -c -o $@
@$(TARGET_CC) $(TARGET_SYSROOT) -S $(CFLAGS) $< -c -o $@
%end
#------------------------------------------------------------------------------
@ -2708,7 +2708,7 @@ $(HIDD_LIB)($(STUBS_MEM)) : $(STUBS_OBJ)
%mklib_q from=$^
$(STUBS_OBJ) : $(STUBS_SRC)
%compile_q cmd="$(TARGET_CC) $(TARGET_SYSROOT) $(TARGET_CFLAGS)" opt="%(cflags)" iquote=$(CFLAGS_IQUOTE) iquote_end=$(CFLAGS_IQUOTE_END)
%compile_q cmd="$(TARGET_CC) $(TARGET_SYSROOT)" opt="%(cflags)" iquote=$(CFLAGS_IQUOTE) iquote_end=$(CFLAGS_IQUOTE_END)
$(STUBS_DEP) : $(STUBS_SRC)
%mkdepend_q flags="%(dflags)"
@ -2939,6 +2939,7 @@ ifeq (%(crossbuild),yes)
CXXCPP="$(strip $(HOST_CPP))" \
CC="$(strip $(HOST_DEF_CC))" \
CXX="$(strip $(HOST_CXX))" \
LD="$(strip $(HOST_LD))" \
CFLAGS="$(strip $(HOST_CFLAGS) -I$(CROSSTOOLSDIR)/include $(%(mmake)-s_flag))" \
CXXFLAGS="$(strip $(HOST_CXXFLAGS) -I$(CROSSTOOLSDIR)/include $(%(mmake)-s_flag))" \
LDFLAGS="$(strip $(HOST_LDFLAGS) -L$(CROSSTOOLSDIR)/lib $(USER_LDFLAGS) $(%(mmake)-s_flag))" \
@ -2946,6 +2947,7 @@ ifeq (%(crossbuild),yes)
CFLAGS_FOR_TARGET="$(strip $(ISA_FLAGS) $(USER_INCLUDES) $(BASE_CFLAGS) $(USER_CFLAGS) -L$(AROS_DEVELOPER)/lib %(extracflags) $(%(mmake)-nix) $(%(mmake)-s_flag))" \
CXX_FOR_TARGET="$(strip $(TARGET_CXX) $(TARGET_SYSROOT))" \
CXXFLAGS_FOR_TARGET="$(strip $(ISA_FLAGS) $(USER_INCLUDES) $(BASE_CXXFLAGS) $(USER_CXXFLAGS) -L$(AROS_DEVELOPER)/lib %(extracxxflags) $(%(mmake)-nix) $(%(mmake)-s_flag))" \
LD_FOR_TARGET="$(strip $(TARGET_LD))" \
LDFLAGS_FOR_TARGET="$(strip -L$(AROS_DEVELOPER)/lib $(USER_LDFLAGS) $(%(mmake)-nix) $(%(mmake)-s_flag))"
%(mmake)-config_opts += --target=$(AROS_TARGET_CPU)-aros
else
@ -2953,6 +2955,7 @@ else
CXXCPP="$(strip $(TARGET_CPP) $(TARGET_SYSROOT))" \
CC="$(strip $(TARGET_CC) $(TARGET_SYSROOT))" \
CXX="$(strip $(TARGET_CXX) $(TARGET_SYSROOT))" \
LD="$(strip $(TARGET_LD))" \
CFLAGS="$(strip $(ISA_FLAGS) $(USER_INCLUDES) $(BASE_CFLAGS) $(USER_CFLAGS) %(extracflags) $(%(mmake)-nix) $(%(mmake)-s_flag))" \
CXXFLAGS="$(strip $(ISA_FLAGS) $(USER_INCLUDES) $(BASE_CXXFLAGS) $(USER_CXXFLAGS) %(extracxxflags) $(%(mmake)-nix) $(%(mmake)-s_flag))" \
LDFLAGS="$(strip -L$(AROS_DEVELOPER)/lib $(USER_LDFLAGS) $(%(mmake)-nix) $(%(mmake)-s_flag))"
@ -2961,11 +2964,13 @@ endif
CFLAGS_FOR_BUILD="$(strip $(HOST_CFLAGS) $(%(mmake)-s_flag))" \
CXX_FOR_BUILD="$(strip $(HOST_CXX))" \
CXXFLAGS_FOR_BUILD="$(strip $(HOST_CXXFLAGS) $(%(mmake)-s_flag))" \
LD_FOR_BUILD="$(strip $(HOST_LD))" \
LDFLAGS_FOR_BUILD="$(strip $(HOST_LDFLAGS) $(%(mmake)-s_flag))" \
CC_FOR_HOST="$(strip $(TARGET_CC) $(TARGET_SYSROOT))" \
CFLAGS_FOR_HOST="$(strip $(ISA_FLAGS) $(USER_INCLUDES) $(BASE_CFLAGS) $(USER_CFLAGS) -L$(AROS_DEVELOPER)/lib %(extracflags) $(%(mmake)-nix) $(%(mmake)-s_flag))" \
CXX_FOR_HOST="$(strip $(TARGET_CXX) $(TARGET_SYSROOT))" \
CXXFLAGS_FOR_HOST="$(strip $(ISA_FLAGS) $(USER_INCLUDES) $(BASE_CXXFLAGS) $(USER_CXXFLAGS) -L$(AROS_DEVELOPER)/lib %(extracxxflags) $(%(mmake)-nix) $(%(mmake)-s_flag))" \
LD_FOR_HOST="$(strip $(TARGET_LD))" \
LDFLAGS_FOR_HOST="$(strip -L$(AROS_DEVELOPER)/lib $(USER_LDFLAGS) $(%(mmake)-nix) $(%(mmake)-s_flag))" \
AR="$(strip $(AR_PLAIN))" \
AS="$(strip $(TARGET_AS))" \

View File

@ -52,7 +52,8 @@ KERNEL_CFLAGS := @aros_kernel_cflags@
KERNEL_OBJCFLAGS := @aros_kernel_objcflags@
KERNEL_INCLUDES := @aros_kernel_includes@
KERNEL_LDFLAGS := @aros_kernel_ldflags@
TARGET_CFLAGS := @aros_target_cflags@
TARGET_CFLAGS = $(ISA_FLAGS) $(OPTIMIZATION_CFLAGS) $(USER_INCLUDES) $(CONFIG_CFLAGS) $(USER_CFLAGS)
TARGET_CXXFLAGS = $(ISA_FLAGS) $(OPTIMIZATION_CFLAGS) $(USER_INCLUDES) $(CONFIG_CXXFLAGS) $(USER_CXXFLAGS)
DEBUG_CFLAGS := @aros_debug_cflags@
DEBUG_CXXFLAGS :=

9
configure vendored
View File

@ -676,7 +676,6 @@ aros_target_genmap
aros_debug_ldflags
aros_debug_aflags
aros_debug_cflags
aros_target_cflags
aros_kernel_ldflags
aros_kernel_objcflags
aros_kernel_includes
@ -8290,7 +8289,7 @@ case "$target_os" in
need_x11=no
host_android_gfx=yes
# Disable implicit PIC mode
aros_target_cflags="$aros_target_cflags -fno-pic"
aros_config_cflags="$aros_config_cflags -fno-pic"
kernel_tool_prefix="$android_tool_prefix-"
;;
esac
@ -8389,11 +8388,11 @@ case "$target_os" in
aros_object_format="elf_x86_64"
aros_target_mkdep="$aros_target_mkdep -D__GNUC__ -Dx86_64"
aros_macosx_version="10.6"
aros_isa_flags="$aros_isa_flags -mcmodel=large"
aros_config_cflags="$aros_config_cflags -fno-omit-frame-pointer"
aros_config_cxxflags="$aros_config_cxxflags -fno-omit-frame-pointer"
aros_kernel_cflags="-m64"
aros_kernel_ldflags="-m64"
aros_target_cflags="-mcmodel=large"
aros_nominal_depth=8
aros_kernel_ar="ar"
aros_kernel_ar_flags="-cr"
@ -8667,7 +8666,6 @@ case "$target_os" in
aros_config_cxxflags="$aros_config_cxxflags"
aros_config_aflags="$aros_config_aflags -marm"
aros_kernel_cflags="$aros_kernel_cflags -marm"
aros_target_cflags="$aros_kernel_cflags -marm"
aros_target_mkdep="$aros_target_mkdep -Darm"
aros_arch_libs="-laeabi"
;;
@ -8681,7 +8679,6 @@ case "$target_os" in
aros_config_cxxflags="$aros_config_cxxflags"
aros_config_aflags="$aros_config_aflags -marm"
aros_kernel_cflags="$aros_kernel_cflags -marm"
aros_target_cflags="$aros_kernel_cflags -marm"
aros_target_mkdep="$aros_target_mkdep -Darm"
aros_arch_libs="-laeabi"
;;
@ -8694,7 +8691,6 @@ case "$target_os" in
aros_config_cxxflags="$aros_config_cxxflags -fno-asynchronous-unwind-tables -fno-exceptions"
aros_config_aflags="$aros_config_aflags -fno-asynchronous-unwind-tables -fno-exceptions"
aros_kernel_cflags="$aros_kernel_cflags -fno-asynchronous-unwind-tables -fno-exceptions"
aros_target_cflags="$aros_kernel_cflags -fno-asynchronous-unwind-tables -fno-exceptions"
case "$aros_target_variant" in
smp)
@ -14992,7 +14988,6 @@ fi
# Hosted Graphics Related

View File

@ -1138,7 +1138,7 @@ case "$target_os" in
need_x11=no
host_android_gfx=yes
# Disable implicit PIC mode
aros_target_cflags="$aros_target_cflags -fno-pic"
aros_config_cflags="$aros_config_cflags -fno-pic"
kernel_tool_prefix="$android_tool_prefix-"
;;
esac
@ -1241,11 +1241,11 @@ case "$target_os" in
aros_object_format="elf_x86_64"
aros_target_mkdep="$aros_target_mkdep -D__GNUC__ -Dx86_64"
aros_macosx_version="10.6"
aros_isa_flags="$aros_isa_flags -mcmodel=large"
aros_config_cflags="$aros_config_cflags -fno-omit-frame-pointer"
aros_config_cxxflags="$aros_config_cxxflags -fno-omit-frame-pointer"
aros_kernel_cflags="-m64"
aros_kernel_ldflags="-m64"
aros_target_cflags="-mcmodel=large"
aros_nominal_depth=8
aros_kernel_ar="ar"
aros_kernel_ar_flags="-cr"
@ -1519,7 +1519,6 @@ case "$target_os" in
aros_config_cxxflags="$aros_config_cxxflags"
aros_config_aflags="$aros_config_aflags -marm"
aros_kernel_cflags="$aros_kernel_cflags -marm"
aros_target_cflags="$aros_kernel_cflags -marm"
aros_target_mkdep="$aros_target_mkdep -Darm"
aros_arch_libs="-laeabi"
;;
@ -1533,7 +1532,6 @@ case "$target_os" in
aros_config_cxxflags="$aros_config_cxxflags"
aros_config_aflags="$aros_config_aflags -marm"
aros_kernel_cflags="$aros_kernel_cflags -marm"
aros_target_cflags="$aros_kernel_cflags -marm"
aros_target_mkdep="$aros_target_mkdep -Darm"
aros_arch_libs="-laeabi"
;;
@ -1546,7 +1544,6 @@ case "$target_os" in
aros_config_cxxflags="$aros_config_cxxflags -fno-asynchronous-unwind-tables -fno-exceptions"
aros_config_aflags="$aros_config_aflags -fno-asynchronous-unwind-tables -fno-exceptions"
aros_kernel_cflags="$aros_kernel_cflags -fno-asynchronous-unwind-tables -fno-exceptions"
aros_target_cflags="$aros_kernel_cflags -fno-asynchronous-unwind-tables -fno-exceptions"
case "$aros_target_variant" in
smp)
@ -2918,7 +2915,6 @@ AC_SUBST(aros_kernel_cflags)
AC_SUBST(aros_kernel_includes)
AC_SUBST(aros_kernel_objcflags)
AC_SUBST(aros_kernel_ldflags)
AC_SUBST(aros_target_cflags)
AC_SUBST(aros_debug_cflags)
AC_SUBST(aros_debug_aflags)
AC_SUBST(aros_debug_ldflags)