This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

eglibc-2_14 patch: Add protection on the __caddr_t typedef in usr/include/sys/types.h to avoid problems when caddr_t is defined.


When using ct-ng 1.13.0, the following patch for eglibc-2_14 was needed
for a i686-pc-mingw32-i686-pc-linux-gnu build.

 

diff --git a/patches/eglibc/2_14/100-caddr_t-typedef-from-types.h.patch
b/patches/eglibc/2_14/100-caddr_t-typedef-from-types.h.patch

new file mode 100644

index 0000000..11b5f8b

--- /dev/null

+++ b/patches/eglibc/2_14/100-caddr_t-typedef-from-types.h.patch

@@ -0,0 +1,33 @@

+Add protection on the __caddr_t typedef in usr/include/sys/types.h to
avoid problems when caddr_t is defined.

+

+[ALL  ]    i686-pc-linux-gnu-cc   -march=i686 -mtune=i686 -O2
-march=i686   -mtune=i686    -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE  -W
-Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition  -isystem ./include  -I. -I.
-I/usr/local/src/crosstool-build/i686-pc-mingw32-i686-pc-linux-gnu/.buil
d/src/gcc-linaro-4.6-2011.10/gcc
-I/usr/local/src/crosstool-build/i686-pc-mingw32-i686-pc-linux-gnu/.buil
d/src/gcc-linaro-4.6-2011.10/gcc/.
-I/usr/local/src/crosstool-build/i686-pc-mingw32-i686-pc-linux-gnu/.buil
d/src/gcc-linaro-4.6-2011.10/gcc/../include
-I/usr/local/src/crosstool-build/i686-pc-mingw32-i686-pc-linux-gnu/.buil
d/src/gcc-linaro-4.6-2011.10/gcc/../libcpp/include
-I/usr/local/src/crosstool-build/i686-pc-mingw32-i686-pc-linux-gnu/.buil
d/i686-pc-linux-gnu/build/static/include
-I/usr/local/src/crosstool-build/i686-pc-mingw32-i686-pc-linux-gnu/.buil
d/i686-pc-linux-gnu/build/static/include
-I/usr/local/src/crosstool-build/i686-pc-mingw32-i686-pc-linux-gnu/.buil
d/i686-pc-linux-gnu/build/static/include
-I/usr/local/src/crosstool-build/i686-pc-mingw32-i686-pc-linux-gnu/.buil
d/src/gcc-linaro-4.6-2011.10/gcc/../libdecnumber
-I/usr/local/src/crosstool-build/i686-pc-mingw32-i686-pc-linux-gnu/.buil
d/src/gcc-linaro-4.6-2011.10/gcc/../libdecnumber/bid -I../libdecnumber
-I/usr/local/src/crosstool-build/i686-pc-mingw32-i686-pc-linux-gnu/.buil
d/i686-pc-linux-gnu/build/static/include
-I/usr/local/src/crosstool-build/i686-pc-mingw32-i686-pc-linux-gnu/.buil
d/i686-pc-linux-gnu/build/static/include  -g0 -finhibit-size-directive
-fno-inline -fno-exceptions -fno-zero-initialized-in-bss
-fno-toplevel-reorder -fno-tree-vectorize -fno-stack-protector  -I. -I.
-I../.././gcc
-I/usr/local/src/crosstool-build/i686-pc-mingw32-i686-pc-linux-gnu/.buil
d/src/gcc-linaro-4.6-2011.10/libgcc
-I/usr/local/src/crosstool-build/i686-pc-mingw32-i686-pc-linux-gnu/.buil
d/src/gcc-linaro-4.6-2011.10/libgcc/.
-I/usr/local/src/crosstool-build/i686-pc-mingw32-i686-pc-linux-gnu/.buil
d/src/gcc-linaro-4.6-2011.10/libgcc/../gcc
-I/usr/local/src/crosstool-build/i686-pc-mingw32-i686-pc-linux-gnu/.buil
d/src/gcc-linaro-4.6-2011.10/libgcc/../include
-I/usr/local/src/crosstool-build/i686-pc-mingw32-i686-pc-linux-gnu/.buil
d/src/gcc-linaro-4.6-2011.10/libgcc/config/libbid
-DENABLE_DECIMAL_BID_FORMAT -o crtbeginS.o -MT crtbeginS.o -MD -MP -MF
crtbeginS.dep -fno-omit-frame-pointer -fno-asynchronous-unwind-tables
-fPIC        -c
/usr/local/src/crosstool-build/i686-pc-mingw32-i686-pc-linux-gnu/.build/
src/gcc-linaro-4.6-2011.10/libgcc/../gcc/crtstuff.c -DCRT_BEGIN
-DCRTSTUFFS_O

+[ALL  ]    In file included from
/usr/local/src/crosstool-build/i686-pc-mingw32-i686-pc-linux-gnu/.build/
src/gcc-linaro-4.6-2011.10/libgcc/../gcc/tsystem.h:90:0,

+[ALL  ]                     from
/usr/local/src/crosstool-build/i686-pc-mingw32-i686-pc-linux-gnu/.build/
src/gcc-linaro-4.6-2011.10/libgcc/../gcc/crtstuff.c:61:

+[ERROR]
/opt/ctng/i686-pc-linux-gnu/i686-pc-linux-gnu/sysroot/usr/include/sys/ty
pes.h:117:19: error: two or more data types in declaration specifiers

+[ERROR]
/opt/ctng/i686-pc-linux-gnu/i686-pc-linux-gnu/sysroot/usr/include/sys/ty
pes.h:117:26: error: expected identifier or '(' before ';' token

+

+--- ./posix/sys/types.h   2010-01-26 06:27:38.000000000 -0500

++++ ./posix/sys/types.h               2011-11-17 11:39:03.662925595
-0500

+@@ -113,10 +113,21 @@

+ 

+ #ifdef __USE_BSD

+ # ifndef __daddr_t_defined

++#  ifndef daddr_t

+ typedef __daddr_t daddr_t;

+-typedef __caddr_t caddr_t;

++#  else

++#    define __daddr_t daddr_t

++#  endif

+ #  define __daddr_t_defined

+ # endif

++# ifndef __caddr_t_defined

++#  ifndef caddr_t

++typedef __caddr_t caddr_t;

++#  else

++#    define __caddr_t caddr_t

++#  endif

++#  define __caddr_t_defined

++# endif

+ #endif

+ 

+ #if (defined __USE_SVID || defined __USE_XOPEN) && !defined
__key_t_defined


--
For unsubscribe information see http://sourceware.org/lists.html#faq


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]