[U-Boot] [PATCH v2] config.mk: use different host compiler for OS X 10.6

Compiling tools subdirectory on Mac OS X 10.6 (Snow Leopard) complains about wrong syntax in system includes.
In file included from /usr/include/stdio.h:444, from ../source/u-boot/include/compiler.h:26, from ../source/u-boot/lib/crc32.c:15: /usr/include/secure/_stdio.h:46: error: syntax error in macro parameter list
This can be fixed by reverting the workaround for prior OS X releases in config.mk conditionally for OS X 10.6+.
Signed-off-by: Andreas Bießmann andreas.devel@googlemail.com --- config.mk | 14 +++++++++++--- 1 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/config.mk b/config.mk index 73b5195..c4ad223 100644 --- a/config.mk +++ b/config.mk @@ -64,9 +64,17 @@ HOSTSTRIP = strip #
ifeq ($(HOSTOS),darwin) -HOSTCC = cc -HOSTCFLAGS += -traditional-cpp -HOSTLDFLAGS += -multiply_defined suppress +# get major and minor product version (e.g. '10' and '6' for Snow Leopard) +DARWIN_MAJOR_VERSION = $(shell sw_vers -productVersion | cut -f 1 -d '.') +DARWIN_MINOR_VERSION = $(shell sw_vers -productVersion | cut -f 2 -d '.') + +before-snow-leopard = $(shell if [ $(DARWIN_MAJOR_VERSION) -le 10 -a \ + $(DARWIN_MINOR_VERSION) -le 5 ] ; then echo "$(1)"; else echo "$(2)"; fi ;) + +# Snow Leopards build environment has no longer restrictions as described above +HOSTCC = $(call before-snow-leopard, "cc", "gcc") +HOSTCFLAGS += $(call before-snow-leopard, "-traditional-cpp") +HOSTLDFLAGS += $(call before-snow-leopard, "-multiply_defined suppress") else HOSTCC = gcc endif

On Saturday 22 May 2010 07:17:21 Andreas Bießmann wrote:
+# get major and minor product version (e.g. '10' and '6' for Snow Leopard) +DARWIN_MAJOR_VERSION = $(shell sw_vers -productVersion | cut -f 1 -d '.') +DARWIN_MINOR_VERSION = $(shell sw_vers -productVersion | cut -f 2 -d '.')
+before-snow-leopard = $(shell if [ $(DARWIN_MAJOR_VERSION) -le 10 -a \
- $(DARWIN_MINOR_VERSION) -le 5 ] ; then echo "$(1)"; else echo "$(2)"; fi
;) + +# Snow Leopards build environment has no longer restrictions as described above +HOSTCC = $(call before-snow-leopard, "cc", "gcc") +HOSTCFLAGS += $(call before-snow-leopard, "-traditional-cpp") +HOSTLDFLAGS += $(call before-snow-leopard, "-multiply_defined suppress")
it stinks that the make language isnt more flexible, but given the limitations of it, this looks OK to me. thanks ! Acked-by: Mike Frysinger vapier@gentoo.org -mike

Dear Andreas Bießmann,
In message 1274527041-62757-1-git-send-email-andreas.devel@googlemail.com you wrote:
Compiling tools subdirectory on Mac OS X 10.6 (Snow Leopard) complains about wrong syntax in system includes.
In file included from /usr/include/stdio.h:444, from ../source/u-boot/include/compiler.h:26, from ../source/u-boot/lib/crc32.c:15: /usr/include/secure/_stdio.h:46: error: syntax error in macro parameter list
This can be fixed by reverting the workaround for prior OS X releases in config.mk conditionally for OS X 10.6+.
Signed-off-by: Andreas Bießmann andreas.devel@googlemail.com
config.mk | 14 +++++++++++--- 1 files changed, 11 insertions(+), 3 deletions(-)
Applied,t hanks.
Best regards,
Wolfgang Denk
participants (3)
-
Andreas Bießmann
-
Mike Frysinger
-
Wolfgang Denk