summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <monty@mashka.mysql.fi>2002-08-24 16:32:16 +0300
committerunknown <monty@mashka.mysql.fi>2002-08-24 16:32:16 +0300
commit5d641b1288ee01939cfddd145e070ebef87b6c17 (patch)
treeaabd2378e79efbd8c2610d7dabacdfd1dca7e00c
parentfd096e655d52f80ee0ffc4cb63b4b5f740f2561a (diff)
downloadmariadb-git-5d641b1288ee01939cfddd145e070ebef87b6c17.tar.gz
Portability fix for AIX 4.3 powerpc with gcc 3.2
BitKeeper/deleted/.del-rpl_compat.test~5f6ba955e02aa95f: deleted old test Docs/manual.texi: Added comment about shared libraries to upgrade section
-rw-r--r--Docs/manual.texi4
-rw-r--r--innobase/pars/lexyy.c1
-rw-r--r--innobase/pars/pars0grm.c3
-rw-r--r--innobase/pars/pars0grm.y3
-rw-r--r--innobase/pars/pars0lex.l3
-rwxr-xr-xltconfig4
6 files changed, 11 insertions, 7 deletions
diff --git a/Docs/manual.texi b/Docs/manual.texi
index 2209568ea48..723085b4fb9 100644
--- a/Docs/manual.texi
+++ b/Docs/manual.texi
@@ -8120,6 +8120,10 @@ Convert your old ISAM files to MyISAM files with the command:
be run if all tables in the given database is ISAM or MyISAM tables. If
this is not the case you should run @code{ALTER TABLE table_name TYPE=MyISAM}
on all ISAM tables.
+@item
+Ensure that you don't have any MySQL clients that uses shared libraries
+(like the perl Msql-Mysql-modules). If you have, you should recompile
+them as structures used in libmysqlclient.so has changed.
@end itemize
MySQL 4.0 will work even if you don't do the above, but you will not be
diff --git a/innobase/pars/lexyy.c b/innobase/pars/lexyy.c
index 0a333c726ff..f7edc9d195f 100644
--- a/innobase/pars/lexyy.c
+++ b/innobase/pars/lexyy.c
@@ -8,6 +8,7 @@
#define YY_FLEX_MAJOR_VERSION 2
#define YY_FLEX_MINOR_VERSION 5
+#include "univ.i"
#include <stdio.h>
diff --git a/innobase/pars/pars0grm.c b/innobase/pars/pars0grm.c
index 1b7b31f6443..05b75398084 100644
--- a/innobase/pars/pars0grm.c
+++ b/innobase/pars/pars0grm.c
@@ -94,9 +94,8 @@
/* The value of the semantic attribute is a pointer to a query tree node
que_node_t */
-#include <math.h>
-
#include "univ.i"
+#include <math.h> /* Can't be before univ.i */
#include "pars0pars.h"
#include "mem0mem.h"
#include "que0types.h"
diff --git a/innobase/pars/pars0grm.y b/innobase/pars/pars0grm.y
index 67289222594..a142d04301e 100644
--- a/innobase/pars/pars0grm.y
+++ b/innobase/pars/pars0grm.y
@@ -14,9 +14,8 @@ the InnoDB parser.
/* The value of the semantic attribute is a pointer to a query tree node
que_node_t */
-#include <math.h>
-
#include "univ.i"
+#include <math.h> /* Can't be before univ.i */
#include "pars0pars.h"
#include "mem0mem.h"
#include "que0types.h"
diff --git a/innobase/pars/pars0lex.l b/innobase/pars/pars0lex.l
index e9b39861dd2..97875ffcc45 100644
--- a/innobase/pars/pars0lex.l
+++ b/innobase/pars/pars0lex.l
@@ -28,6 +28,9 @@ How to make the InnoDB parser and lexer C files:
6. Remove the #include of unistd.h from about line 2500 of lexyy.c
+7. Add '#include "univ.i"' before #include <stdio.h> in lexyy.c
+ (Needed for AIX)
+
These instructions seem to work at least with bison-1.28 and flex-2.5.4 on
Linux.
*******************************************************/
diff --git a/ltconfig b/ltconfig
index b9df847729d..18af7c4dce8 100755
--- a/ltconfig
+++ b/ltconfig
@@ -1308,9 +1308,7 @@ else
hardcode_direct=yes
fi
allow_undefined_flag=' ${wl}-berok'
- # -qmkshrobj used to be -bexpall, but MySQL uses symbols which start with
- # an underscore (e.g., _my_b_write), so -bexpall doesn't work.
- archive_cmds="\$CC $shared_flag"' -o $objdir/$soname $libobjs $deplibs $linkopts ${wl}-qmkshrobj ${wl}-bnoentry${allow_undefined_flag}'
+ archive_cmds="\$CC $shared_flag"' -o $objdir/$soname $libobjs $deplibs $linkopts ${wl}-bexpall ${wl}-bnoentry${allow_undefined_flag}'
archive_expsym_cmds="\$CC $shared_flag"' -o $objdir/$soname $libobjs $deplibs $linkopts ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}'
case "$host_os" in aix4.[01]|aix4.[01].*)
# According to Greg Wooledge, -bexpall is only supported from AIX 4.2 on