diff options
author | unknown <msvensson@shellback.(none)> | 2006-04-22 21:53:33 +0200 |
---|---|---|
committer | unknown <msvensson@shellback.(none)> | 2006-04-22 21:53:33 +0200 |
commit | 609e96e1db2599f2f4e279efb87342e40999ba36 (patch) | |
tree | aafcf9a9e7a8c77152b58837f6d79123ce569879 /configure.in | |
parent | 8b123043371b0c0c642912a5b3548448d4e026ed (diff) | |
download | mariadb-git-609e96e1db2599f2f4e279efb87342e40999ba36.tar.gz |
Fix for building shared libraries on AIX with 64-bit mode
Set building of shared libraries on QNX to defatul OFF
configure.in:
-Libtool forgets to pass the -q64 and -X64 flags to "nm" and "xlc_r" when building
for 64-bit on AIX. Add some hacks before we create libtool that fixes this.
This test should be integrated into autoconf/libtool
-Set default to not build shared librarues on QNX. When building libmysqlclient and libmysqlclient_r
so many objects are passed to libtool that sh propably runs out of stack and segfaults.
Diffstat (limited to 'configure.in')
-rw-r--r-- | configure.in | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/configure.in b/configure.in index c10edbd841a..fe6ac7483ba 100644 --- a/configure.in +++ b/configure.in @@ -218,6 +218,46 @@ then else AC_PATH_PROG(AS, as, as) fi + +# These checks has to be made befoe we buil libtool as they affect +# what is written into libtool. +case $SYSTEM_TYPE in + *aix5*) + # Find out which ABI we are using. + echo 'int i;' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.$ac_objext` in + *"32-bit XCOFF"*) + # OBJECT_MODE=32 + ;; + *"64-bit XCOFF"*) + AC_MSG_WARN([Setting 64-bit mode for AIX 5.*]) + # It was detected that compiler is using 64-bit mode + # Set flags for CC and NM so that those tools will work + # in 64-bit mode when called from libtool + # The easiest way fix this is "export OBJECT_MODE=64" + CC="$CC -q64" + CXX="$CXX -q64" + if test "X${NM+set}" != Xset; then + NM="/usr/bin/nm -B -X64" + fi + ;; + esac + fi + rm -rf conftest* + ;; + *qnx*) + # Don't build shared libraries on QNX as it will run out of + # stack and segfault + AC_MSG_WARN([Turning off building of shared libraries]) + AC_DISABLE_SHARED + ;; + *) + ;; +esac + +LINK= "OBJECT_MODE=64 $LINK" + # Still need ranlib for readline; local static use only so no libtool. AC_PROG_RANLIB # We use libtool @@ -229,6 +269,13 @@ AC_PROG_LIBTOOL LIBTOOL="$LIBTOOL --preserve-dup-deps" AC_SUBST(LIBTOOL)dnl +AC_SUBST(NM)dnl + +# NM= "$NM -X64" +#archive_expsym_cmds= `echo "$archive_expsym_cmds" | sed -e '/"$(CC)"//'` +#archive_expsym_cmds= "$CC -q64 $archive_expsym_cmds" +# CXXFLAGS=`echo "$CXXFLAGS -Werror" | sed -e 's/-fbranch-probabilities//; s/-Wall//; s/-ansi//; s/-pedantic//; s/-Wcheck//'` + #AC_LIBTOOL_DLOPEN AC_LIBTOOL_WIN32_DLL AC_DISABLE_FAST_INSTALL AC_DISABLE_SHARED AC_DISABLE_STATIC # AC_PROG_INSTALL |