diff mbox

[1/2] Remove CFLAGS parameter in cc-option

Message ID 524d68ff85692c828b714ecf4dfdca248bb52f38.1251672463.git.quintela@redhat.com
State Superseded
Headers show

Commit Message

Juan Quintela Aug. 30, 2009, 10:48 p.m. UTC
With cc-option we are testing if gcc just accept a particular option, we don't need CFLAGS at all.  And this fixes the recursive problem with CFLAGS

Signed-off-by: Juan Quintela <quintela@redhat.com>
---
 pc-bios/optionrom/Makefile |    2 +-
 rules.mak                  |    6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

Comments

Paolo Bonzini Aug. 31, 2009, 6:54 a.m. UTC | #1
On 08/31/2009 12:48 AM, Juan Quintela wrote:
> With cc-option we are testing if gcc just accept a particular option, we don't need CFLAGS at all.

ACK, however these should IMO be moved to configure.  This:

> CFLAGS += $(call cc-option, -fno-stack-protector,"")

is likely responsible of at least 20% system time to the compilation 
(because one normal compilation costs three forks for gcc+cc1+as, and 
cc-option costs two more for gcc+cc1).

Paolo
diff mbox

Patch

diff --git a/pc-bios/optionrom/Makefile b/pc-bios/optionrom/Makefile
index 0fbd3ab..097bcf4 100644
--- a/pc-bios/optionrom/Makefile
+++ b/pc-bios/optionrom/Makefile
@@ -9,7 +9,7 @@  VPATH=$(SRC_PATH)/pc-bios/optionrom

 CFLAGS = -Wall -Wstrict-prototypes -Werror -fomit-frame-pointer -fno-builtin
 CFLAGS += -I$(SRC_PATH)
-CFLAGS += $(call cc-option, $(CFLAGS), -fno-stack-protector,"")
+CFLAGS += $(call cc-option, -fno-stack-protector,"")

 build-all: multiboot.bin

diff --git a/rules.mak b/rules.mak
index c0315ac..3fdbfd3 100644
--- a/rules.mak
+++ b/rules.mak
@@ -19,7 +19,7 @@  LINK = $(call quiet-command,$(CC) $(LDFLAGS) -o $@ $(1) $(ARLIBS_BEGIN) $(ARLIBS
 quiet-command = $(if $(V),$1,$(if $(2),@echo $2 && $1, @$1))

 # cc-option
-# Usage: CFLAGS+=$(call cc-option, $(CFLAGS), -falign-functions=0, -malign-functions=0)
+# Usage: CFLAGS+=$(call cc-option, -falign-functions=0, -malign-functions=0)

-cc-option = $(shell if $(CC) $(1) $(2) -S -o /dev/null -xc /dev/null \
-              > /dev/null 2>&1; then echo "$(2)"; else echo "$(3)"; fi ;)
+cc-option = $(shell if $(CC) $(1) -S -o /dev/null -xc /dev/null \
+              > /dev/null 2>&1; then echo "$(1)"; else echo "$(2)"; fi ;)