Skip to content
configure 803 KiB
Newer Older
    archive_cmds="$archive_cmds;\$RANLIB \$lib"
    postinstall_cmds='$RANLIB $lib'
  fi
  ;;
  test "$enable_shared" = yes && enable_static=no
  ;;
esac
echo "$as_me:$LINENO: result: $enable_shared" >&5
echo "${ECHO_T}$enable_shared" >&6

echo "$as_me:$LINENO: checking whether to build static libraries" >&5
echo $ECHO_N "checking whether to build static libraries... $ECHO_C" >&6
# Make sure either enable_shared or enable_static is yes.
test "$enable_shared" = yes || enable_static=yes
echo "$as_me:$LINENO: result: $enable_static" >&5
echo "${ECHO_T}$enable_static" >&6

test "$ld_shlibs_F77" = no && can_build_shared=no

GCC_F77="$G77"
LD_F77="$LD"

lt_prog_compiler_wl_F77=
lt_prog_compiler_pic_F77=
lt_prog_compiler_static_F77=

echo "$as_me:$LINENO: checking for $compiler option to produce PIC" >&5
echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6

  if test "$GCC" = yes; then
    lt_prog_compiler_wl_F77='-Wl,'
    lt_prog_compiler_static_F77='-static'

    case $host_os in
      aix*)
      # All AIX code is PIC.
      if test "$host_cpu" = ia64; then
	# AIX 5 now supports IA64 processor
	lt_prog_compiler_static_F77='-Bstatic'
      fi
      ;;

    amigaos*)
      # FIXME: we need at least 68020 code to build shared libraries, but
      # adding the `-m68020' flag to GCC prevents building anything better,
      # like `-m68040'.
      lt_prog_compiler_pic_F77='-m68020 -resident32 -malways-restore-a4'
      ;;

    beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
      # PIC is the default for these OSes.
      ;;

    mingw* | pw32* | os2*)
      # This hack is so that the source file can tell whether it is being
      # built for inclusion in a dll (and should export symbols for example).
      lt_prog_compiler_pic_F77='-DDLL_EXPORT'
      ;;

    darwin* | rhapsody*)
      # PIC is the default on this platform
      # Common symbols not allowed in MH_DYLIB files
      lt_prog_compiler_pic_F77='-fno-common'
      ;;

    msdosdjgpp*)
      # Just because we use GCC doesn't mean we suddenly get shared libraries
      # on systems that don't support them.
      lt_prog_compiler_can_build_shared_F77=no
      enable_shared=no
      ;;

    sysv4*MP*)
      if test -d /usr/nec; then
	lt_prog_compiler_pic_F77=-Kconform_pic
      fi
      ;;

    hpux*)
      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
      # not for PA HP-UX.
      case "$host_cpu" in
      hppa*64*|ia64*)
	# +Z the default
	;;
      *)
	lt_prog_compiler_pic_F77='-fPIC'
	;;
      esac
      ;;

    *)
      lt_prog_compiler_pic_F77='-fPIC'
      ;;
    esac
  else
    # PORTME Check for flag to pass linker flags through the system compiler.
    case $host_os in
    aix*)
      lt_prog_compiler_wl_F77='-Wl,'
      if test "$host_cpu" = ia64; then
	# AIX 5 now supports IA64 processor
	lt_prog_compiler_static_F77='-Bstatic'
      else
	lt_prog_compiler_static_F77='-bnso -bI:/lib/syscalls.exp'
      fi
      ;;
      darwin*)
        # PIC is the default on this platform
        # Common symbols not allowed in MH_DYLIB files
       case "$cc_basename" in
         xlc*)
         lt_prog_compiler_pic_F77='-qnocommon'
         lt_prog_compiler_wl_F77='-Wl,'
         ;;
       esac
       ;;

    mingw* | pw32* | os2*)
      # This hack is so that the source file can tell whether it is being
      # built for inclusion in a dll (and should export symbols for example).
      lt_prog_compiler_pic_F77='-DDLL_EXPORT'
      ;;

    hpux9* | hpux10* | hpux11*)
      lt_prog_compiler_wl_F77='-Wl,'
      # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
      # not for PA HP-UX.
      case "$host_cpu" in
      hppa*64*|ia64*)
	# +Z the default
	;;
      *)
	lt_prog_compiler_pic_F77='+Z'
	;;
      esac
      # Is there a better lt_prog_compiler_static that works with the bundled CC?
      lt_prog_compiler_static_F77='${wl}-a ${wl}archive'
      ;;

    irix5* | irix6* | nonstopux*)
      lt_prog_compiler_wl_F77='-Wl,'
      # PIC (with -KPIC) is the default.
      lt_prog_compiler_static_F77='-non_shared'
      ;;

    newsos6)
      lt_prog_compiler_pic_F77='-KPIC'
      lt_prog_compiler_static_F77='-Bstatic'
      ;;

    linux*)
      case $CC in
	lt_prog_compiler_wl_F77='-Wl,'
	lt_prog_compiler_pic_F77='-KPIC'
	lt_prog_compiler_static_F77='-static'
        ;;
        lt_prog_compiler_wl_F77='-Wl,'
        # All Alpha code is PIC.
        lt_prog_compiler_static_F77='-non_shared'
        ;;
      esac
      ;;

    osf3* | osf4* | osf5*)
      lt_prog_compiler_wl_F77='-Wl,'
      # All OSF/1 code is PIC.
      lt_prog_compiler_static_F77='-non_shared'
      ;;

    sco3.2v5*)
      lt_prog_compiler_pic_F77='-Kpic'
      lt_prog_compiler_static_F77='-dn'
      ;;

    solaris*)
      lt_prog_compiler_wl_F77='-Wl,'
      lt_prog_compiler_pic_F77='-KPIC'
      lt_prog_compiler_static_F77='-Bstatic'
      ;;

    sunos4*)
      lt_prog_compiler_wl_F77='-Qoption ld '
      lt_prog_compiler_pic_F77='-PIC'
      lt_prog_compiler_static_F77='-Bstatic'
      ;;

    sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
      lt_prog_compiler_wl_F77='-Wl,'
      lt_prog_compiler_pic_F77='-KPIC'
      lt_prog_compiler_static_F77='-Bstatic'
      ;;

    sysv4*MP*)
      if test -d /usr/nec ;then
	lt_prog_compiler_pic_F77='-Kconform_pic'
	lt_prog_compiler_static_F77='-Bstatic'
      fi
      ;;

    uts4*)
      lt_prog_compiler_pic_F77='-pic'
      lt_prog_compiler_static_F77='-Bstatic'
      ;;

    *)
      lt_prog_compiler_can_build_shared_F77=no
      ;;
    esac
  fi

echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_F77" >&5
echo "${ECHO_T}$lt_prog_compiler_pic_F77" >&6

#
# Check to make sure the PIC flag actually works.
#
if test -n "$lt_prog_compiler_pic_F77"; then

echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic_F77 works" >&5
echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic_F77 works... $ECHO_C" >&6
if test "${lt_prog_compiler_pic_works_F77+set}" = set; then
  echo $ECHO_N "(cached) $ECHO_C" >&6
else
  lt_prog_compiler_pic_works_F77=no
  ac_outfile=conftest.$ac_objext
   printf "$lt_simple_compile_test_code" > conftest.$ac_ext
   lt_compiler_flag="$lt_prog_compiler_pic_F77"
   # Insert the option either (1) after the last *FLAGS variable, or
   # (2) before a word containing "conftest.", or (3) at the end.
   # Note that $ac_compile itself does not contain backslashes and begins
   # with a dollar sign (not a hyphen), so the echo should work correctly.
   # The option is referenced via a variable to avoid confusing sed.
   lt_compile=`echo "$ac_compile" | $SED \
   -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
   -e 's:$: $lt_compiler_flag:'`
   (eval echo "\"\$as_me:13241: $lt_compile\"" >&5)
   (eval "$lt_compile" 2>conftest.err)
   ac_status=$?
   cat conftest.err >&5
   echo "$as_me:13245: \$? = $ac_status" >&5
   if (exit $ac_status) && test -s "$ac_outfile"; then
     # The compiler can only warn and ignore the option if not recognized
     # So say no if there are warnings
     if test ! -s conftest.err; then
       lt_prog_compiler_pic_works_F77=yes
     fi
   fi
   $rm conftest*

fi
echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works_F77" >&5
echo "${ECHO_T}$lt_prog_compiler_pic_works_F77" >&6

if test x"$lt_prog_compiler_pic_works_F77" = xyes; then
    case $lt_prog_compiler_pic_F77 in
     "" | " "*) ;;
     *) lt_prog_compiler_pic_F77=" $lt_prog_compiler_pic_F77" ;;
     esac
