mips64 N64 ABI has different size for int and pointer which means the compiler will complain about conversions which works fine for 32 bit since sizes are same.
amd64 is taken care of already so we take care of mips64 with this patch by understanding the difference in sizes in compiler.h Signed-off-by: Khem Raj <[email protected]> --- .../xorg-xserver/xserver-xorg-1.11.2.inc | 1 + .../xserver-xorg-1.11.2/mips64-compiler.patch | 29 ++++++++++++++++++++ 2 files changed, 30 insertions(+), 0 deletions(-) create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xorg-1.11.2/mips64-compiler.patch diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xorg-1.11.2.inc b/meta/recipes-graphics/xorg-xserver/xserver-xorg-1.11.2.inc index fc41568..595ab77 100644 --- a/meta/recipes-graphics/xorg-xserver/xserver-xorg-1.11.2.inc +++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg-1.11.2.inc @@ -2,6 +2,7 @@ SRC_URI += "file://crosscompile.patch \ file://fix_open_max_preprocessor_error.patch \ file://gcc-47-warning.patch \ + file://mips64-compiler.patch \ " SRC_URI[md5sum] = "8796fff441e5435ee36a72579008af24" diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xorg-1.11.2/mips64-compiler.patch b/meta/recipes-graphics/xorg-xserver/xserver-xorg-1.11.2/mips64-compiler.patch new file mode 100644 index 0000000..e6bc95b --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg-1.11.2/mips64-compiler.patch @@ -0,0 +1,29 @@ +on mips64/n64 pointers are 64bit therefore the pointer conversions to int dont work well +so we end up with incompatible conversion errors + +This patch choses the right values for mips64 + +Signed-off-by: Khem Raj <[email protected]> + +Upstream-Status: Pending +Index: xorg-server-1.11.2/hw/xfree86/common/compiler.h +=================================================================== +--- xorg-server-1.11.2.orig/hw/xfree86/common/compiler.h 2012-05-10 12:19:59.485599046 -0700 ++++ xorg-server-1.11.2/hw/xfree86/common/compiler.h 2012-05-10 12:20:53.109602488 -0700 +@@ -104,6 +104,7 @@ + + # if !defined(__arm__) + # if !defined(__sparc__) && !defined(__sparc) && !defined(__arm32__) && !defined(__nds32__) \ ++ && !defined(__mips64) \ + && !(defined(__alpha__) && defined(linux)) \ + && !(defined(__ia64__) && defined(linux)) \ + +@@ -708,7 +709,7 @@ + } + + # elif defined(__mips__) || (defined(__arm32__) && !defined(__linux__)) +-# ifdef __arm32__ ++# if defined (__arm32__) || defined (__mips64) + # define PORT_SIZE long + # else + # define PORT_SIZE short -- 1.7.5.4 _______________________________________________ Openembedded-core mailing list [email protected] http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
