meta-openembedded/recipes-support/mysql/mysql5/fix-abi-check-gcc45.patch
Koen Kooi ef3de09a6b mysql5: import from OE
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
2011-01-03 12:02:34 +01:00

78 lines
2.7 KiB
Diff

From: Date: July 20 2010 7:44pm
Subject: bzr commit into mysql-5.1-bugteam branch (davi:3493) Bug#52514
List-Archive: http://lists.mysql.com/commits/113968
X-Bug: 52514
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="===============9147207462624717749=="
--===============9147207462624717749==
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
# At a local mysql-5.1-bugteam repository of davi
3493 Davi Arnaut 2010-07-20
Bug#52514: mysql 5.1 do_abi_check does not compile w/ gcc4.5
due to GCC preprocessor change
The problem is that newer GCC versions treats missing headers
as fatal errors. The solution is to use a guard macro to prevent
the inclusion of system headers when checking the ABI with the
C Preprocessor.
Reference: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15638
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44836
@ Makefile.am
Define guard macro.
@ configure.in
Remove workaround.
@ include/mysql.h
Guard the header inclusion.
@ include/mysql.h.pp
Header is not included anymore.
modified:
Makefile.am
configure.in
include/mysql.h
include/mysql.h.pp
=== modified file 'Makefile.am'
Index: mysql-5.1.40/Makefile.am
===================================================================
--- mysql-5.1.40.orig/Makefile.am 2009-10-07 01:46:13.000000000 +0800
+++ mysql-5.1.40/Makefile.am 2010-08-17 20:07:24.843148001 +0800
@@ -312,7 +312,7 @@
do_abi_check:
set -ex; \
for file in $(abi_headers); do \
- @CC@ -E -nostdinc -dI \
+ @CC@ -E -nostdinc -dI -DMYSQL_ABI_CHECK \
-I$(top_srcdir)/include \
-I$(top_srcdir)/include/mysql \
-I$(top_srcdir)/sql \
Index: mysql-5.1.40/include/mysql.h
===================================================================
--- mysql-5.1.40.orig/include/mysql.h 2009-10-07 01:46:50.000000000 +0800
+++ mysql-5.1.40/include/mysql.h 2010-08-17 20:07:24.843148001 +0800
@@ -44,7 +44,9 @@
#endif
#ifndef _global_h /* If not standard header */
+#ifndef MYSQL_ABI_CHECK
#include <sys/types.h>
+#endif
#ifdef __LCC__
#include <winsock2.h> /* For windows */
#endif
Index: mysql-5.1.40/include/mysql.h.pp
===================================================================
--- mysql-5.1.40.orig/include/mysql.h.pp 2009-10-07 01:46:50.000000000 +0800
+++ mysql-5.1.40/include/mysql.h.pp 2010-08-17 20:07:24.843148001 +0800
@@ -1,4 +1,3 @@
-#include <sys/types.h>
typedef char my_bool;
typedef int my_socket;
#include "mysql_version.h"