All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH] config.mk: avoid -traditional-cpp on OS X 10.5
@ 2010-08-03 23:17 Mike Frysinger
  2010-08-04 17:50 ` Andreas Bießmann
  2010-08-08 23:12 ` Wolfgang Denk
  0 siblings, 2 replies; 3+ messages in thread
From: Mike Frysinger @ 2010-08-03 23:17 UTC (permalink / raw)
  To: u-boot

Simply trying to include a basic header file like stdlib.h on OS X 10.5
and then building with -traditional-cpp fails with lots of errors like:
In file included from /usr/include/stdlib.h:63,
                 from test.c:3:
/usr/include/available.h:85: error: stray '#' in program
/usr/include/available.h:85: error: syntax error before numeric constant
/usr/include/available.h:86: error: stray '#' in program

In the past, I hadn't noticed because the old logic for these flags were
restricted to Darwin running on PowerPC systems while I'm running on an
Intel system.  But after some recent clean ups and changes, the flag was
being applied to all Darwin systems and my host tools broke.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
---
Note: i've only tested Darwin/x86 as my Darwin/ppc is having hardware
      trouble atm ... not sure when/if i'll get it fixed

 config.mk |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/config.mk b/config.mk
index bcda776..eb95093 100644
--- a/config.mk
+++ b/config.mk
@@ -68,13 +68,13 @@ ifeq ($(HOSTOS),darwin)
 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 ;)
+os_x_before	= $(shell if [ $(DARWIN_MAJOR_VERSION) -le $(1) -a \
+	$(DARWIN_MINOR_VERSION) -le $(2) ] ; then echo "$(3)"; else echo "$(4)"; 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")
+HOSTCC		 = $(call os_x_before, 10, 5, "cc", "gcc")
+HOSTCFLAGS	+= $(call os_x_before, 10, 4, "-traditional-cpp")
+HOSTLDFLAGS	+= $(call os_x_before, 10, 5, "-multiply_defined suppress")
 else
 HOSTCC		= gcc
 endif
-- 
1.7.2

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

* [U-Boot] [PATCH] config.mk: avoid -traditional-cpp on OS X 10.5
  2010-08-03 23:17 [U-Boot] [PATCH] config.mk: avoid -traditional-cpp on OS X 10.5 Mike Frysinger
@ 2010-08-04 17:50 ` Andreas Bießmann
  2010-08-08 23:12 ` Wolfgang Denk
  1 sibling, 0 replies; 3+ messages in thread
From: Andreas Bießmann @ 2010-08-04 17:50 UTC (permalink / raw)
  To: u-boot

Dear Mike Frysinger,

i have tested your patch on my old mini running 10.5.8 and it works. 

Am 04.08.2010 um 01:17 schrieb Mike Frysinger:

> Simply trying to include a basic header file like stdlib.h on OS X 10.5
> and then building with -traditional-cpp fails with lots of errors like:
> In file included from /usr/include/stdlib.h:63,
>                from test.c:3:
> /usr/include/available.h:85: error: stray '#' in program
> /usr/include/available.h:85: error: syntax error before numeric constant
> /usr/include/available.h:86: error: stray '#' in program
> 
> In the past, I hadn't noticed because the old logic for these flags were
> restricted to Darwin running on PowerPC systems while I'm running on an
> Intel system.  But after some recent clean ups and changes, the flag was
> being applied to all Darwin systems and my host tools broke.
> 
> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
> ---
> Note: i've only tested Darwin/x86 as my Darwin/ppc is having hardware
>     trouble atm ... not sure when/if i'll get it fixed
> 
> config.mk |   10 +++++-----
> 1 files changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/config.mk b/config.mk
> index bcda776..eb95093 100644
> --- a/config.mk
> +++ b/config.mk
> @@ -68,13 +68,13 @@ ifeq ($(HOSTOS),darwin)
> 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 ;)
> +os_x_before	= $(shell if [ $(DARWIN_MAJOR_VERSION) -le $(1) -a \
> +	$(DARWIN_MINOR_VERSION) -le $(2) ] ; then echo "$(3)"; else echo "$(4)"; 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")
> +HOSTCC		 = $(call os_x_before, 10, 5, "cc", "gcc")
> +HOSTCFLAGS	+= $(call os_x_before, 10, 4, "-traditional-cpp")
> +HOSTLDFLAGS	+= $(call os_x_before, 10, 5, "-multiply_defined suppress")

I figured out that I can even switch to gcc on that box:

---8<---
$ gcc --version
powerpc-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1 (Apple Inc. build 5490)
Copyright (C) 2005 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
--->8---

Therefore your patch could be simplified by switching from 'before-snow-leopard' to 'before-leopard' logic. Nevertheless i like the os_x_before macro more than the first solution.

regards

Andreas Bie?mann

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

* [U-Boot] [PATCH] config.mk: avoid -traditional-cpp on OS X 10.5
  2010-08-03 23:17 [U-Boot] [PATCH] config.mk: avoid -traditional-cpp on OS X 10.5 Mike Frysinger
  2010-08-04 17:50 ` Andreas Bießmann
@ 2010-08-08 23:12 ` Wolfgang Denk
  1 sibling, 0 replies; 3+ messages in thread
From: Wolfgang Denk @ 2010-08-08 23:12 UTC (permalink / raw)
  To: u-boot

Dear Mike Frysinger,

In message <1280877458-20990-1-git-send-email-vapier@gentoo.org> you wrote:
> Simply trying to include a basic header file like stdlib.h on OS X 10.5
> and then building with -traditional-cpp fails with lots of errors like:
> In file included from /usr/include/stdlib.h:63,
>                  from test.c:3:
> /usr/include/available.h:85: error: stray '#' in program
> /usr/include/available.h:85: error: syntax error before numeric constant
> /usr/include/available.h:86: error: stray '#' in program
> 
> In the past, I hadn't noticed because the old logic for these flags were
> restricted to Darwin running on PowerPC systems while I'm running on an
> Intel system.  But after some recent clean ups and changes, the flag was
> being applied to all Darwin systems and my host tools broke.
> 
> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
> ---
> Note: i've only tested Darwin/x86 as my Darwin/ppc is having hardware
>       trouble atm ... not sure when/if i'll get it fixed
> 
>  config.mk |   10 +++++-----
>  1 files changed, 5 insertions(+), 5 deletions(-)

Applied, thanks.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Any sufficiently advanced technology is indistinguishable from magic.
Clarke's Third Law       - _Profiles of the Future_ (1962; rev. 1973)
                  ``Hazards of Prophecy: The Failure of Imagination''

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

end of thread, other threads:[~2010-08-08 23:12 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-08-03 23:17 [U-Boot] [PATCH] config.mk: avoid -traditional-cpp on OS X 10.5 Mike Frysinger
2010-08-04 17:50 ` Andreas Bießmann
2010-08-08 23:12 ` Wolfgang Denk

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.