From 24b8fe2f8b19684d30f422e658dad2fa778edc24 Mon Sep 17 00:00:00 2001 From: Marcus Comstedt <marcus@mc.pp.se> Date: Tue, 1 Jun 1999 23:09:03 +0200 Subject: [PATCH] More careful selection of linker flags implemented. (from 0.6.) Rev: src/modules/Oracle/configure.in:1.14 --- src/modules/Oracle/configure.in | 75 ++++++++++++++++++++++++++++++++- 1 file changed, 73 insertions(+), 2 deletions(-) diff --git a/src/modules/Oracle/configure.in b/src/modules/Oracle/configure.in index bf280257fd..814cedad5a 100755 --- a/src/modules/Oracle/configure.in +++ b/src/modules/Oracle/configure.in @@ -1,5 +1,5 @@ # -# $Id: configure.in,v 1.13 1999/03/20 21:04:51 marcus Exp $ +# $Id: configure.in,v 1.14 1999/06/01 21:09:03 marcus Exp $ # # Configure script for the oracle module # @@ -165,6 +165,77 @@ if test x$with_oracle = xyes; then rm -f conftest AC_CHECK_LIB(aio, aioread, [oracle_aio=-laio], [oracle_aio=""]) + EXTRALDFLAGS="" + + AC_MSG_CHECKING(if ld supports -Bsymbolic) + AC_CACHE_VAL(pike_cv_oracle_ld_bsymbolic, [ + pike_cv_oracle_ld_bsymbolic=no + cat > conftest.$ac_ext <<EOF +int foo(){ return 0; } +EOF + if AC_TRY_EVAL(ac_compile); then + if AC_TRY_COMMAND([ld -r -o conftest2.o conftest.o $EXTRALDFLAGS -Bsymbolic]); then + if test -f conftest2.o; then + pike_cv_oracle_ld_bsymbolic=yes + else + : + fi + else + : + fi + else + echo "configure: failed program was:" >&AC_FD_CC + cat conftest.$ac_ext >&AC_FD_CC + fi + rm -f conftest* + ]) + AC_MSG_RESULT($pike_cv_oracle_ld_bsymbolic) + + if test "x$pike_cv_oracle_ld_bsymbolic" = xyes; then + EXTRALDFLAGS="$EXTRALDFLAGS -Bsymbolic" + else + : + fi + + AC_MSG_CHECKING(if ld supports -znodefs) + AC_CACHE_VAL(pike_cv_oracle_ld_znodefs, [ + pike_cv_oracle_ld_znodefs=no + cat > conftest.$ac_ext <<EOF +int foo(){ return 0; } +EOF + if AC_TRY_EVAL(ac_compile); then + + dnl Some ld:s interpret -znodefs as "-z -n -o defs". + dnl Check for such ld:s. + + if AC_TRY_COMMAND([ld -r -o conftest2.o conftest.o $EXTRALDFLAGS -zoconftest3.o]) && \ + test -f conftest3.o; then + : + else + if AC_TRY_COMMAND([ld -r -o conftest2.o conftest.o $EXTRALDFLAGS -znodefs]); then + if test -f conftest2.o; then + pike_cv_oracle_ld_znodefs=yes + else + : + fi + else + : + fi + fi + else + echo "configure: failed program was:" >&AC_FD_CC + cat conftest.$ac_ext >&AC_FD_CC + fi + rm -f conftest* + ]) + AC_MSG_RESULT($pike_cv_oracle_ld_znodefs) + + if test "x$pike_cv_oracle_ld_bsymbolic$pike_cv_oracle_ld_znodefs" = xyesyes; then + EXTRALDFLAGS="$EXTRALDFLAGS -znodefs" + else + : + fi + if test "x$oracle_lib_dir" = xno -o "x$oracle_include_dir" = xno; then :; else CPPFLAGS="-I$oracle_include_dir ${CPPFLAGS}" @@ -179,7 +250,7 @@ if test x$with_oracle = xyes; then OLDLIBS=LIBS LIBS="$LIBS $ORACLE_LIBS" AC_CHECK_LIB(client, oopen, [ - LDFLAGS="-Bsymbolic -znodefs $LDFLAGS" + LDFLAGS="$EXTRALDFLAGS $LDFLAGS" AC_DEFINE(HAVE_ORACLE) ], [ ORACLE_LIBS="" -- GitLab