All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH] restore CFLAGS check for conflict and fix recursive CFLAGS issue
@ 2009-09-11 15:26 Thomas Monjalon
  0 siblings, 0 replies; 3+ messages in thread
From: Thomas Monjalon @ 2009-09-11 15:26 UTC (permalink / raw)
  To: qemu-devel

cc-option uses more make-syntax to replace the shell "if/else".

Issue with recursive += is fixed by doing the first assignment
simply-expanded, as explained in
http://www.gnu.org/software/make/manual/html_node/Appending.html

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
---
 pc-bios/optionrom/Makefile |    4 ++--
 rules.mak                  |    4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/pc-bios/optionrom/Makefile b/pc-bios/optionrom/Makefile
index 78ce684..d9b6639 100644
--- a/pc-bios/optionrom/Makefile
+++ b/pc-bios/optionrom/Makefile
@@ -7,9 +7,9 @@ include $(SRC_PATH)/rules.mak
 
 VPATH=$(SRC_PATH)/pc-bios/optionrom
 
-CFLAGS = -Wall -Wstrict-prototypes -Werror -fomit-frame-pointer -fno-builtin
+CFLAGS := -Wall -Wstrict-prototypes -Werror -fomit-frame-pointer -fno-builtin
 CFLAGS += -I$(SRC_PATH)
-CFLAGS += $(call cc-option, -fno-stack-protector,"")
+CFLAGS += $(call cc-option, $(CFLAGS), -fno-stack-protector)
 QEMU_CFLAGS = $(CFLAGS)
 
 build-all: multiboot.bin
diff --git a/rules.mak b/rules.mak
index 3fdbfd3..54ac88a 100644
--- a/rules.mak
+++ b/rules.mak
@@ -21,5 +21,5 @@ quiet-command = $(if $(V),$1,$(if $(2),@echo $2 && $1, @$1))
 # cc-option
 # Usage: CFLAGS+=$(call cc-option, -falign-functions=0, -malign-functions=0)
 
-cc-option = $(shell if $(CC) $(1) -S -o /dev/null -xc /dev/null \
-              > /dev/null 2>&1; then echo "$(1)"; else echo "$(2)"; fi ;)
+cc-option = $(if $(shell $(CC) $1 $2 -S -o /dev/null -xc /dev/null \
+              >/dev/null 2>&1 && echo OK), $2, $3)
-- 
Thomas

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [Qemu-devel] [PATCH] restore CFLAGS check for conflict and fix recursive CFLAGS issue
@ 2009-09-11 16:45 Thomas Monjalon
  0 siblings, 0 replies; 3+ messages in thread
From: Thomas Monjalon @ 2009-09-11 16:45 UTC (permalink / raw)
  To: qemu-devel

cc-option uses more make-syntax to replace the shell "if/else".

Issue with recursive += is fixed by doing the first assignment
simply-expanded, as explained in
http://www.gnu.org/software/make/manual/html_node/Appending.html

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
---
 pc-bios/optionrom/Makefile |    4 ++--
 rules.mak                  |    4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/pc-bios/optionrom/Makefile b/pc-bios/optionrom/Makefile
index 78ce684..d9b6639 100644
--- a/pc-bios/optionrom/Makefile
+++ b/pc-bios/optionrom/Makefile
@@ -7,9 +7,9 @@ include $(SRC_PATH)/rules.mak
 
 VPATH=$(SRC_PATH)/pc-bios/optionrom
 
-CFLAGS = -Wall -Wstrict-prototypes -Werror -fomit-frame-pointer -fno-builtin
+CFLAGS := -Wall -Wstrict-prototypes -Werror -fomit-frame-pointer -fno-builtin
 CFLAGS += -I$(SRC_PATH)
-CFLAGS += $(call cc-option, -fno-stack-protector,"")
+CFLAGS += $(call cc-option, $(CFLAGS), -fno-stack-protector)
 QEMU_CFLAGS = $(CFLAGS)
 
 build-all: multiboot.bin
diff --git a/rules.mak b/rules.mak
index 3fdbfd3..54ac88a 100644
--- a/rules.mak
+++ b/rules.mak
@@ -21,5 +21,5 @@ quiet-command = $(if $(V),$1,$(if $(2),@echo $2 && $1, @$1))
 # cc-option
 # Usage: CFLAGS+=$(call cc-option, -falign-functions=0, -malign-functions=0)
 
-cc-option = $(shell if $(CC) $(1) -S -o /dev/null -xc /dev/null \
-              > /dev/null 2>&1; then echo "$(1)"; else echo "$(2)"; fi ;)
+cc-option = $(if $(shell $(CC) $1 $2 -S -o /dev/null -xc /dev/null \
+              >/dev/null 2>&1 && echo OK), $2, $3)
-- 
Thomas

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [Qemu-devel] [PATCH] restore CFLAGS check for conflict and fix recursive CFLAGS issue
@ 2009-09-11 16:34 Thomas Monjalon
  0 siblings, 0 replies; 3+ messages in thread
From: Thomas Monjalon @ 2009-09-11 16:34 UTC (permalink / raw)
  To: qemu-devel

cc-option uses more make-syntax to replace the shell "if/else".

Issue with recursive += is fixed by doing the first assignment
simply-expanded, as explained in
http://www.gnu.org/software/make/manual/html_node/Appending.html

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
---
 pc-bios/optionrom/Makefile |    4 ++--
 rules.mak                  |    4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/pc-bios/optionrom/Makefile b/pc-bios/optionrom/Makefile
index 78ce684..d9b6639 100644
--- a/pc-bios/optionrom/Makefile
+++ b/pc-bios/optionrom/Makefile
@@ -7,9 +7,9 @@ include $(SRC_PATH)/rules.mak
 
 VPATH=$(SRC_PATH)/pc-bios/optionrom
 
-CFLAGS = -Wall -Wstrict-prototypes -Werror -fomit-frame-pointer -fno-builtin
+CFLAGS := -Wall -Wstrict-prototypes -Werror -fomit-frame-pointer -fno-builtin
 CFLAGS += -I$(SRC_PATH)
-CFLAGS += $(call cc-option, -fno-stack-protector,"")
+CFLAGS += $(call cc-option, $(CFLAGS), -fno-stack-protector)
 QEMU_CFLAGS = $(CFLAGS)
 
 build-all: multiboot.bin
diff --git a/rules.mak b/rules.mak
index 3fdbfd3..54ac88a 100644
--- a/rules.mak
+++ b/rules.mak
@@ -21,5 +21,5 @@ quiet-command = $(if $(V),$1,$(if $(2),@echo $2 && $1, @$1))
 # cc-option
 # Usage: CFLAGS+=$(call cc-option, -falign-functions=0, -malign-functions=0)
 
-cc-option = $(shell if $(CC) $(1) -S -o /dev/null -xc /dev/null \
-              > /dev/null 2>&1; then echo "$(1)"; else echo "$(2)"; fi ;)
+cc-option = $(if $(shell $(CC) $1 $2 -S -o /dev/null -xc /dev/null \
+              >/dev/null 2>&1 && echo OK), $2, $3)
-- 
Thomas

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2009-09-11 16:45 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-09-11 15:26 [Qemu-devel] [PATCH] restore CFLAGS check for conflict and fix recursive CFLAGS issue Thomas Monjalon
2009-09-11 16:34 Thomas Monjalon
2009-09-11 16:45 Thomas Monjalon

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.