From b6dea15cad2736f70d2cc7169e840863c53d517d Mon Sep 17 00:00:00 2001 From: batt Date: Wed, 3 Dec 2008 11:22:54 +0000 Subject: [PATCH] Fix compiler override: now each project can have its own CC flag. git-svn-id: https://src.develer.com/svnoss/bertos/trunk@1965 38d2e660-2303-0410-9eaa-f027e97ec537 --- bertos/rules.mk | 18 +++++++++--------- examples/demo/demo.mk | 5 ++--- 2 files changed, 11 insertions(+), 12 deletions(-) diff --git a/bertos/rules.mk b/bertos/rules.mk index ff8e7d67..eed0fe50 100644 --- a/bertos/rules.mk +++ b/bertos/rules.mk @@ -140,12 +140,12 @@ ifeq ($$($(1)_DEBUG),1) $(1)_CXXFLAGS += -D_DEBUG endif -$(1)_CC = $$($(1)_CROSS)$$(CC) -$(1)_CXX = $$($(1)_CROSS)$$(CXX) -$(1)_AS = $$($(1)_CROSS)$$(AS) -$(1)_AR = $$($(1)_CROSS)$$(AR) -$(1)_OBJCOPY = $$($(1)_CROSS)$$(OBJCOPY) -$(1)_STRIP = $$($(1)_CROSS)$$(STRIP) +$(1)_CC ?= $$($(1)_CROSS)$$(CC) +$(1)_CXX ?= $$($(1)_CROSS)$$(CXX) +$(1)_AS ?= $$($(1)_CROSS)$$(AS) +$(1)_AR ?= $$($(1)_CROSS)$$(AR) +$(1)_OBJCOPY ?= $$($(1)_CROSS)$$(OBJCOPY) +$(1)_STRIP ?= $$($(1)_CROSS)$$(STRIP) $(1)_COBJ = $$(foreach file,$$($(1)_CSRC:%.c=%.o),$$(OBJDIR)/$(1)/$$(file)) $(1)_CXXOBJ = $$(foreach file,$$($(1)_CXXSRC:%.cpp=%.o),$$(OBJDIR)/$(1)/$$(file)) @@ -166,16 +166,16 @@ endif # would whine if we passed it C-only flags. Checking for the presence of # "++" in the name is a kludge that seems to work mostly. ifeq (++,$$(findstring ++,$$($(1)_CC))) - REAL_CFLAGS = $$(CXXFLAGS) + $(1)_REAL_CFLAGS = $$(CXXFLAGS) else - REAL_CFLAGS = $$(CFLAGS) + $(1)_REAL_CFLAGS = $$(CFLAGS) endif # Compile: instructions to create assembler and/or object files from C source $$($(1)_COBJ) : $$(OBJDIR)/$(1)/%.o : %.c $L "$(1): Compiling $$< (C)" @$$(MKDIR_P) $$(dir $$@) - $Q $$($(1)_CC) -c $$(REAL_CFLAGS) $$($(1)_CFLAGS) $$($(1)_CPPFLAGS) $$(CPPFLAGS) $$< -o $$@ + $Q $$($(1)_CC) -c $$($(1)_REAL_CFLAGS) $$($(1)_CFLAGS) $$($(1)_CPPFLAGS) $$(CPPFLAGS) $$< -o $$@ # Compile: instructions to create assembler and/or object files from C++ source $$($(1)_CXXOBJ) : $$(OBJDIR)/$(1)/%.o : %.cpp diff --git a/examples/demo/demo.mk b/examples/demo/demo.mk index cef81a26..cec05508 100644 --- a/examples/demo/demo.mk +++ b/examples/demo/demo.mk @@ -17,9 +17,8 @@ demo_DEBUG = 1 # Our target application TRG += demo -# FIXME: we want to use g++ for C source too -CC = g++ -CXX = g++ +#We want to use g++ for C source too +demo_CC=g++ demo_CXXSRC = \ bertos/emul/emul.cpp \ -- 2.25.1