summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--solenv/gbuild/CppunitTest.mk4
-rw-r--r--solenv/gbuild/Executable.mk4
-rw-r--r--solenv/gbuild/Library.mk4
-rw-r--r--solenv/gbuild/LinkTarget.mk96
-rw-r--r--solenv/gbuild/StaticLibrary.mk4
-rw-r--r--solenv/gbuild/platform/linux.mk6
-rw-r--r--solenv/gbuild/platform/macosx.mk9
-rw-r--r--solenv/gbuild/platform/solaris.mk6
-rw-r--r--solenv/gbuild/platform/windows.mk10
-rw-r--r--solenv/gbuild/platform/winmingw.mk10
-rw-r--r--solenv/gbuild/templates/Executable.mk6
11 files changed, 110 insertions, 49 deletions
diff --git a/solenv/gbuild/CppunitTest.mk b/solenv/gbuild/CppunitTest.mk
index 253d3b9c41b7..2b93f96462bc 100644
--- a/solenv/gbuild/CppunitTest.mk
+++ b/solenv/gbuild/CppunitTest.mk
@@ -81,9 +81,13 @@ $(eval $(foreach method,\
add_objcxxobjects \
add_exception_objects \
add_noexception_objects \
+ add_cflags \
set_cflags \
+ add_cxxflags \
set_cxxflags \
+ add_objcxxflags \
set_objcxxflags \
+ add_defs \
set_defs \
set_include \
set_ldflags \
diff --git a/solenv/gbuild/Executable.mk b/solenv/gbuild/Executable.mk
index d90a14caa9da..9209625b1f29 100644
--- a/solenv/gbuild/Executable.mk
+++ b/solenv/gbuild/Executable.mk
@@ -72,9 +72,13 @@ $(eval $(foreach method,\
add_exception_objects \
add_noexception_objects \
add_generated_exception_objects \
+ add_cflags \
set_cflags \
+ add_cxxflags \
set_cxxflags \
+ add_objcxxflags \
set_objcxxflags \
+ add_defs \
set_defs \
set_include \
set_ldflags \
diff --git a/solenv/gbuild/Library.mk b/solenv/gbuild/Library.mk
index 357e7b60a8cc..09e35d85747b 100644
--- a/solenv/gbuild/Library.mk
+++ b/solenv/gbuild/Library.mk
@@ -115,9 +115,13 @@ $(eval $(foreach method,\
add_exception_objects \
add_noexception_objects \
add_generated_exception_objects \
+ add_cflags \
set_cflags \
+ add_cxxflags \
set_cxxflags \
+ add_objcxxflags \
set_objcxxflags \
+ add_defs \
set_defs \
set_include \
set_ldflags \
diff --git a/solenv/gbuild/LinkTarget.mk b/solenv/gbuild/LinkTarget.mk
index 1b0575dd282a..9c8acf681d9a 100644
--- a/solenv/gbuild/LinkTarget.mk
+++ b/solenv/gbuild/LinkTarget.mk
@@ -98,8 +98,8 @@ gb_CxxObject__command_dep =
endif
# Only enable PCH if the PCH_CXXFLAGS and the PCH_DEFS (from the linktarget)
-# are the same as the CXXFLAGS and DEFS we want to use for this object. This
-# should usually be the case. The DEFS/CXXFLAGS would have too be manually
+# are the same as the T_CXXFLAGS and DEFS we want to use for this object. This
+# should usually be the case. The DEFS/T_CXXFLAGS would have too be manually
# overridden for one object file for them to differ. PCH_CXXFLAGS/PCH_DEFS
# should never be overridden on an object -- they should be the same as for the
# whole linktarget. In general it should be cleaner to use a static library
@@ -108,16 +108,16 @@ endif
define gb_CxxObject__set_pchflags
ifeq ($(gb_ENABLE_PCH),$(true))
ifneq ($(strip $$(PCH_NAME)),)
-ifeq ($$(sort $$(PCH_CXXFLAGS) $$(PCH_DEFS) $$(gb_LinkTarget_EXCEPTIONFLAGS)),$$(sort $$(CXXFLAGS) $$(DEFS)))
+ifeq ($$(sort $$(PCH_CXXFLAGS) $$(PCH_DEFS) $$(gb_LinkTarget_EXCEPTIONFLAGS)),$$(sort $$(T_CXXFLAGS) $$(DEFS)))
$$@ : PCHFLAGS := $$(call gb_PrecompiledHeader_get_enableflags,$$(PCH_NAME))
else
-ifeq ($$(sort $$(PCH_CXXFLAGS) $$(PCH_DEFS) $$(gb_LinkTarget_NOEXCEPTIONFLAGS)),$$(sort $$(CXXFLAGS) $$(DEFS)))
+ifeq ($$(sort $$(PCH_CXXFLAGS) $$(PCH_DEFS) $$(gb_LinkTarget_NOEXCEPTIONFLAGS)),$$(sort $$(T_CXXFLAGS) $$(DEFS)))
$$@ : PCHFLAGS := $$(call gb_NoexPrecompiledHeader_get_enableflags,$$(PCH_NAME))
else
$$(info No precompiled header available for $$*.)
$$(info precompiled header flags ( ex) : $$(sort $$(PCH_CXXFLAGS) $$(PCH_DEFS) $$(gb_LinkTarget_EXCEPTIONFLAGS)))
$$(info precompiled header flags (noex) : $$(sort $$(PCH_CXXFLAGS) $$(PCH_DEFS) $$(gb_LinkTarget_NOEXCEPTIONFLAGS)))
-$$(info . object flags : $$(sort $$(CXXFLAGS) $$(DEFS)))
+$$(info . object flags : $$(sort $$(T_CXXFLAGS) $$(DEFS)))
$$@ : PCHFLAGS :=
endif
endif
@@ -225,9 +225,6 @@ gb_ObjCxxObject_ObjCxxObject =
# LinkTarget class
-# need an alias for global CXXFLAGS in gb_LinkTarget_add_exception_object etc.
-gb_CXXFLAGS_TOO := $(CXXFLAGS)
-
gb_LinkTarget_DEFAULTDEFS := $(gb_GLOBALDEFS)
# defined by platform
# gb_LinkTarget_CXXFLAGS
@@ -341,12 +338,9 @@ $(call gb_LinkTarget_get_headers_target,%) : $(call gb_LinkTarget_get_external_h
# linktarget. This for example means that you cannot build a single object
# alone, because then you would directly depend on the object.
#
-# A note about flags: here the global variable CFLAGS is overridden by a target
-# local variable of the same name. The $(CFLAGS) on the rhs refers to the
-# global variable. (same thing for OBJCXXFLAGS)
-# CXXFLAGS is slightly different, because it is not set at the link target,
-# but only when using gb_LinkTarget_add_{no,}exception_object etc., to
-# provide a mechanism that disables optimization for a specific file.
+# A note about flags: because the overriding the global variables with a target
+# local variable of the same name is considered obscure, the target local
+# variables have a T_ prefix.
define gb_LinkTarget_LinkTarget
$(call gb_LinkTarget_get_clean_target,$(1)) : AUXTARGETS :=
$(call gb_LinkTarget_get_external_headers_target,$(1)) : SELF := $(1)
@@ -360,12 +354,12 @@ $(call gb_LinkTarget_get_target,$(1)) : OBJCXXOBJECTS :=
$(call gb_LinkTarget_get_clean_target,$(1)) \
$(call gb_LinkTarget_get_target,$(1)) : GENCXXOBJECTS :=
$(call gb_LinkTarget_get_headers_target,$(1)) \
-$(call gb_LinkTarget_get_target,$(1)) : override CFLAGS := $$(gb_LinkTarget_CFLAGS) $(CFLAGS)
+$(call gb_LinkTarget_get_target,$(1)) : T_CFLAGS := $$(gb_LinkTarget_CFLAGS) $(CFLAGS)
$(call gb_LinkTarget_get_headers_target,$(1)) \
-$(call gb_LinkTarget_get_target,$(1)) : override CXXFLAGS := $$(gb_LinkTarget_CXXFLAGS)
+$(call gb_LinkTarget_get_target,$(1)) : T_CXXFLAGS := $$(gb_LinkTarget_CXXFLAGS)
$(call gb_LinkTarget_get_headers_target,$(1)) \
$(call gb_LinkTarget_get_target,$(1)) : PCH_CXXFLAGS := $$(gb_LinkTarget_CXXFLAGS) $(CXXFLAGS)
-$(call gb_LinkTarget_get_target,$(1)) : override OBJCXXFLAGS := $$(gb_LinkTarget_OBJCXXFLAGS) $(OBJCXXFLAGS)
+$(call gb_LinkTarget_get_target,$(1)) : T_OBJCXXFLAGS := $$(gb_LinkTarget_OBJCXXFLAGS) $(OBJCXXFLAGS)
$(call gb_LinkTarget_get_headers_target,$(1)) \
$(call gb_LinkTarget_get_target,$(1)) : DEFS := $$(gb_LinkTarget_DEFAULTDEFS)
$(call gb_LinkTarget_get_headers_target,$(1)) \
@@ -396,10 +390,10 @@ $(call gb_LinkTarget_get_dep_target,$(1)) : COBJECTS :=
$(call gb_LinkTarget_get_dep_target,$(1)) : CXXOBJECTS :=
$(call gb_LinkTarget_get_dep_target,$(1)) : OBJCXXOBJECTS :=
$(call gb_LinkTarget_get_dep_target,$(1)) : GENCXXOBJECTS :=
-$(call gb_LinkTarget_get_dep_target,$(1)) : override CFLAGS := $$(gb_LinkTarget_CFLAGS) $(CFLAGS)
-$(call gb_LinkTarget_get_dep_target,$(1)) : override CXXFLAGS := $$(gb_LinkTarget_CXXFLAGS)
+$(call gb_LinkTarget_get_dep_target,$(1)) : T_CFLAGS := $$(gb_LinkTarget_CFLAGS) $(CFLAGS)
+$(call gb_LinkTarget_get_dep_target,$(1)) : T_CXXFLAGS := $$(gb_LinkTarget_CXXFLAGS)
$(call gb_LinkTarget_get_dep_target,$(1)) : PCH_CXXFLAGS := $$(gb_LinkTarget_CXXFLAGS) $(CXXFLAGS)
-$(call gb_LinkTarget_get_dep_target,$(1)) : override OBJCXXFLAGS := $$(gb_LinkTarget_OBJCXXFLAGS) $(OBJCXXFLAGS)
+$(call gb_LinkTarget_get_dep_target,$(1)) : T_OBJCXXFLAGS := $$(gb_LinkTarget_OBJCXXFLAGS) $(OBJCXXFLAGS)
$(call gb_LinkTarget_get_dep_target,$(1)) : DEFS := $$(gb_LinkTarget_DEFAULTDEFS)
$(call gb_LinkTarget_get_dep_target,$(1)) : PCH_DEFS := $$(gb_LinkTarget_DEFAULTDEFS)
$(call gb_LinkTarget_get_dep_target,$(1)) : INCLUDE := $$(gb_LinkTarget_INCLUDE)
@@ -410,6 +404,17 @@ endif
endef
+define gb_LinkTarget_add_defs
+$(call gb_LinkTarget_get_headers_target,$(1)) \
+$(call gb_LinkTarget_get_target,$(1)) : DEFS += $(2)
+$(call gb_LinkTarget_get_headers_target,$(1)) \
+$(call gb_LinkTarget_get_target,$(1)) : PCH_DEFS += $(2)
+ifeq ($(gb_FULLDEPS),$(true))
+$(call gb_LinkTarget_get_dep_target,$(1)) : DEFS += $(2)
+$(call gb_LinkTarget_get_dep_target,$(1)) : PCH_DEFS += $(2)
+endif
+endef
+
define gb_LinkTarget_set_defs
$(call gb_LinkTarget_get_headers_target,$(1)) \
$(call gb_LinkTarget_get_target,$(1)) : DEFS := $(2)
@@ -423,30 +428,57 @@ endif
endef
+define gb_LinkTarget_add_cflags
+$(call gb_LinkTarget_get_target,$(1)) : T_CFLAGS += $(2)
+ifeq ($(gb_FULLDEPS),$(true))
+$(call gb_LinkTarget_get_dep_target,$(1)) : T_CFLAGS += $(2)
+endif
+
+endef
+
define gb_LinkTarget_set_cflags
-$(call gb_LinkTarget_get_target,$(1)) : override CFLAGS := $(2)
+$(call gb_LinkTarget_get_target,$(1)) : T_CFLAGS := $(2)
ifeq ($(gb_FULLDEPS),$(true))
-$(call gb_LinkTarget_get_dep_target,$(1)) : override CFLAGS := $(2)
+$(call gb_LinkTarget_get_dep_target,$(1)) : T_CFLAGS := $(2)
endif
endef
+define gb_LinkTarget_add_cxxflags
+$(call gb_LinkTarget_get_headers_target,$(1)) \
+$(call gb_LinkTarget_get_target,$(1)) : T_CXXFLAGS += $(2)
+$(call gb_LinkTarget_get_headers_target,$(1)) \
+$(call gb_LinkTarget_get_target,$(1)) : PCH_CXXFLAGS += $(2)
+ifeq ($(gb_FULLDEPS),$(true))
+$(call gb_LinkTarget_get_dep_target,$(1)) : T_CXXFLAGS += $(2)
+$(call gb_LinkTarget_get_dep_target,$(1)) : PCH_CXXFLAGS += $(2)
+endif
+endef
+
+# maybe should deprecate this...
define gb_LinkTarget_set_cxxflags
$(call gb_LinkTarget_get_headers_target,$(1)) \
-$(call gb_LinkTarget_get_target,$(1)) : override CXXFLAGS := $(2)
+$(call gb_LinkTarget_get_target,$(1)) : T_CXXFLAGS := $(2)
$(call gb_LinkTarget_get_headers_target,$(1)) \
$(call gb_LinkTarget_get_target,$(1)) : PCH_CXXFLAGS := $(2)
ifeq ($(gb_FULLDEPS),$(true))
-$(call gb_LinkTarget_get_dep_target,$(1)) : override CXXFLAGS := $(2)
+$(call gb_LinkTarget_get_dep_target,$(1)) : T_CXXFLAGS := $(2)
$(call gb_LinkTarget_get_dep_target,$(1)) : PCH_CXXFLAGS := $(2)
endif
endef
+define gb_LinkTarget_add_objcxxflags
+$(call gb_LinkTarget_get_target,$(1)) : T_OBJCXXFLAGS += $(2)
+ifeq ($(gb_FULLDEPS),$(true))
+$(call gb_LinkTarget_get_dep_target,$(1)) : T_OBJCXXFLAGS += $(2)
+endif
+endef
+
define gb_LinkTarget_set_objcxxflags
-$(call gb_LinkTarget_get_target,$(1)) : override OBJCXXFLAGS := $(2)
+$(call gb_LinkTarget_get_target,$(1)) : T_OBJCXXFLAGS := $(2)
ifeq ($(gb_FULLDEPS),$(true))
-$(call gb_LinkTarget_get_dep_target,$(1)) : override OBJCXXFLAGS := $(2)
+$(call gb_LinkTarget_get_dep_target,$(1)) : T_OBJCXXFLAGS := $(2)
endif
endef
@@ -511,7 +543,7 @@ $(call gb_LinkTarget_get_clean_target,$(1)) : COBJECTS += $(2)
$(call gb_LinkTarget_get_target,$(1)) : $(call gb_CObject_get_target,$(2))
$(call gb_CObject_get_target,$(2)) : | $(call gb_LinkTarget_get_headers_target,$(1))
-$(call gb_CObject_get_target,$(2)) : override CFLAGS += $(3)
+$(call gb_CObject_get_target,$(2)) : T_CFLAGS += $(3)
ifeq ($(gb_FULLDEPS),$(true))
$(call gb_LinkTarget_get_dep_target,$(1)) : COBJECTS += $(2)
@@ -526,7 +558,7 @@ $(call gb_LinkTarget_get_clean_target,$(1)) : CXXOBJECTS += $(2)
$(call gb_LinkTarget_get_target,$(1)) : $(call gb_CxxObject_get_target,$(2))
$(call gb_CxxObject_get_target,$(2)) : | $(call gb_LinkTarget_get_headers_target,$(1))
-$(call gb_CxxObject_get_target,$(2)) : override CXXFLAGS += $(3)
+$(call gb_CxxObject_get_target,$(2)) : T_CXXFLAGS += $(3)
ifeq ($(gb_FULLDEPS),$(true))
$(call gb_LinkTarget_get_dep_target,$(1)) : CXXOBJECTS += $(2)
@@ -541,7 +573,7 @@ $(call gb_LinkTarget_get_clean_target,$(1)) : OBJCXXOBJECTS += $(2)
$(call gb_LinkTarget_get_target,$(1)) : $(call gb_ObjCxxObject_get_target,$(2))
$(call gb_ObjCxxObject_get_target,$(2)) : | $(call gb_LinkTarget_get_headers_target,$(1))
-$(call gb_ObjCxxObject_get_target,$(2)) : override OBJCXXFLAGS += $(3)
+$(call gb_ObjCxxObject_get_target,$(2)) : T_OBJCXXFLAGS += $(3)
ifeq ($(gb_FULLDEPS),$(true))
$(call gb_LinkTarget_get_dep_target,$(1)) : OBJCXXOBJECTS += $(2)
@@ -556,7 +588,7 @@ $(call gb_LinkTarget_get_clean_target,$(1)) : GENCXXOBJECTS += $(2)
$(call gb_LinkTarget_get_target,$(1)) : $(call gb_GenCxxObject_get_target,$(2))
$(call gb_GenCxxObject_get_source,$(2)) : | $(call gb_LinkTarget_get_headers_target,$(1))
-$(call gb_GenCxxObject_get_target,$(2)) : override CXXFLAGS += $(3) $(gb_CXXFLAGS_TOO)
+$(call gb_GenCxxObject_get_target,$(2)) : T_CXXFLAGS += $(3) $(CXXFLAGS)
ifeq ($(gb_FULLDEPS),$(true))
$(call gb_LinkTarget_get_dep_target,$(1)) : GENCXXOBJECTS += $(2)
@@ -566,11 +598,11 @@ endif
endef
define gb_LinkTarget_add_noexception_object
-$(call gb_LinkTarget_add_cxxobject,$(1),$(2),$(gb_LinkTarget_NOEXCEPTIONFLAGS) $(gb_CXXFLAGS_TOO))
+$(call gb_LinkTarget_add_cxxobject,$(1),$(2),$(gb_LinkTarget_NOEXCEPTIONFLAGS) $(CXXFLAGS))
endef
define gb_LinkTarget_add_exception_object
-$(call gb_LinkTarget_add_cxxobject,$(1),$(2),$(gb_LinkTarget_EXCEPTIONFLAGS) $(gb_CXXFLAGS_TOO))
+$(call gb_LinkTarget_add_cxxobject,$(1),$(2),$(gb_LinkTarget_EXCEPTIONFLAGS) $(CXXFLAGS))
endef
define gb_LinkTarget_add_cobjects
diff --git a/solenv/gbuild/StaticLibrary.mk b/solenv/gbuild/StaticLibrary.mk
index a2521bc4d242..74da27d7579e 100644
--- a/solenv/gbuild/StaticLibrary.mk
+++ b/solenv/gbuild/StaticLibrary.mk
@@ -90,9 +90,13 @@ $(eval $(foreach method,\
add_exception_objects \
add_noexception_objects \
add_generated_exception_objects \
+ add_cflags \
set_cflags \
+ add_cxxflags \
set_cxxflags \
+ add_objcxxflags \
set_objcxxflags \
+ add_defs \
set_defs \
set_include \
set_ldflags \
diff --git a/solenv/gbuild/platform/linux.mk b/solenv/gbuild/platform/linux.mk
index 92c448ecd38f..b00a680d06c6 100644
--- a/solenv/gbuild/platform/linux.mk
+++ b/solenv/gbuild/platform/linux.mk
@@ -170,7 +170,8 @@ $(call gb_Helper_abbreviate_dirs,\
mkdir -p $(dir $(1)) && \
mkdir -p $(dir $(call gb_CObject_get_dep_target,$(2))) && \
$(gb_CC) \
- $(DEFS) $(CFLAGS) \
+ $(DEFS) \
+ $(T_CFLAGS) \
-c $(3) \
-o $(1) \
-MMD -MT $(call gb_CObject_get_target,$(2)) \
@@ -188,7 +189,8 @@ $(call gb_Helper_abbreviate_dirs,\
mkdir -p $(dir $(1)) && \
mkdir -p $(dir $(call gb_CxxObject_get_dep_target,$(2))) && \
$(gb_CXX) \
- $(DEFS) $(CXXFLAGS) \
+ $(DEFS) \
+ $(T_CXXFLAGS) \
-c $(3) \
-o $(1) \
-MMD -MT $(call gb_CxxObject_get_target,$(2)) \
diff --git a/solenv/gbuild/platform/macosx.mk b/solenv/gbuild/platform/macosx.mk
index e0b601f22e39..1f5b986e2be7 100644
--- a/solenv/gbuild/platform/macosx.mk
+++ b/solenv/gbuild/platform/macosx.mk
@@ -160,7 +160,8 @@ $(call gb_Helper_abbreviate_dirs,\
mkdir -p $(dir $(1)) && \
mkdir -p $(dir $(call gb_CObject_get_dep_target,$(2))) && \
$(gb_CC) \
- $(DEFS) $(CFLAGS) \
+ $(DEFS) \
+ $(T_CFLAGS) \
-c $(3) \
-o $(1) \
-MMD -MT $(call gb_CObject_get_target,$(2)) \
@@ -179,7 +180,8 @@ $(call gb_Helper_abbreviate_dirs,\
mkdir -p $(dir $(1)) && \
mkdir -p $(dir $(call gb_CxxObject_get_dep_target,$(2))) && \
$(gb_CXX) \
- $(DEFS) $(CXXFLAGS) \
+ $(DEFS) \
+ $(T_CXXFLAGS) \
-c $(3) \
-o $(1) \
-MMD -MT $(call gb_CxxObject_get_target,$(2)) \
@@ -197,7 +199,8 @@ $(call gb_Helper_abbreviate_dirs,\
mkdir -p $(dir $(1)) && \
mkdir -p $(dir $(call gb_ObjCxxObject_get_dep_target,$(2))) && \
$(gb_CXX) \
- $(DEFS) $(OBJCXXFLAGS) \
+ $(DEFS) \
+ $(T_OBJCXXFLAGS) \
-c $(3) \
-o $(1) \
-MMD -MT $(call gb_ObjCxxObject_get_target,$(2)) \
diff --git a/solenv/gbuild/platform/solaris.mk b/solenv/gbuild/platform/solaris.mk
index eb54e0647daf..b32809a22f1c 100644
--- a/solenv/gbuild/platform/solaris.mk
+++ b/solenv/gbuild/platform/solaris.mk
@@ -152,7 +152,8 @@ $(call gb_Helper_abbreviate_dirs,\
-o $(1) \
-xMMD \
-xMF $(call gb_CObject_get_dep_target,$(2)) \
- $(DEFS) $(CFLAGS) \
+ $(DEFS) \
+ $(T_CFLAGS) \
-I$(dir $(3)) \
$(INCLUDE))
endef
@@ -166,7 +167,8 @@ $(call gb_Helper_abbreviate_dirs,\
mkdir -p $(dir $(1)) && \
mkdir -p $(dir $(call gb_CxxObject_get_dep_target,$(2))) && \
$(gb_CXX) \
- $(DEFS) $(CXXFLAGS) \
+ $(DEFS) \
+ $(T_CXXFLAGS) \
-c $(3) \
-o $(1) \
-xMMD \
diff --git a/solenv/gbuild/platform/windows.mk b/solenv/gbuild/platform/windows.mk
index 58b9004774f0..b3b5db8f28f5 100644
--- a/solenv/gbuild/platform/windows.mk
+++ b/solenv/gbuild/platform/windows.mk
@@ -271,13 +271,15 @@ $(call gb_Helper_abbreviate_dirs_native,\
mkdir -p $(dir $(1)) && \
unset INCLUDE && \
$(gb_CC) \
- $(DEFS) $(CFLAGS) -Fd$(PDBFILE) \
+ $(DEFS) \
+ $(T_CFLAGS) \
+ -Fd$(PDBFILE) \
$(PCHFLAGS) \
-I$(dir $(3)) \
$(INCLUDE) \
-c $(3) \
-Fo$(1))
-$(call gb_CObject__command_deponcompile,$(1),$(2),$(3),$(DEFS),$(CFLAGS),$(INCLUDE))
+$(call gb_CObject__command_deponcompile,$(1),$(2),$(3),$(DEFS),$(T_CFLAGS),$(INCLUDE))
endef
@@ -310,7 +312,9 @@ $(call gb_Helper_abbreviate_dirs_native,\
mkdir -p $(dir $(1)) && \
unset INCLUDE && \
$(gb_CXX) \
- $(DEFS) $(CXXFLAGS) -Fd$(PDBFILE)\
+ $(DEFS) \
+ $(T_CXXFLAGS) \
+ -Fd$(PDBFILE) \
$(PCHFLAGS) \
-I$(dir $(3)) \
$(INCLUDE_STL) $(INCLUDE) \
diff --git a/solenv/gbuild/platform/winmingw.mk b/solenv/gbuild/platform/winmingw.mk
index beca3a1ea633..d083d0945a79 100644
--- a/solenv/gbuild/platform/winmingw.mk
+++ b/solenv/gbuild/platform/winmingw.mk
@@ -239,12 +239,13 @@ $(call gb_Output_announce,$(2),$(true),C ,3)
$(call gb_Helper_abbreviate_dirs_native,\
mkdir -p $(dir $(1)) && \
$(gb_CC) \
- $(DEFS) $(CFLAGS) \
+ $(DEFS) \
+ $(T_CFLAGS) \
-c $(3) \
-o $(1) \
-I$(dir $(3)) \
$(INCLUDE))
-$(call gb_CObject__command_deponcompile,$(1),$(2),$(3),$(DEFS),$(CFLAGS),$(INCLUDE))
+$(call gb_CObject__command_deponcompile,$(1),$(2),$(3),$(DEFS),$(T_CFLAGS),$(INCLUDE))
endef
@@ -277,12 +278,13 @@ $(call gb_Output_announce,$(2),$(true),CXX,3)
$(call gb_Helper_abbreviate_dirs_native,\
mkdir -p $(dir $(1)) && \
$(gb_CXX) \
- $(DEFS) $(CXXFLAGS) \
+ $(DEFS) \
+ $(T_CXXFLAGS) \
-c $(3) \
-o $(1) \
-I$(dir $(3)) \
$(INCLUDE_STL) $(INCLUDE))
-$(call gb_CxxObject__command_deponcompile,$(1),$(2),$(3),$(DEFS),$(CXXFLAGS),$(INCLUDE_STL) $(INCLUDE))
+$(call gb_CxxObject__command_deponcompile,$(1),$(2),$(3),$(DEFS),$(T_CXXFLAGS),$(INCLUDE_STL) $(INCLUDE))
endef
diff --git a/solenv/gbuild/templates/Executable.mk b/solenv/gbuild/templates/Executable.mk
index 691e53012d58..157233aca028 100644
--- a/solenv/gbuild/templates/Executable.mk
+++ b/solenv/gbuild/templates/Executable.mk
@@ -31,9 +31,9 @@ $(eval $(call gb_Executable_set_include,EXEC,\
$$(INCLUDE) \
))
-$(eval $(call gb_Executable_set_cxxflags,EXEC,\
- $$(CXXFLAGS) \
-))
+#$(eval $(call gb_Executable_add_defs,EXEC,\
+# -Dfoo \
+#))
$(eval $(call gb_Executable_add_linked_libs,EXEC,\
$(gb_STDLIBS) \