Message ID | 1322170576-50858-1-git-send-email-andreas.devel@googlemail.com |
---|---|
State | Accepted |
Commit | 6f26185435fa196ab6ca605575fc880d2d0b3e27 |
Headers | show |
> OS X Lion's c-library implements getline(), therefore prevent including the > old helper implementation for __DARWIN_C_LEVEL < 200809L. > > Without this patch following error occours: > > ---8<--- > In file included from os_support.h:32, > from img2srec.c:55: > getline.h:1: error: conflicting types for ‘getline’ > /usr/include/stdio.h:449: error: previous declaration of ‘getline’ was > here > --->8--- > > Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com> > --- > total: 0 errors, 0 warnings, 15 lines checked > > NOTE: Ignored message types: COMPLEX_MACRO CONSIDER_KSTRTO MINMAX > MULTISTATEMENT_MACRO_USE_DO_WHILE > > 0001-tools-os_support-add-OS-X-Lion-support.patch has no obvious style > problems and is ready for submission. > > tools/os_support.c | 2 +- > tools/os_support.h | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/tools/os_support.c b/tools/os_support.c > index 1ed89e6..319c0fe 100644 > --- a/tools/os_support.c > +++ b/tools/os_support.c > @@ -23,6 +23,6 @@ > #ifdef __MINGW32__ > #include "mingw_support.c" > #endif > -#ifdef __APPLE__ > +#if defined(__APPLE__) && __DARWIN_C_LEVEL < 200809L > #include "getline.c" > #endif > diff --git a/tools/os_support.h b/tools/os_support.h > index 7dcbee4..5bf7add 100644 > --- a/tools/os_support.h > +++ b/tools/os_support.h > @@ -28,7 +28,7 @@ > #include "mingw_support.h" > #endif > > -#ifdef __APPLE__ > +#if defined(__APPLE__) && __DARWIN_C_LEVEL < 200809L > #include "getline.h" > #endif Acked-by: Marek Vasut <marek.vasut@gmail.com>
> > OS X Lion's c-library implements getline(), therefore prevent including > > the old helper implementation for __DARWIN_C_LEVEL < 200809L. > > > > Without this patch following error occours: > > > > ---8<--- > > In file included from os_support.h:32, > > > > from img2srec.c:55: > > getline.h:1: error: conflicting types for ‘getline’ > > /usr/include/stdio.h:449: error: previous declaration of ‘getline’ was > > here > > --->8--- > > > > Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com> > > --- > > total: 0 errors, 0 warnings, 15 lines checked > > > > NOTE: Ignored message types: COMPLEX_MACRO CONSIDER_KSTRTO MINMAX > > MULTISTATEMENT_MACRO_USE_DO_WHILE > > > > 0001-tools-os_support-add-OS-X-Lion-support.patch has no obvious style > > problems and is ready for submission. > > > > tools/os_support.c | 2 +- > > tools/os_support.h | 2 +- > > 2 files changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/tools/os_support.c b/tools/os_support.c > > index 1ed89e6..319c0fe 100644 > > --- a/tools/os_support.c > > +++ b/tools/os_support.c > > @@ -23,6 +23,6 @@ > > > > #ifdef __MINGW32__ > > #include "mingw_support.c" > > #endif > > > > -#ifdef __APPLE__ > > +#if defined(__APPLE__) && __DARWIN_C_LEVEL < 200809L > > > > #include "getline.c" > > #endif > > > > diff --git a/tools/os_support.h b/tools/os_support.h > > index 7dcbee4..5bf7add 100644 > > --- a/tools/os_support.h > > +++ b/tools/os_support.h > > @@ -28,7 +28,7 @@ > > > > #include "mingw_support.h" > > #endif > > > > -#ifdef __APPLE__ > > +#if defined(__APPLE__) && __DARWIN_C_LEVEL < 200809L > > > > #include "getline.h" > > #endif > > Acked-by: Marek Vasut <marek.vasut@gmail.com> Picked to: u-boot-staging.git / marek.vasut@gmail.com
I've been trying to get the compiler to run on Mac OS X for a bit, but haven't managed to get it to build (let alone get U-Boot to build). Any chance you could send me some pointers to how you got one up and running? On Thu, Nov 24, 2011 at 3:36 PM, Andreas Bießmann <andreas.devel@googlemail.com> wrote: > OS X Lion's c-library implements getline(), therefore prevent including the old > helper implementation for __DARWIN_C_LEVEL < 200809L. > > Without this patch following error occours: > > ---8<--- > In file included from os_support.h:32, > from img2srec.c:55: > getline.h:1: error: conflicting types for ‘getline’ > /usr/include/stdio.h:449: error: previous declaration of ‘getline’ was > here > --->8--- > > Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com> > --- > total: 0 errors, 0 warnings, 15 lines checked > > NOTE: Ignored message types: COMPLEX_MACRO CONSIDER_KSTRTO MINMAX MULTISTATEMENT_MACRO_USE_DO_WHILE > > 0001-tools-os_support-add-OS-X-Lion-support.patch has no obvious style problems and is ready for submission. > > tools/os_support.c | 2 +- > tools/os_support.h | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/tools/os_support.c b/tools/os_support.c > index 1ed89e6..319c0fe 100644 > --- a/tools/os_support.c > +++ b/tools/os_support.c > @@ -23,6 +23,6 @@ > #ifdef __MINGW32__ > #include "mingw_support.c" > #endif > -#ifdef __APPLE__ > +#if defined(__APPLE__) && __DARWIN_C_LEVEL < 200809L > #include "getline.c" > #endif > diff --git a/tools/os_support.h b/tools/os_support.h > index 7dcbee4..5bf7add 100644 > --- a/tools/os_support.h > +++ b/tools/os_support.h > @@ -28,7 +28,7 @@ > #include "mingw_support.h" > #endif > > -#ifdef __APPLE__ > +#if defined(__APPLE__) && __DARWIN_C_LEVEL < 200809L > #include "getline.h" > #endif > > -- > 1.7.7.4 > > _______________________________________________ > U-Boot mailing list > U-Boot@lists.denx.de > http://lists.denx.de/mailman/listinfo/u-boot >
Dear Andy Fleming, Am 25.11.2011 um 20:29 schrieb Andy Fleming: > I've been trying to get the compiler to run on Mac OS X for a bit, but > haven't managed to get it to build (let alone get U-Boot to build). Well building sandbox will (currently) not work. But having a (self compiled) GNU cross toolchain for some architecture you can build u-boot for boards with that arch. I've tested some arm devices and can successfully build u-boot for at91rm9200ek, at91sam9260ek, dockstar and devkit8000 on my OS X box (since 10.5). Last upgrade to 10.7 broke the mentioned getline() in tools. > Any chance you could send me some pointers to how you got one up and > running? Getting a cross toolchain running on OS X is (nearly) the same effort than using a linux box as host system. You need to get the tools for building the toolchain, the sources for the toolchain itself and some receipts to build it. I use fink [1] to get the base system (gnu coreutils, flex/bison, awk, sed, …) and then build my toolchain from scratch with some self built makefiles (I could provide them but they are rather outdated). You can also use macports [2], AFAIK they have some ports for at least gnu arm cross chains. If you like to build your toolchain for your own I recommend reading some about 'How to build a cross toolchain'. Dan Kegel's (outdated) 'Building and Testing gcc toolchain' [3] has some pointers for OS X as host system and is in general a good starting point for toolchain building. LFS [4] has some general pointers about building a toolchain from scratch and CLFS [5] considers special cases for cross compilation. Another starting point could be crosstool-ng [6], ELDK [7], buildroot [8] and a lot of other collections of receipts to build your toolchain (note I have used none of them on OS X but it may work). I'm currently trying to get pengutronix ptxdist [9] working on OS X to build my toolchain with that tool (OSELAS toolchain [10]). We use these toolchain at work, using it at home too would be great. I hope I could answer your question, if not feel free to ask ... best regards Andreas Bießmann [1] http://www.finkproject.org/ [2] http://www.macports.org/ [3] http://kegel.com/crosstool/crosstool-0.43/doc/crosstool-howto.html [4] http://www.linuxfromscratch.org/ [5] http://trac.cross-lfs.org/ [6] http://crosstool-ng.org/ [7] http://www.denx.de/wiki/DULG/ELDK [8] http://buildroot.uclibc.org/ [9] http://ptxdist.org/software/ptxdist/index_en.html [10] http://www.ptxdist.org/oselas/toolchain/index_en.html
On Friday 25 November 2011 14:29:02 Andy Fleming wrote: > I've been trying to get the compiler to run on Mac OS X for a bit, but > haven't managed to get it to build (let alone get U-Boot to build). > Any chance you could send me some pointers to how you got one up and > running? i don't recall having any problems when compiling binutils/gcc to run on OS X. i had to disable nls, but that was easy enough. -mike
diff --git a/tools/os_support.c b/tools/os_support.c index 1ed89e6..319c0fe 100644 --- a/tools/os_support.c +++ b/tools/os_support.c @@ -23,6 +23,6 @@ #ifdef __MINGW32__ #include "mingw_support.c" #endif -#ifdef __APPLE__ +#if defined(__APPLE__) && __DARWIN_C_LEVEL < 200809L #include "getline.c" #endif diff --git a/tools/os_support.h b/tools/os_support.h index 7dcbee4..5bf7add 100644 --- a/tools/os_support.h +++ b/tools/os_support.h @@ -28,7 +28,7 @@ #include "mingw_support.h" #endif -#ifdef __APPLE__ +#if defined(__APPLE__) && __DARWIN_C_LEVEL < 200809L #include "getline.h" #endif
OS X Lion's c-library implements getline(), therefore prevent including the old helper implementation for __DARWIN_C_LEVEL < 200809L. Without this patch following error occours: ---8<--- In file included from os_support.h:32, from img2srec.c:55: getline.h:1: error: conflicting types for ‘getline’ /usr/include/stdio.h:449: error: previous declaration of ‘getline’ was here --->8--- Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com> --- total: 0 errors, 0 warnings, 15 lines checked NOTE: Ignored message types: COMPLEX_MACRO CONSIDER_KSTRTO MINMAX MULTISTATEMENT_MACRO_USE_DO_WHILE 0001-tools-os_support-add-OS-X-Lion-support.patch has no obvious style problems and is ready for submission. tools/os_support.c | 2 +- tools/os_support.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)