#At bzr+ssh://bk-internal.mysql.com/bzrroot/mysql-5.1-sea
2676 Narayanan V 2008-08-08
WL#4380
1) Disabled abi_check rule for all compilers except gcc
2) restored the -dI option to retain the header information.
modified:
Makefile.am
configure.in
include/mysql.h.pp
per-file messages:
Makefile.am
1) changed all-local to depend on a configure variable
that will be set based on if the compiler is gcc.
2) restored the -dI option removed earlier since now
only gcc is being used.
configure.in
Added a check to see if gcc is being used. If it is being
used set the ABI_CHECK variable to the abi_check target.
include/mysql.h.pp
The .pp file is changed to correspond to the option
-dI.
=== modified file 'Makefile.am'
--- a/Makefile.am 2008-08-06 18:13:37 +0000
+++ b/Makefile.am 2008-08-08 09:00:05 +0000
@@ -58,7 +58,7 @@ dist-hook:
--datadir=$(distdir)/win/data \
--srcdir=$(top_srcdir)
-all-local: abi_check
+all-local: @ABI_CHECK@
tags:
support-files/build-tags
@@ -292,7 +292,7 @@ abi_check_all: $(TEST_PREPROCESSOR_HEADE
do_abi_check:
set -ex; \
for file in $(abi_headers); do \
- @CC@ -E -nostdinc \
+ @CC@ -E -nostdinc -dI \
-I$(top_srcdir)/include \
-I$(top_srcdir)/include/mysql \
-I$(top_srcdir)/sql \
=== modified file 'configure.in'
--- a/configure.in 2008-07-31 11:29:41 +0000
+++ b/configure.in 2008-08-08 09:00:05 +0000
@@ -444,6 +444,15 @@ AC_SUBST(HOSTNAME)
AC_SUBST(PERL)
AC_SUBST(PERL5)
+if expr "$CC" : ".*gcc.*"
+then
+ ABI_CHECK="abi_check"
+else
+ ABI_CHECK=""
+fi
+
+AC_SUBST(ABI_CHECK)
+
# Lock for PS
AC_PATH_PROG(PS, ps, ps)
AC_MSG_CHECKING("how to check if pid exists")
=== modified file 'include/mysql.h.pp'
--- a/include/mysql.h.pp 2008-08-06 18:13:37 +0000
+++ b/include/mysql.h.pp 2008-08-08 09:00:05 +0000
@@ -1,5 +1,8 @@
+#include <sys/types.h>
typedef char my_bool;
typedef int my_socket;
+#include "mysql_version.h"
+#include "mysql_com.h"
enum enum_server_command
{
COM_SLEEP, COM_QUIT, COM_INIT_DB, COM_QUERY, COM_FIELD_LIST,
@@ -143,6 +146,7 @@ char *get_tty_password(const char *opt_m
const char *mysql_errno_to_sqlstate(unsigned int mysql_errno);
my_bool my_thread_init(void);
void my_thread_end(void);
+#include "mysql_time.h"
enum enum_mysql_timestamp_type
{
MYSQL_TIMESTAMP_NONE= -2, MYSQL_TIMESTAMP_ERROR= -1,
@@ -155,6 +159,7 @@ typedef struct st_mysql_time
my_bool neg;
enum enum_mysql_timestamp_type time_type;
} MYSQL_TIME;
+#include "my_list.h"
typedef struct st_list {
struct st_list *prev,*next;
void *data;
@@ -195,6 +200,8 @@ typedef struct st_mysql_field {
typedef char **MYSQL_ROW;
typedef unsigned int MYSQL_FIELD_OFFSET;
typedef unsigned long long my_ulonglong;
+#include "typelib.h"
+#include "my_alloc.h"
typedef struct st_used_mem
{
struct st_used_mem *next;
@@ -232,6 +239,7 @@ typedef struct st_mysql_rows {
unsigned long length;
} MYSQL_ROWS;
typedef MYSQL_ROWS *MYSQL_ROW_OFFSET;
+#include "my_alloc.h"
typedef struct embedded_query_result EMBEDDED_QUERY_RESULT;
typedef struct st_mysql_data {
MYSQL_ROWS *data;