2 # This offers a nice overview how to build shared libraries on all platforms
3 # http://www.fortran-2000.com/ArnaudRecipes/sharedlib.html
6 AC_DEFUN([AC_LD_EXPORT_DYNAMIC],
8 saved_LDFLAGS="$LDFLAGS"
9 if AC_TRY_COMMAND([${CC-cc} $CFLAGS -Wl,--version 2>&1 | grep "GNU ld" >/dev/null]); then
10 LD_EXPORT_DYNAMIC="-Wl,-export-dynamic"
14 LD_EXPORT_DYNAMIC="-Wl,-E"
21 AC_SUBST(LD_EXPORT_DYNAMIC)
22 LDFLAGS="$saved_LDFLAGS"
25 AC_DEFUN([AC_LD_PICFLAG],
32 if test "${GCC}" = "yes"; then
39 PICFLAG="-KPIC" # Is this correct for SunOS
41 *netbsd* | *freebsd* | *dragonfly* )
48 if test "${GCC}" = "yes"; then
55 # as AIX code is always position independent...
59 if test $ac_cv_prog_cc_Ae = yes; then
61 elif test "${GCC}" = "yes"; then
64 if test "$host_cpu" = "ia64"; then
81 AC_DEFUN([AC_LIBREPLACE_SHLD_FLAGS],
87 SHLD_FLAGS="-shared -Wl,-Bsymbolic"
91 if test "${GCC}" = "no"; then
92 ## ${CFLAGS} added for building 64-bit shared
93 ## libs using Sun's Compiler
94 SHLD_FLAGS="-G \${CFLAGS}"
104 SHLD_FLAGS="-Wl,-G,-bexpall,-bbigtoc"
107 if test "${GCC}" = "yes"; then
114 SHLD_FLAGS="-shared -warning_unresolved"
117 SHLD_FLAGS="-bundle -flat_namespace -undefined warning -Wl,-search_paths_first"
124 AC_DEFUN([AC_LD_SHLIBEXT],
129 if test "$host_cpu" = "ia64"; then
142 AC_DEFUN([AC_LD_SONAMEFLAG],
148 SONAMEFLAG="-Wl,-soname="
152 if test "${GCC}" = "yes"; then
153 SONAMEFLAG="-Wl,-soname="
159 *netbsd* | *freebsd* | *dragonfly* )
160 SONAMEFLAG="-Wl,-soname,"
163 SONAMEFLAG="-Wl,-soname,"
166 SONAMEFLAG="-Wl,-soname,"
172 SONAMEFLAG="-Wl,-soname,"
175 SONAMEFLAG="-Wl,-soname,"
187 AC_DEFUN([AC_LIBREPLACE_MDLD],
200 AC_DEFUN([AC_LIBREPLACE_MDLD_FLAGS],
206 MDLD_FLAGS="-shared -Wl,-Bsymbolic -Wl,--allow-shlib-undefined"
210 if test "${GCC}" = "no"; then
211 ## ${CFLAGS} added for building 64-bit shared
212 ## libs using Sun's Compiler
213 NDLD_FLAGS="-G \${CFLAGS}"
220 MDLD_FLAGS="-Wl,-G,-bexpall,-bbigtoc"
223 if test "${GCC}" = "yes"; then
230 MDLD_FLAGS="-shared -expect_unresolved '*'"
233 MDLD_FLAGS="-bundle -flat_namespace -undefined suppress -Wl,-search_paths_first"