diff configure.ac @ 13024:f3c53fea9fb5

maint: more linking tweaks * configure.ac (--enable-link-all-dependencies): New option. (--enable-no-undefined): New option. Don't set NO_UNDEFINED_LDFLAG specially on Windows systems. * liboctave/link-deps.mk (LIBOCTAVE_LINK_DEPS): Include $(LAPACK_LIBS), $(BLAS_LIBS) and $(LIBS) in the list. * config-modules.awk: Add $(NO_UNDEFINED_LDFLAG) to LDFLAGS variables. * src/link-deps.mk (OCT_LINK_DEPS): Remove $(NO_UNDEFINED_LDFLAG from the list. * src/mkoctfile.cc.in, mkoctfile.in: Always link files with -loctinterp, -loctave, and -lcruft.
author John W. Eaton <jwe@octave.org>
date Mon, 29 Aug 2011 11:49:30 -0400
parents 6b0798860fa4
children f26ea04b5356 8a688c3179dd
line wrap: on
line diff
--- a/configure.ac	Mon Aug 29 10:53:07 2011 -0400
+++ b/configure.ac	Mon Aug 29 11:49:30 2011 -0400
@@ -1458,28 +1458,41 @@
 
 AC_CHECK_FUNCS(getpwnam, [], [AC_CHECK_LIB(sun, getpwnam)])
 
-NO_UNDEFINED_LDFLAG=
 case "$canonical_host_type" in
   *-*-mingw*)
     if test "$have_msvc" = "yes"; then
       AC_CHECK_LIB(dirent, opendir)
       LIBS="$LIBS -ladvapi32 -lgdi32 -lws2_32 -luser32 -lkernel32"
-      NO_UNDEFINED_LDFLAG=-no-undefined
     else
       LIBS="$LIBS -lgdi32 -lws2_32 -luser32 -lkernel32"
-      NO_UNDEFINED_LDFLAG=-no-undefined
     fi
     LIBS="$LIBS -lgdi32 -lws2_32 -luser32 -lkernel32"
-    NO_UNDEFINED_LDFLAG=-no-undefined
   ;;
   *-*-msdosmsvc*)
     AC_CHECK_LIB(dirent, opendir)
     LIBS="$LIBS -ladvapi32 -lgdi32 -lws2_32 -luser32 -lkernel32"
-    NO_UNDEFINED_LDFLAG=-no-undefined
   ;;
 esac
+
+AC_ARG_ENABLE([no-undefined],
+  [AS_HELP_STRING([--enable-no-undefined],
+    [pass -no-undefined to libtool when linking linking Octave and its shared libraries (on by default)])],
+  [case "${enableval}" in
+    yes) NO_UNDEFINED_LDFLAG="-no-undefined" ;;
+    no)  NO_UNDEFINED_LDFLAG="" ;;
+    *) AC_MSG_ERROR([bad value ${enableval} for --enable-link-all-depenencies]) ;;
+   esac], [NO_UNDEFINED_LDFLAG="-no-undefined"])
 AC_SUBST(NO_UNDEFINED_LDFLAG)
-AM_CONDITIONAL([AMCOND_LINK_ALL_DEPS], [test -n "$NO_UNDEFINED_LDFLAG"])
+
+AC_ARG_ENABLE([link-all-dependencies],
+  [AS_HELP_STRING([--enable-link-all-dependencies],
+    [link Octave and its shared libraries with all dependencies, not just those immediately referenced (should not be needed on most systems)])],
+  [case "${enableval}" in
+    yes) link_all_deps=true ;;
+    no)  link_all_deps=false ;;
+    *) AC_MSG_ERROR([bad value ${enableval} for --enable-link-all-depenencies]) ;;
+   esac], [link_all_deps=false])
+AM_CONDITIONAL([AMCOND_LINK_ALL_DEPS], [test x$link_all_deps = xtrue])
 
 ### Type stuff.