From a5b84b1722c04e38aeafd70bbfbad0d538bb4979 Mon Sep 17 00:00:00 2001 From: ladislas Date: Tue, 12 Aug 2014 18:11:24 +0200 Subject: [PATCH] create CPPFLAGS_STD and make both CFLAGS_STD and CPPFLAGS_STD avalaible for CFLAGS and CXXFLAGS --- Arduino.mk | 11 +++++++++-- HISTORY.md | 1 + arduino-mk-vars.md | 18 ++++++++++++++++++ 3 files changed, 28 insertions(+), 2 deletions(-) diff --git a/Arduino.mk b/Arduino.mk index d226e6e..cff4ee5 100644 --- a/Arduino.mk +++ b/Arduino.mk @@ -931,8 +931,15 @@ else $(call show_config_variable,CFLAGS_STD,[USER]) endif -CFLAGS += $(EXTRA_FLAGS) $(EXTRA_CFLAGS) -CXXFLAGS += -fno-exceptions $(EXTRA_FLAGS) $(EXTRA_CXXFLAGS) +ifndef CPPFLAGS_STD + CPPFLAGS_STD = -std=c++0x + $(call show_config_variable,CPPFLAGS_STD,[DEFAULT]) +else + $(call show_config_variable,CPPFLAGS_STD,[USER]) +endif + +CFLAGS += $(CFLAGS_STD) $(EXTRA_FLAGS) $(EXTRA_CFLAGS) +CXXFLAGS += -fno-exceptions $(CPPFLAGS_STD) $(EXTRA_FLAGS) $(EXTRA_CXXFLAGS) ASFLAGS += -x assembler-with-cpp LDFLAGS += -$(MCU_FLAG_NAME)=$(MCU) -Wl,--gc-sections -O$(OPTIMIZATION_LEVEL) $(EXTRA_FLAGS) $(EXTRA_CXXFLAGS) $(EXTRA_LDFLAGS) SIZEFLAGS ?= --mcu=$(MCU) -C diff --git a/HISTORY.md b/HISTORY.md index 113effa..de2912f 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -11,6 +11,7 @@ I tried to give credit whenever possible. If I have missed anyone, kindly add it - Fix: Make avr-g++ use CXXFLAGS instead of CFLAGS. (https://github.com/sej7278) - Add: Add information about overriding system libs (Issue #229). (https://github.com/sej7278) - Add: Add information about reporting bugs to the correct project (Issue #231). (https://github.com/sej7278) +- Fix: Create CPPFLAGS_STD variable and add CFLAGS_STD and CPPFLAGS_STD to CFLAGS and CXXFLAGS (http://github.com/ladislas) ### 1.3.4 (2014-07-12) - Tweak: Allow spaces in "Serial.begin (....)". (Issue #190) (https://github.com/pdav) diff --git a/arduino-mk-vars.md b/arduino-mk-vars.md index 28ed27f..c49f4a2 100644 --- a/arduino-mk-vars.md +++ b/arduino-mk-vars.md @@ -798,6 +798,24 @@ Defaults to `-std=gnu99` ---- +### CPPFLAGS_STD + +**Description:** + +Flags to pass to the C compiler. + +Defaults to `-std=c++0x` + +**Example:** + +```Makefile +CPPFLAGS_STD = -std=gnu++14 +``` + +**Requirement:** *Optional* + +---- + ### OVERRIDE_EXECUTABLES **Description:**