else
    lt_prog_compiler_pic_F77=
     lt_prog_compiler_can_build_shared_F77=no
fi

fi
case "$host_os" in
  # For platforms which do not support PIC, -DPIC is meaningless:
  *djgpp*)
    lt_prog_compiler_pic_F77=
    ;;
  *)
    lt_prog_compiler_pic_F77="$lt_prog_compiler_pic_F77"
    ;;
esac

echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5
echo $ECHO_N "checking if $compiler supports -c -o file.$ac_objext... $ECHO_C" >&6
if test "${lt_cv_prog_compiler_c_o_F77+set}" = set; then
  echo $ECHO_N "(cached) $ECHO_C" >&6
else
  lt_cv_prog_compiler_c_o_F77=no
   $rm -r conftest 2>/dev/null
   mkdir conftest
   cd conftest
   mkdir out
   printf "$lt_simple_compile_test_code" > conftest.$ac_ext

   lt_compiler_flag="-o out/conftest2.$ac_objext"
   # Insert the option either (1) after the last *FLAGS variable, or
   # (2) before a word containing "conftest.", or (3) at the end.
   # Note that $ac_compile itself does not contain backslashes and begins
   # with a dollar sign (not a hyphen), so the echo should work correctly.
   lt_compile=`echo "$ac_compile" | $SED \
   -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
   -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
   -e 's:$: $lt_compiler_flag:'`
   (eval echo "\"\$as_me:13301: $lt_compile\"" >&5)
   (eval "$lt_compile" 2>out/conftest.err)
   ac_status=$?
   cat out/conftest.err >&5
   echo "$as_me:13305: \$? = $ac_status" >&5
   if (exit $ac_status) && test -s out/conftest2.$ac_objext
   then
     # The compiler can only warn and ignore the option if not recognized
     # So say no if there are warnings
     if test ! -s out/conftest.err; then
       lt_cv_prog_compiler_c_o_F77=yes
     fi
   fi
   chmod u+w .
   $rm conftest*
   # SGI C++ compiler will create directory out/ii_files/ for
   # template instantiation
   test -d out/ii_files && $rm out/ii_files/* && rmdir out/ii_files
   $rm out/* && rmdir out
   cd ..
   rmdir conftest
   $rm conftest*

fi
echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_c_o_F77" >&5
echo "${ECHO_T}$lt_cv_prog_compiler_c_o_F77" >&6


hard_links="nottested"
if test "$lt_cv_prog_compiler_c_o_F77" = no && test "$need_locks" != no; then
  # do not overwrite the value of need_locks provided by the user
  echo "$as_me:$LINENO: checking if we can lock with hard links" >&5
echo $ECHO_N "checking if we can lock with hard links... $ECHO_C" >&6
  hard_links=yes
  $rm conftest*
  ln conftest.a conftest.b 2>/dev/null && hard_links=no
  touch conftest.a
  ln conftest.a conftest.b 2>&5 || hard_links=no
  ln conftest.a conftest.b 2>/dev/null && hard_links=no
  echo "$as_me:$LINENO: result: $hard_links" >&5
echo "${ECHO_T}$hard_links" >&6
  if test "$hard_links" = no; then
    { echo "$as_me:$LINENO: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5
echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;}
    need_locks=warn
  fi
else
  need_locks=no
fi

echo "$as_me:$LINENO: checking whether the $compiler linker ($LD) supports shared libraries" >&5
echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared libraries... $ECHO_C" >&6

  runpath_var=
  allow_undefined_flag_F77=
  enable_shared_with_static_runtimes_F77=no
  archive_cmds_F77=
  archive_expsym_cmds_F77=
  old_archive_From_new_cmds_F77=
  old_archive_from_expsyms_cmds_F77=
  export_dynamic_flag_spec_F77=
  whole_archive_flag_spec_F77=
  thread_safe_flag_spec_F77=
  hardcode_libdir_flag_spec_F77=
  hardcode_libdir_flag_spec_ld_F77=
  hardcode_libdir_separator_F77=
  hardcode_direct_F77=no
  hardcode_minus_L_F77=no
  hardcode_shlibpath_var_F77=unsupported
  link_all_deplibs_F77=unknown
  hardcode_automatic_F77=no
  module_cmds_F77=
  module_expsym_cmds_F77=
  always_export_symbols_F77=no
  export_symbols_cmds_F77='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
  # include_expsyms should be a list of space-separated symbols to be *always*
  # included in the symbol list
  include_expsyms_F77=
  # exclude_expsyms can be an extended regexp of symbols to exclude
  # it will be wrapped by ` (' and `)$', so one must not match beginning or
  # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
  # as well as any symbol that contains `d'.
  exclude_expsyms_F77="_GLOBAL_OFFSET_TABLE_"
  # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
  # platforms (ab)use it in PIC code, but their linkers get confused if
  # the symbol is explicitly referenced.  Since portable code cannot
  # rely on this symbol name, it's probably fine to never include it in
  # preloaded symbol tables.
  extract_expsyms_cmds=

  case $host_os in
  cygwin* | mingw* | pw32*)
    # FIXME: the MSVC++ port hasn't been tested in a loooong time
    # When not using gcc, we currently assume that we are using
    # Microsoft Visual C++.
    if test "$GCC" != yes; then
      with_gnu_ld=no
    fi
    ;;
  openbsd*)
    with_gnu_ld=no
    ;;
  esac

  ld_shlibs_F77=yes
  if test "$with_gnu_ld" = yes; then
    # If archive_cmds runs LD, not CC, wlarc should be empty
    wlarc='${wl}'

    # See if GNU ld supports shared libraries.
    case $host_os in
    aix3* | aix4* | aix5*)
      # On AIX/PPC, the GNU linker is very broken
      if test "$host_cpu" != ia64; then
	ld_shlibs_F77=no
	cat <<EOF 1>&2

*** Warning: the GNU linker, at least up to release 2.9.1, is reported
*** to be unable to reliably create shared libraries on AIX.
*** Therefore, libtool is disabling shared libraries support.  If you
*** really care for shared libraries, you may want to modify your PATH
*** so that a non-GNU linker is found, and then restart.

EOF
      fi
      ;;

    amigaos*)
      archive_cmds_F77='$rm $output_objdir/a2ixlibrary.data;$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data;$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data;$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data;$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data;$AR $AR_FLAGS $lib $libobjs;$RANLIB $lib;(cd $output_objdir && a2ixlibrary -32)'
      hardcode_libdir_flag_spec_F77='-L$libdir'
      hardcode_minus_L_F77=yes

      # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
      # that the semantics of dynamic libraries on AmigaOS, at least up
      # to version 4, is to share data among multiple programs linked
      # with the same dynamic library.  Since this doesn't match the
      # behavior of shared libraries on other platforms, we can't use
      # them.
      ld_shlibs_F77=no
      ;;

    beos*)
      if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
	allow_undefined_flag_F77=unsupported
	# Joseph Beckenbach <jrb3@best.com> says some releases of gcc
	# support --undefined.  This deserves some investigation.  FIXME
	archive_cmds_F77='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
      else
	ld_shlibs_F77=no
      fi
      ;;

    cygwin* | mingw* | pw32*)
      # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, F77) is actually meaningless,
      # as there is no search path for DLLs.
      hardcode_libdir_flag_spec_F77='-L$libdir'
      allow_undefined_flag_F77=unsupported
      always_export_symbols_F77=no
      enable_shared_with_static_runtimes_F77=yes
      export_symbols_cmds_F77='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGS] /s/.* \([^ ]*\)/\1 DATA/'\'' | $SED -e '\''/^[AITW] /s/.* //'\'' | sort | uniq > $export_symbols'

      if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
        archive_cmds_F77='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
	# If the export-symbols file already is a .def file (1st line
	# is EXPORTS), use it as is; otherwise, prepend...
	archive_expsym_cmds_F77='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
	  cp $export_symbols $output_objdir/$soname.def;
	else
	  echo EXPORTS > $output_objdir/$soname.def;
	  cat $export_symbols >> $output_objdir/$soname.def;
	fi;$CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000  ${wl}--out-implib,$lib'
      else
	ld_shlibs=no
      fi
      ;;

    netbsd*)
      if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
	archive_cmds_F77='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
	wlarc=
      else
	archive_cmds_F77='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
	archive_expsym_cmds_F77='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
      fi
      ;;

    solaris* | sysv5*)
      if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then
	ld_shlibs_F77=no
	cat <<EOF 1>&2

*** Warning: The releases 2.8.* of the GNU linker cannot reliably
*** create shared libraries on Solaris systems.  Therefore, libtool
*** is disabling shared libraries support.  We urge you to upgrade GNU
*** binutils to release 2.9.1 or newer.  Another option is to modify
*** your PATH or compiler configuration so that the native linker is
*** used, and then restart.

EOF
      elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
	archive_cmds_F77='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
	archive_expsym_cmds_F77='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
      else
	ld_shlibs_F77=no
      fi
      ;;

    sunos4*)
      archive_cmds_F77='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
      wlarc=
      hardcode_direct_F77=yes
      hardcode_shlibpath_var_F77=no
      ;;

  linux*)
    if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
        tmp_archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
	archive_cmds_F77="$tmp_archive_cmds"
      supports_anon_versioning=no
      case `$LD -v 2>/dev/null` in
        *\ 01.* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11
        *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
        *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
        *\ 2.11.*) ;; # other 2.11 versions
        *) supports_anon_versioning=yes ;;
      esac
      if test $supports_anon_versioning = yes; then
        archive_expsym_cmds_F77='$echo "{ global:" > $output_objdir/$libname.ver;cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver; $echo "local: *; };" >> $output_objdir/$libname.ver;
        $CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
      else
        archive_expsym_cmds_F77="$tmp_archive_cmds"
      fi
    else
      ld_shlibs_F77=no
    fi
    ;;

    *)
      if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
	archive_cmds_F77='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
	archive_expsym_cmds_F77='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
      else
	ld_shlibs_F77=no
      fi
      ;;
    esac

    if test "$ld_shlibs_F77" = yes; then
      runpath_var=LD_RUN_PATH
      hardcode_libdir_flag_spec_F77='${wl}--rpath ${wl}$libdir'
      export_dynamic_flag_spec_F77='${wl}--export-dynamic'
      # ancient GNU ld didn't support --whole-archive et. al.
      if $LD --help 2>&1 | grep 'no-whole-archive' > /dev/null; then
 	whole_archive_flag_spec_F77="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
      else
  	whole_archive_flag_spec_F77=
      fi
    fi
  else
    # PORTME fill in a description of your system's linker (not GNU ld)
    case $host_os in
    aix3*)
      allow_undefined_flag_F77=unsupported
      always_export_symbols_F77=yes
      archive_expsym_cmds_F77='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE;$AR $AR_FLAGS $lib $output_objdir/$soname'
      # Note: this linker hardcodes the directories in LIBPATH if there
      # are no directories specified by -L.
      hardcode_minus_L_F77=yes
      if test "$GCC" = yes && test -z "$link_static_flag"; then
	# Neither direct hardcoding nor static linking is supported with a
	# broken collect2.
	hardcode_direct_F77=unsupported
      fi
      ;;

    aix4* | aix5*)
      if test "$host_cpu" = ia64; then
	# On IA64, the linker does run time linking by default, so we don't
	# have to do anything special.
	aix_use_runtimelinking=no
	exp_sym_flag='-Bexport'
	no_entry_flag=""
      else
	# If we're using GNU nm, then we don't want the "-C" option.
	# -C means demangle to AIX nm, but means don't demangle with GNU nm
	if $NM -V 2>&1 | grep 'GNU' > /dev/null; then
	  export_symbols_cmds_F77='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$2 == "T") || (\$2 == "D") || (\$2 == "B")) && (substr(\$3,1,1) != ".")) { print \$3 } }'\'' | sort -u > $export_symbols'
	else
	  export_symbols_cmds_F77='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$2 == "T") || (\$2 == "D") || (\$2 == "B")) && (substr(\$3,1,1) != ".")) { print \$3 } }'\'' | sort -u > $export_symbols'
	fi
	aix_use_runtimelinking=no

	# Test if we are trying to use run time linking or normal
	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
	# need to do runtime linking.
	case $host_os in aix4.[23]|aix4.[23].*|aix5*)
	  for ld_flag in $LDFLAGS; do
  	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
  	    aix_use_runtimelinking=yes
  	    break
  	  fi
	  done
	esac

	exp_sym_flag='-bexport'
	no_entry_flag='-bnoentry'
      fi

      # When large executables or shared objects are built, AIX ld can
      # have problems creating the table of contents.  If linking a library
      # or program results in "error TOC overflow" add -mminimal-toc to
      # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
      # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.

      archive_cmds_F77=''
      hardcode_direct_F77=yes
      hardcode_libdir_separator_F77=':'
      link_all_deplibs_F77=yes

      if test "$GCC" = yes; then
	case $host_os in aix4.012|aix4.012.*)
	# We only want to do this on AIX 4.2 and lower, the check
	# below for broken collect2 doesn't work under 4.3+
	  collect2name=`${CC} -print-prog-name=collect2`
	  if test -f "$collect2name" && \
  	   strings "$collect2name" | grep resolve_lib_name >/dev/null
	  then
  	  # We have reworked collect2
  	  hardcode_direct_F77=yes
	  else
  	  # We have old collect2
  	  hardcode_direct_F77=unsupported
  	  # It fails to find uninstalled libraries when the uninstalled
  	  # path is not listed in the libpath.  Setting hardcode_minus_L
  	  # to unsupported forces relinking
  	  hardcode_minus_L_F77=yes
  	  hardcode_libdir_flag_spec_F77='-L$libdir'
  	  hardcode_libdir_separator_F77=
	  fi
	esac
	shared_flag='-shared'
      else
	# not using gcc
	if test "$host_cpu" = ia64; then
  	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
  	# chokes on -Wl,-G. The following line is correct:
	  shared_flag='-G'
	else
  	if test "$aix_use_runtimelinking" = yes; then
	    shared_flag='${wl}-G'
	  else
	    shared_flag='${wl}-bM:SRE'
  	fi
	fi
      fi

      # It seems that -bexpall does not export symbols beginning with
      # underscore (_), so it is better to generate a list of symbols to export.
      always_export_symbols_F77=yes
      if test "$aix_use_runtimelinking" = yes; then
	# Warning - without using the other runtime loading flags (-brtl),
	# -berok will link without error, but may produce a broken library.
	allow_undefined_flag_F77='-berok'
       # Determine the default libpath from the value encoded in an empty executable.
       cat >conftest.$ac_ext <<_ACEOF
      program main

      end
_ACEOF
rm -f conftest.$ac_objext conftest$ac_exeext
if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
  grep -v '^ *+' conftest.er1 >conftest.err
  rm -f conftest.er1
  cat conftest.err >&5
  echo "$as_me:$LINENO: \$? = $ac_status" >&5
  (exit $ac_status); } &&
	 { ac_try='test -z "$ac_f77_werror_flag"
			 || test ! -s conftest.err'
  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
  (eval $ac_try) 2>&5
  ac_status=$?
  echo "$as_me:$LINENO: \$? = $ac_status" >&5
  (exit $ac_status); }; } &&
	 { ac_try='test -s conftest$ac_exeext'
  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
  (eval $ac_try) 2>&5
  ac_status=$?
  echo "$as_me:$LINENO: \$? = $ac_status" >&5
  (exit $ac_status); }; }; then

aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
}'`
# Check for a 64-bit object if we didn't find anything.
if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
}'`; fi
else
  echo "$as_me: failed program was:" >&5
rm -f conftest.err conftest.$ac_objext \
      conftest$ac_exeext conftest.$ac_ext
if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi

       hardcode_libdir_flag_spec_F77='${wl}-blibpath:$libdir:'"$aix_libpath"
	archive_expsym_cmds_F77="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
       else
	if test "$host_cpu" = ia64; then
	  hardcode_libdir_flag_spec_F77='${wl}-R $libdir:/usr/lib:/lib'
	  allow_undefined_flag_F77="-z nodefs"
	  archive_expsym_cmds_F77="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
	else
	 # Determine the default libpath from the value encoded in an empty executable.
	 cat >conftest.$ac_ext <<_ACEOF
      program main

      end
_ACEOF
rm -f conftest.$ac_objext conftest$ac_exeext
if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
  grep -v '^ *+' conftest.er1 >conftest.err
  rm -f conftest.er1
  cat conftest.err >&5
  echo "$as_me:$LINENO: \$? = $ac_status" >&5
  (exit $ac_status); } &&
	 { ac_try='test -z "$ac_f77_werror_flag"
			 || test ! -s conftest.err'
  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
  (eval $ac_try) 2>&5
  ac_status=$?
  echo "$as_me:$LINENO: \$? = $ac_status" >&5
  (exit $ac_status); }; } &&
	 { ac_try='test -s conftest$ac_exeext'
  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
  (eval $ac_try) 2>&5
  ac_status=$?
  echo "$as_me:$LINENO: \$? = $ac_status" >&5
  (exit $ac_status); }; }; then

aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
}'`
# Check for a 64-bit object if we didn't find anything.
if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
}'`; fi
else
  echo "$as_me: failed program was:" >&5
rm -f conftest.err conftest.$ac_objext \
      conftest$ac_exeext conftest.$ac_ext
if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi

	 hardcode_libdir_flag_spec_F77='${wl}-blibpath:$libdir:'"$aix_libpath"
	  # Warning - without using the other run time loading flags,
	  # -berok will link without error, but may produce a broken library.
	  no_undefined_flag_F77=' ${wl}-bernotok'
	  allow_undefined_flag_F77=' ${wl}-berok'
	  # -bexpall does not export symbols beginning with underscore (_)
	  always_export_symbols_F77=yes
	  # Exported symbols can be pulled into shared objects from archives
	  whole_archive_flag_spec_F77=' '
	  archive_cmds_need_lc_F77=yes
	  # This is similar to how AIX traditionally builds it's shared libraries.
	  archive_expsym_cmds_F77="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag};$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
      archive_cmds_F77='$rm $output_objdir/a2ixlibrary.data;$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data;$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data;$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data;$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data;$AR $AR_FLAGS $lib $libobjs;$RANLIB $lib;(cd $output_objdir && a2ixlibrary -32)'
      hardcode_libdir_flag_spec_F77='-L$libdir'
      hardcode_minus_L_F77=yes
      # see comment about different semantics on the GNU ld section
      ld_shlibs_F77=no
      ;;

      export_dynamic_flag_spec_F77=-rdynamic
      ;;

    cygwin* | mingw* | pw32*)
      # When not using gcc, we currently assume that we are using
      # Microsoft Visual C++.
      # hardcode_libdir_flag_spec is actually meaningless, as there is
      # no search path for DLLs.
      hardcode_libdir_flag_spec_F77=' '
      allow_undefined_flag_F77=unsupported
      # Tell ltmain to make .lib files, not .a files.
      libext=lib
      # Tell ltmain to make .dll files, not .so files.
      # FIXME: Setting linknames here is a bad hack.
      archive_cmds_F77='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | $SED -e '\''s/ -lc$//'\''` -link -dll;linknames='
      # The linker will automatically build a .lib file if we build a DLL.
      old_archive_From_new_cmds_F77='true'
      # FIXME: Should let the user specify the lib program.
      old_archive_cmds_F77='lib /OUT:$oldlib$oldobjs$old_deplibs'
      fix_srcfile_path='`cygpath -w "$srcfile"`'
      enable_shared_with_static_runtimes_F77=yes
      ;;

    darwin* | rhapsody*)
      case "$host_os" in
        rhapsody* | darwin1.[012])
         allow_undefined_flag_F77='${wl}-undefined ${wl}suppress'
         ;;
       *) # Darwin 1.3 on
         if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then
           allow_undefined_flag_F77='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
         else
           case ${MACOSX_DEPLOYMENT_TARGET} in
             10.[012])
               allow_undefined_flag_F77='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
               ;;
             10.*)
               allow_undefined_flag_F77='${wl}-undefined ${wl}dynamic_lookup'
               ;;
           esac
         fi
         ;;
      hardcode_direct_F77=no
      hardcode_automatic_F77=yes
      hardcode_shlibpath_var_F77=unsupported
    if test "$GCC" = yes ; then
    	output_verbose_link_cmd='echo'
        archive_cmds_F77='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
      module_cmds_F77='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
      # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
      archive_expsym_cmds_F77='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym;$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring;nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
      module_expsym_cmds_F77='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym;$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags;nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
    else
      case "$cc_basename" in
        xlc*)
         output_verbose_link_cmd='echo'
         archive_cmds_F77='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
         module_cmds_F77='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
          # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
         archive_expsym_cmds_F77='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym;$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring;nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
          module_expsym_cmds_F77='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym;$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags;nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
          ;;
       *)
         ld_shlibs_F77=no
          ;;
      esac
    fi
      ;;

    dgux*)
      archive_cmds_F77='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
      hardcode_libdir_flag_spec_F77='-L$libdir'
      hardcode_shlibpath_var_F77=no
      ;;

    freebsd1*)
      ld_shlibs_F77=no
      ;;

    # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
    # support.  Future versions do this automatically, but an explicit c++rt0.o
    # does not break anything, and helps significantly (at the cost of a little
    # extra space).
    freebsd2.2*)
      archive_cmds_F77='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
      hardcode_libdir_flag_spec_F77='-R$libdir'
      hardcode_direct_F77=yes
      hardcode_shlibpath_var_F77=no
      ;;

    # Unfortunately, older versions of FreeBSD 2 do not have this feature.
    freebsd2*)
      archive_cmds_F77='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
      hardcode_direct_F77=yes
      hardcode_minus_L_F77=yes
      hardcode_shlibpath_var_F77=no
      ;;

    # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
      archive_cmds_F77='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
      hardcode_libdir_flag_spec_F77='-R$libdir'
      hardcode_direct_F77=yes
      hardcode_shlibpath_var_F77=no
      ;;

    hpux9*)
      if test "$GCC" = yes; then
	archive_cmds_F77='$rm $output_objdir/$soname;$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags;test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
	archive_cmds_F77='$rm $output_objdir/$soname;$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags;test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
      fi
      hardcode_libdir_flag_spec_F77='${wl}+b ${wl}$libdir'
      hardcode_libdir_separator_F77=:
      hardcode_direct_F77=yes

      # hardcode_minus_L: Not really in the search PATH,
      # but as the default location of the library.
      hardcode_minus_L_F77=yes
      export_dynamic_flag_spec_F77='${wl}-E'
      ;;

    hpux10* | hpux11*)
      if test "$GCC" = yes -a "$with_gnu_ld" = no; then
	case "$host_cpu" in
	hppa*64*|ia64*)
	  archive_cmds_F77='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
	  ;;
	*)
	  archive_cmds_F77='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
	  ;;
	esac
      else
	case "$host_cpu" in
	hppa*64*|ia64*)
	  archive_cmds_F77='$LD -b +h $soname -o $lib $libobjs $deplibs $linker_flags'
	  ;;
	*)
	  archive_cmds_F77='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
	  ;;
	esac
      fi
      if test "$with_gnu_ld" = no; then
	case "$host_cpu" in
	hppa*64*)
	  hardcode_libdir_flag_spec_F77='${wl}+b ${wl}$libdir'
	  hardcode_libdir_flag_spec_ld_F77='+b $libdir'
	  hardcode_libdir_separator_F77=:
	  hardcode_direct_F77=no
	  hardcode_shlibpath_var_F77=no
	  ;;
	ia64*)
	  hardcode_libdir_flag_spec_F77='-L$libdir'
	  hardcode_direct_F77=no
	  hardcode_shlibpath_var_F77=no

	  # hardcode_minus_L: Not really in the search PATH,
	  # but as the default location of the library.
	  hardcode_minus_L_F77=yes
	  ;;
	*)
	  hardcode_libdir_flag_spec_F77='${wl}+b ${wl}$libdir'
	  hardcode_libdir_separator_F77=:
	  hardcode_direct_F77=yes
	  export_dynamic_flag_spec_F77='${wl}-E'

	  # hardcode_minus_L: Not really in the search PATH,
	  # but as the default location of the library.
	  hardcode_minus_L_F77=yes
	  ;;
	esac
      fi
      ;;

    irix5* | irix6* | nonstopux*)
      if test "$GCC" = yes; then
	archive_cmds_F77='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
      else
	archive_cmds_F77='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
	hardcode_libdir_flag_spec_ld_F77='-rpath $libdir'
      fi
      hardcode_libdir_flag_spec_F77='${wl}-rpath ${wl}$libdir'
      hardcode_libdir_separator_F77=:
      link_all_deplibs_F77=yes
      ;;

    netbsd*)
      if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
	archive_cmds_F77='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
      else
	archive_cmds_F77='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF
      fi
      hardcode_libdir_flag_spec_F77='-R$libdir'
      hardcode_direct_F77=yes
      hardcode_shlibpath_var_F77=no
      ;;

    newsos6)
      archive_cmds_F77='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
      hardcode_direct_F77=yes
      hardcode_libdir_flag_spec_F77='${wl}-rpath ${wl}$libdir'
      hardcode_libdir_separator_F77=:
      hardcode_shlibpath_var_F77=no
      ;;

    openbsd*)
      hardcode_direct_F77=yes
      hardcode_shlibpath_var_F77=no
      if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
	archive_cmds_F77='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
	archive_expsym_cmds_F77='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
	hardcode_libdir_flag_spec_F77='${wl}-rpath,$libdir'
	export_dynamic_flag_spec_F77='${wl}-E'