NetBSD Problem Report #47359

From www@NetBSD.org  Fri Dec 21 06:59:06 2012
Return-Path: <www@NetBSD.org>
Received: from mail.netbsd.org (mail.netbsd.org [149.20.53.66])
	by www.NetBSD.org (Postfix) with ESMTP id 6F20463EABC
	for <gnats-bugs@gnats.NetBSD.org>; Fri, 21 Dec 2012 06:59:06 +0000 (UTC)
Message-Id: <20121221065905.6EBDB63EABC@www.NetBSD.org>
Date: Fri, 21 Dec 2012 06:59:05 +0000 (UTC)
From: richard.palo@baou.fr
Reply-To: richard.palo@baou.fr
To: gnats-bugs@NetBSD.org
Subject: pkgsrc/devel/libtool problems with solaris, g++ and solaris ld
X-Send-Pr-Version: www-1.0

>Number:         47359
>Category:       pkg
>Synopsis:       pkgsrc/devel/libtool problems with solaris, g++ and solaris ld
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    joerg
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Dec 21 07:00:01 +0000 2012
>Last-Modified:  Thu Feb 21 13:50:04 +0000 2013
>Originator:     Richard PALO
>Release:        pkgsrc trunk
>Organization:
>Environment:
SunOS devzoneX 5.11 oi_151a7 i86pc i386 i86pc Solaris

>Description:
It has been determined when trying to build textproc/rarian with gcc4.7.2 on solaris (openindiana) with solaris ld that the shared library generated is missing the DT_SONAME, which causes problems for *all* programs that wish to link to it (for example meld).

This has been reported and fixed upstream here:
https://savannah.gnu.org/support/?108201

Unfortunately, given the complexity of pkgsrc interaction with libtool (libtool-base), I am not able to intuit the right combination to build after patching libltdl/m4/libtool.m4
neither on version 2.2.6b currently in pkgsrc, nor the latest stable 2.4.2.

Could the pkgsrc libtool maintainer do the necessary...
>How-To-Repeat:
to observe the problem after building rarian, either :
elfdump -d librarian.so | grep SONAME
  or
objdump -p librarian.so | grep SONAME

absence of a SONAME (that is DT_SONAME) object is confirmation of the bug.
>Fix:
diff --git a/m4/libtool.m4 b/m4/libtool.m4
index 3cf14e7..cd6db4e 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -6755,9 +6755,9 @@ if test yes != "$_lt_caught_CXX_error"; then
            if test yes,no = "$GXX,$with_gnu_ld"; then
              _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs'
              if $CC --version | $GREP -v '^2\.7' > /dev/null; then
-               _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
+               _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
                _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-                 $CC -shared $pic_flag -nostdlib $wl-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+                 $CC -shared $pic_flag -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'

                # Commands to make compiler produce verbose output that lists
                # what "hidden" libraries, object files and flags are used when
@@ -6766,9 +6766,9 @@ if test yes != "$_lt_caught_CXX_error"; then
              else
                # g++ 2.7 appears to require '-G' NOT '-shared' on this
                # platform.
-               _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
+               _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
                _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-                 $CC -G -nostdlib $wl-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+                 $CC -G -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'

                # Commands to make compiler produce verbose output that lists
                # what "hidden" libraries, object files and flags are used when

>Release-Note:

>Audit-Trail:

Responsible-Changed-From-To: pkg-manager->joerg
Responsible-Changed-By: obache@NetBSD.org
Responsible-Changed-When: Tue, 25 Dec 2012 11:36:58 +0000
Responsible-Changed-Why:
Over to owner.


From: Richard PALO <richard.palo@baou.fr>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: pkg/47359 (pkgsrc/devel/libtool problems with solaris, g++ and
 solaris ld)
Date: Fri, 04 Jan 2013 10:16:04 +0100

 Le 25/12/12 12:36, obache@NetBSD.org a écrit :
 > Synopsis: pkgsrc/devel/libtool problems with solaris, g++ and solaris ld
 >
 > Responsible-Changed-From-To: pkg-manager->joerg
 > Responsible-Changed-By: obache@NetBSD.org
 > Responsible-Changed-When: Tue, 25 Dec 2012 11:36:58 +0000
 > Responsible-Changed-Why:
 > Over to owner.
 >
 >
 >
 >
 >
 What is the status of this?
 NB it impacts the libtool build of *all* shared objects on solaris built 
 by g++.

 I'd be happy to help more, the patch is already upstream, but the 
 special "manual" nature of building libtool in pkgsrc seems to inhibit a 
 clean working build (at least for me) after patching libtool.m4.

From: Richard PALO <richard.palo@baou.fr>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: pkg/47359 (pkgsrc/devel/libtool problems with solaris, g++ and
 solaris ld)
Date: Wed, 20 Feb 2013 13:40:39 +0100

 This is a multi-part message in MIME format.
 --------------030508090604010200070205
 Content-Type: text/plain; charset=ISO-8859-1; format=flowed
 Content-Transfer-Encoding: 8bit

 Worked out that configure needed patching as well...strange, libtool.m4 
 should have been invoked... oh well.

 Now, regardless of all the noise, the build/install is successful and 
 seems to work as expected.

 Since it hasn't yet been promoted in pkgsrc, didn't try 2.6.2.
 Probably worth to wait for a few weeks until the next release of libtool 
 to pickup the upstream fixes.

 Cheers,

 > richard@devzone:~/src/pkgsrc/devel/libtool$ cvs diff
 > Avertissement : pas de données xauth ; utilisation de données d'authentification simulées pour la transmission X11.
 > ? patches/patch-configure
 > ? patches/patch-libltdl_m4_libtool.m4
 > Index: distinfo
 > ===================================================================
 > RCS file: /cvsroot/pkgsrc/devel/libtool/distinfo,v
 > retrieving revision 1.85
 > diff -u -p -r1.85 distinfo
 > --- distinfo    26 Jul 2012 12:04:03 -0000      1.85
 > +++ distinfo    20 Feb 2013 12:32:55 -0000
 > @@ -4,6 +4,7 @@ SHA1 (libtool-2.2.6b.tar.gz) = 5afa73c8e
 >  RMD160 (libtool-2.2.6b.tar.gz) = 02d8c1460946a1a0054b3ccb6b54d2404b53c2ef
 >  Size (libtool-2.2.6b.tar.gz) = 2347317 bytes
 >  SHA1 (patch-aa) = 84e916bf868ada2ebeffe940f03537fadd751751
 > -SHA1 (patch-ab) = d71723a66b65ccdd5d2100bf98c9796e15d6da40
 >  SHA1 (patch-ac) = d4d6987ea14180891737a3defa37689d7c35853e
 >  SHA1 (patch-ad) = 1dd8037f79a95572dc7b592c5e77d901fdf5cbe9
 > +SHA1 (patch-configure) = 30999653f720c02428452554130ecbd314eff8dc
 > +SHA1 (patch-libltdl_m4_libtool.m4) = b39c7578582456d7597ee8e2b7540ffe77c04b27
 > cvs diff: cannot find patches/patch-ab


 --------------030508090604010200070205
 Content-Type: text/plain; charset=UTF-8;
  name="patch-configure"
 Content-Transfer-Encoding: 7bit
 Content-Disposition: attachment;
  filename="patch-configure"

 $NetBSD$

 --- configure.orig	2009-11-16 13:14:55.000000000 +0000
 +++ configure
 @@ -822,6 +822,7 @@ CPP
  am__fastdepCC_FALSE
  am__fastdepCC_TRUE
  CCDEPMODE
 +am__nodep
  AMDEPBACKSLASH
  AMDEP_FALSE
  AMDEP_TRUE
 @@ -3257,11 +3258,11 @@ MAKEINFO=${MAKEINFO-"${am_missing_run}ma

  # We need awk for the "check" target.  The system "awk" is bad on
  # some platforms.
 -# Always define AMTAR for backward compatibility.
 +# Always define AMTAR for backward compatibility.  Yes, it's still used
 +# in the wild :-(  We should find a proper way to deprecate it ...
 +AMTAR='$${TAR-tar}'

 -AMTAR=${AMTAR-"${am_missing_run}tar"}
 -
 -am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
 +am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'



 @@ -4145,6 +4146,7 @@ fi
  if test "x$enable_dependency_tracking" != xno; then
    am_depcomp="$ac_aux_dir/depcomp"
    AMDEPBACKSLASH='\'
 +  am__nodep='_no'
  fi
   if test "x$enable_dependency_tracking" != xno; then
    AMDEP_TRUE=
 @@ -4169,6 +4171,7 @@ else
    # instance it was reported that on HP-UX the gcc test will end up
    # making a dummy file named `D' -- because `-MD' means `put the output
    # in D'.
 +  rm -rf conftest.dir
    mkdir conftest.dir
    # Copy depcomp to subdir because otherwise we won't find it if we're
    # using a relative directory.
 @@ -4228,7 +4231,7 @@ else
  	break
        fi
        ;;
 -    msvisualcpp | msvcmsys)
 +    msvc7 | msvc7msys | msvisualcpp | msvcmsys)
        # This compiler won't grok `-c -o', but also, the minuso test has
        # not run yet.  These depmodes are late enough in the game, and
        # so weak that their functioning should not be impacted.
 @@ -5293,13 +5296,20 @@ else
      lt_cv_sys_max_cmd_len=8192;
      ;;

 +  mint*)
 +    # On MiNT we can support fairly large cmd lengths, but it takes
 +    # a while to run the tests, so let's restrict it to something
 +    # reasonable.
 +    lt_cv_sys_max_cmd_len=8192;
 +    ;;
 +
    amigaos*)
      # On AmigaOS with pdksh, this test takes hours, literally.
      # So we just punt and use a minimum line length of 8192.
      lt_cv_sys_max_cmd_len=8192;
      ;;

 -  netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
 +  netbsd* | freebsd* | openbsd* | mirbsd* | darwin* | dragonfly*)
      # This has been around since 386BSD, at least.  Likely further.
      if test -x /sbin/sysctl; then
        lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
 @@ -5665,6 +5675,10 @@ gnu*)
    lt_cv_deplibs_check_method=pass_all
    ;;

 +haiku*)
 +  lt_cv_deplibs_check_method=pass_all
 +  ;;
 +
  hpux10.20* | hpux11*)
    lt_cv_file_magic_cmd=/usr/bin/file
    case $host_cpu in
 @@ -5703,6 +5717,17 @@ linux* | k*bsd*-gnu)
    lt_cv_deplibs_check_method=pass_all
    ;;

 +midnightbsd*)
 +  # might to use match_pattern like MirBSD, but there is no well-defined
 +  # naming scheme for libraries yet, as the current one is deprecated, and
 +  # the new one in a state of flux especially between mports and MirPorts
 +  lt_cv_deplibs_check_method=pass_all
 +  ;;
 +
 +mirbsd*)
 +  lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$'
 +  ;;
 +
  netbsd*)
    if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
      lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
 @@ -5718,7 +5743,7 @@ newos6*)
    ;;

  *nto* | *qnx*)
 -  lt_cv_deplibs_check_method=pass_all
 +  lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|S\.a)$'
    ;;

  openbsd*)
 @@ -7900,7 +7925,10 @@ for cc_temp in $compiler""; do
      *) break;;
    esac
  done
 -cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
 +# Return the actual command name, not our pkgsrc wrapper name because several
 +# decisions are made only based on compiler names
 +if test -n "$cc_temp" && new_cc_temp=`$cc_temp --wrappee-name 2>/dev/null`; then :; else new_cc_temp="$cc_temp"; fi
 +cc_basename=`$ECHO "X$new_cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`


  # Only perform the check for file, if the check method requires it
 @@ -8210,9 +8238,17 @@ $as_echo_n "checking for $compiler optio
        ;;

      darwin* | rhapsody*)
 -      # PIC is the default on this platform
 +      # PIC is the default on this platform, and static linking of
 +      # binaries generally doesn't work
        # Common symbols not allowed in MH_DYLIB files
        lt_prog_compiler_pic='-fno-common'
 +      lt_prog_compiler_static=''
 +      ;;
 +
 +    haiku*)
 +      # PIC is the default for Haiku.
 +      # The "-static" flag exists, but is broken.
 +      lt_prog_compiler_static=
        ;;

      hpux*)
 @@ -8234,6 +8270,13 @@ $as_echo_n "checking for $compiler optio
        # Instead, we relocate shared libraries at runtime.
        ;;

 +    mint*)
 +      # 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=no
 +      enable_shared=no
 +      ;;
 +
      msdosdjgpp*)
        # Just because we use GCC doesn't mean we suddenly get shared libraries
        # on systems that don't support them.
 @@ -8356,6 +8399,15 @@ $as_echo_n "checking for $compiler optio
        esac
        ;;

 +    mirbsd*)
 +      case $cc_basename in
 +      # pkgsrc f77 is f2c, which uses gcc underneath.
 +      f77*)
 +	lt_prog_compiler_wl='-Wl,'
 +	;;
 +      esac
 +      ;;
 +
      newsos6)
        lt_prog_compiler_pic='-KPIC'
        lt_prog_compiler_static='-Bstatic'
 @@ -8431,6 +8483,9 @@ $as_echo_n "checking for $compiler optio

  case $host_os in
    # For platforms which do not support PIC, -DPIC is meaningless:
 +  mint*)
 +    lt_prog_compiler_pic=
 +    ;;
    *djgpp*)
      lt_prog_compiler_pic=
      ;;
 @@ -8844,6 +8899,11 @@ _LT_EOF
        fi
        ;;

 +    haiku*)
 +      archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 +      link_all_deplibs=yes
 +      ;;
 +
      interix[3-9]*)
        hardcode_direct=no
        hardcode_shlibpath_var=no
 @@ -8930,7 +8990,7 @@ _LT_EOF
        ;;

      netbsd*)
 -      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
 +      if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null && echo __G95__ | $CC -cpp -E - | grep __G95__ >/dev/null; then
  	archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
  	wlarc=
        else
 @@ -9317,6 +9377,11 @@ if test -z "$aix_libpath"; then aix_libp
        hardcode_shlibpath_var=no
        ;;

 +      haiku*)
 +        archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 +        link_all_deplibs=yes
 +        ;;
 +
      hpux9*)
        if test "$GCC" = yes; then
  	archive_cmds='$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'
 @@ -9430,6 +9495,20 @@ rm -f core conftest.err conftest.$ac_obj
        link_all_deplibs=yes
        ;;

 +    mirbsd*)
 +      if test -f /usr/libexec/ld.so; then
 +	hardcode_direct=yes
 +	hardcode_shlibpath_var=no
 +	hardcode_direct_absolute=yes
 +	archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
 +	archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
 +	hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
 +	export_dynamic_flag_spec='${wl}-E'
 +      else
 +	ld_shlibs=no
 +      fi
 +      ;;
 +
      netbsd*)
        if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
  	archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
 @@ -9450,6 +9529,8 @@ rm -f core conftest.err conftest.$ac_obj
        ;;

      *nto* | *qnx*)
 +      archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 +      archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
        ;;

      openbsd*)
 @@ -10064,6 +10145,7 @@ beos*)
  bsdi[45]*)
    version_type=linux
    need_version=no
 +  need_lib_prefix=no
    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
    soname_spec='${libname}${release}${shared_ext}$major'
    finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
 @@ -10165,9 +10247,7 @@ freebsd1*)
    dynamic_linker=no
    ;;

 -freebsd* | dragonfly*)
 -  # DragonFly does not have aout.  When/if they implement a new
 -  # versioning mechanism, adjust this.
 +freebsd*)
    if test -x /usr/bin/objformat; then
      objformat=`/usr/bin/objformat`
    else
 @@ -10179,7 +10259,7 @@ freebsd* | dragonfly*)
    version_type=freebsd-$objformat
    case $version_type in
      freebsd-elf*)
 -      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
 +      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
        need_version=no
        need_lib_prefix=no
        ;;
 @@ -10202,13 +10282,24 @@ freebsd* | dragonfly*)
      shlibpath_overrides_runpath=no
      hardcode_into_libs=yes
      ;;
 -  *) # from 4.6 on, and DragonFly
 +  *) # from 4.6 on
      shlibpath_overrides_runpath=yes
      hardcode_into_libs=yes
      ;;
    esac
    ;;

 +dragonfly*)
 +  version_type=linux
 +  need_version=no
 +  need_lib_prefix=no
 +  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
 +  soname_spec='${libname}${release}${shared_ext}$major'
 +  shlibpath_var=LD_LIBRARY_PATH
 +  shlibpath_overrides_runpath=no
 +  hardcode_into_libs=yes
 +  ;;
 +
  gnu*)
    version_type=linux
    need_lib_prefix=no
 @@ -10219,6 +10310,19 @@ gnu*)
    hardcode_into_libs=yes
    ;;

 +haiku*)
 +  version_type=linux
 +  need_lib_prefix=no
 +  need_version=no
 +  dynamic_linker="$host_os runtime_loader"
 +  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
 +  soname_spec='${libname}${release}${shared_ext}$major'
 +  shlibpath_var=LIBRARY_PATH
 +  shlibpath_overrides_runpath=yes
 +  sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
 +  hardcode_into_libs=yes
 +  ;;
 +
  hpux9* | hpux10* | hpux11*)
    # Give a soname corresponding to the major version so that dld.sl refuses to
    # link against other versions.
 @@ -10280,12 +10384,7 @@ interix[3-9]*)
  irix5* | irix6* | nonstopux*)
    case $host_os in
      nonstopux*) version_type=nonstopux ;;
 -    *)
 -	if test "$lt_cv_prog_gnu_ld" = yes; then
 -		version_type=linux
 -	else
 -		version_type=irix
 -	fi ;;
 +    *) version_type=irix ;;
    esac
    need_lib_prefix=no
    need_version=no
 @@ -10375,16 +10474,38 @@ rm -f core conftest.err conftest.$ac_obj
    dynamic_linker='GNU/Linux ld.so'
    ;;

 +midnightbsd*)
 +  version_type=linux
 +  need_lib_prefix=no
 +  need_version=no
 +  library_names_spec='${libname}${release}${shared_ext}${versuffix2} ${libname}${release}${shared_ext} $libname${shared_ext}'
 +  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
 +  shlibpath_var=LD_LIBRARY_PATH
 +  shlibpath_overrides_runpath=yes
 +  hardcode_into_libs=yes
 +  ;;
 +
 +mirbsd*)
 +  version_type=linux
 +  sys_lib_search_path_spec="/usr/lib"
 +  sys_lib_dlsearch_path_spec="/usr/lib"
 +  need_lib_prefix=no
 +  need_version=no
 +  library_names_spec='${libname}${release}${shared_ext}${versuffix2} ${libname}${shared_ext}${versuffix2}'
 +  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
 +  shlibpath_var=LD_LIBRARY_PATH
 +  shlibpath_overrides_runpath=yes
 +  ;;
 +
  netbsd*)
 -  version_type=sunos
 +  version_type=linux
    need_lib_prefix=no
    need_version=no
 -  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
 -    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
 +  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
 +  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null && echo __G95__ | $CC -cpp -E - | $GREP __G95__ >/dev/null; then
      finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
      dynamic_linker='NetBSD (a.out) ld.so'
    else
 -    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
      soname_spec='${libname}${release}${shared_ext}$major'
      dynamic_linker='NetBSD ld.elf_so'
    fi
 @@ -10413,7 +10534,7 @@ newsos6)
    ;;

  openbsd*)
 -  version_type=sunos
 +  version_type=linux
    sys_lib_dlsearch_path_spec="/usr/lib"
    need_lib_prefix=no
    # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
 @@ -10421,7 +10542,7 @@ openbsd*)
      openbsd3.3 | openbsd3.3.*)	need_version=yes ;;
      *)				need_version=no  ;;
    esac
 -  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
 +  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
    shlibpath_var=LD_LIBRARY_PATH
    if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
 @@ -11910,6 +12031,9 @@ else
      # at 6.2 and later dlopen does load deplibs.
      lt_cv_sys_dlopen_deplibs=yes
      ;;
 +  mirbsd*)
 +    lt_cv_sys_dlopen_deplibs=yes
 +    ;;
    netbsd*)
      lt_cv_sys_dlopen_deplibs=yes
      ;;
 @@ -12473,6 +12597,7 @@ else
    # instance it was reported that on HP-UX the gcc test will end up
    # making a dummy file named `D' -- because `-MD' means `put the output
    # in D'.
 +  rm -rf conftest.dir
    mkdir conftest.dir
    # Copy depcomp to subdir because otherwise we won't find it if we're
    # using a relative directory.
 @@ -12532,7 +12657,7 @@ else
  	break
        fi
        ;;
 -    msvisualcpp | msvcmsys)
 +    msvc7 | msvc7msys | msvisualcpp | msvcmsys)
        # This compiler won't grok `-c -o', but also, the minuso test has
        # not run yet.  These depmodes are late enough in the game, and
        # so weak that their functioning should not be impacted.
 @@ -12587,9 +12712,7 @@ else
  fi


 -if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
 -    ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
 -    (test "X$CXX" != "Xg++"))) ; then
 +if test -n "$CXX" && test "X$CXX" != "Xno" ; then
    ac_ext=cpp
  ac_cpp='$CXXCPP $CPPFLAGS'
  ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 @@ -12836,7 +12959,10 @@ $RM -r conftest*
      *) break;;
    esac
  done
 -cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
 +# Return the actual command name, not our pkgsrc wrapper name because several
 +# decisions are made only based on compiler names
 +if test -n "$cc_temp" && new_cc_temp=`$cc_temp --wrappee-name 2>/dev/null`; then :; else new_cc_temp="$cc_temp"; fi
 +cc_basename=`$ECHO "X$new_cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`


    if test -n "$compiler"; then
 @@ -13613,6 +13739,22 @@ if test -z "$aix_libpath"; then aix_libp
          ld_shlibs_CXX=no
  	;;

 +      mirbsd*)
 +	if test -f /usr/libexec/ld.so; then
 +	  hardcode_direct_CXX=yes
 +	  hardcode_shlibpath_var_CXX=no
 +	  hardcode_direct_absolute_CXX=yes
 +	  archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
 +	  archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
 +	  hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir'
 +	  export_dynamic_flag_spec_CXX='${wl}-E'
 +	  whole_archive_flag_spec_CXX="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
 +	  output_verbose_link_cmd='echo'
 +	else
 +	  ld_shlibs_CXX=no
 +	fi
 +	;;
 +
        mvs*)
          case $cc_basename in
            cxx*)
 @@ -13628,18 +13770,37 @@ if test -z "$aix_libpath"; then aix_libp

        netbsd*)
          if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
 +          # a.out is quite broken and goes directly to ld
  	  archive_cmds_CXX='$LD -Bshareable  -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
  	  wlarc=
 +          # Determine if we need to override the c++rt0 that is
 +          # picked up by analysing output_verbose_link_cmds
 +          if test -f ${PREFIX}/lib/c++rt0/c++rt0.o.PIC; then
 +            cpprt0_file="${PREFIX}/lib/c++rt0/c++rt0.o.PIC"
 +          else
 +            cpprt0_file=
 +          fi
  	  hardcode_libdir_flag_spec_CXX='-R$libdir'
  	  hardcode_direct_CXX=yes
  	  hardcode_shlibpath_var_CXX=no
 -	fi
 -	# Workaround some broken pre-1.5 toolchains
 -	output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
 +        elif $CC -dumpspecs | grep -- '-lgcc -lc -lgcc' >/dev/null; then
 +          # Workaround some broken pre-1.5 ELF toolchains
 +          output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
 +        else
 +          # Modern ELF works sanely as-is
 +          archive_cmds_CXX='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 +          archive_expsym_cmds_CXX='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
 +          output_verbose_link_cmd='echo'
 +        fi
  	;;

        *nto* | *qnx*)
 -        ld_shlibs_CXX=yes
 +        archive_cmds_CXX='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 +        archive_expsym_cmds_CXX='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
 +        hardcode_libdir_flag_spec_CXX='-R$libdir'
 +        hardcode_direct_CXX=yes
 +        hardcode_shlibpath_var_CXX=no
 +        output_verbose_link_cmd='echo'
  	;;

        openbsd2*)
 @@ -13815,9 +13976,9 @@ if test -z "$aix_libpath"; then aix_libp
  	    if test "$GXX" = yes && test "$with_gnu_ld" = no; then
  	      no_undefined_flag_CXX=' ${wl}-z ${wl}defs'
  	      if $CC --version | $GREP -v '^2\.7' > /dev/null; then
 -	        archive_cmds_CXX='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
 +	        archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
  	        archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
 -		  $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
 +		  $CC -shared -nostdlib ${wl}-M $wl$lib.exp ${wl}-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'

  	        # Commands to make compiler produce verbose output that lists
  	        # what "hidden" libraries, object files and flags are used when
 @@ -13826,9 +13987,9 @@ if test -z "$aix_libpath"; then aix_libp
  	      else
  	        # g++ 2.7 appears to require `-G' NOT `-shared' on this
  	        # platform.
 -	        archive_cmds_CXX='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
 +	        archive_cmds_CXX='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
  	        archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
 -		  $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
 +		  $CC -G -nostdlib ${wl}-M $wl$lib.exp ${wl}-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'

  	        # Commands to make compiler produce verbose output that lists
  	        # what "hidden" libraries, object files and flags are used when
 @@ -14036,6 +14197,11 @@ $RM -f confest.$objext

  # PORTME: override above test on systems where it is broken
  case $host_os in
 +netbsd*)
 +  if test -n "$cpprt0_file"; then
 +    predep_objects_CXX=`eval echo $predep_objects_CXX | sed -e 's:/usr/lib/c++rt0.o:$cpprt0_file:'`
 +  fi
 +   ;;
  interix[3-9]*)
    # Interix 3.5 installs completely hosed .la files for C++, so rather than
    # hack all around it, let's just trust "g++" to DTRT.
 @@ -14176,14 +14342,25 @@ $as_echo_n "checking for $compiler optio
        lt_prog_compiler_pic_CXX='-DDLL_EXPORT'
        ;;
      darwin* | rhapsody*)
 -      # PIC is the default on this platform
 +      # PIC is the default on this platform, and static linking of
 +      # binaries generally doesn't work
        # Common symbols not allowed in MH_DYLIB files
        lt_prog_compiler_pic_CXX='-fno-common'
 +      lt_prog_compiler_static_CXX=''
 +      ;;
 +    *mint*)
 +      # FreeMiNT does not support shared libraries at all
 +      lt_prog_compiler_pic_CXX=
        ;;
      *djgpp*)
        # DJGPP does not support shared libraries at all
        lt_prog_compiler_pic_CXX=
        ;;
 +    haiku*)
 +      # PIC is the default for Haiku.
 +      # The "-static" flag exists, but is broken.
 +      lt_prog_compiler_static_CXX=
 +      ;;
      interix[3-9]*)
        # Interix 3.x gcc -fpic/-fPIC options generate broken code.
        # Instead, we relocate shared libraries at runtime.
 @@ -14246,6 +14423,9 @@ $as_echo_n "checking for $compiler optio
  	    ;;
  	esac
  	;;
 +      mint*)
 +	# FreeMiNT uses GNU C++
 +	;;
        freebsd* | dragonfly*)
  	# FreeBSD uses GNU C++
  	;;
 @@ -14443,6 +14623,9 @@ $as_echo_n "checking for $compiler optio

  case $host_os in
    # For platforms which do not support PIC, -DPIC is meaningless:
 +  mint*)
 +    lt_prog_compiler_pic_CXX=
 +    ;;
    *djgpp*)
      lt_prog_compiler_pic_CXX=
      ;;
 @@ -14948,6 +15131,7 @@ beos*)
  bsdi[45]*)
    version_type=linux
    need_version=no
 +  need_lib_prefix=no
    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
    soname_spec='${libname}${release}${shared_ext}$major'
    finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
 @@ -15048,9 +15232,7 @@ freebsd1*)
    dynamic_linker=no
    ;;

 -freebsd* | dragonfly*)
 -  # DragonFly does not have aout.  When/if they implement a new
 -  # versioning mechanism, adjust this.
 +freebsd*)
    if test -x /usr/bin/objformat; then
      objformat=`/usr/bin/objformat`
    else
 @@ -15062,7 +15244,7 @@ freebsd* | dragonfly*)
    version_type=freebsd-$objformat
    case $version_type in
      freebsd-elf*)
 -      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
 +      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
        need_version=no
        need_lib_prefix=no
        ;;
 @@ -15085,13 +15267,24 @@ freebsd* | dragonfly*)
      shlibpath_overrides_runpath=no
      hardcode_into_libs=yes
      ;;
 -  *) # from 4.6 on, and DragonFly
 +  *) # from 4.6 on
      shlibpath_overrides_runpath=yes
      hardcode_into_libs=yes
      ;;
    esac
    ;;

 +dragonfly*)
 +  version_type=linux
 +  need_version=no
 +  need_lib_prefix=no
 +  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
 +  soname_spec='${libname}${release}${shared_ext}$major'
 +  shlibpath_var=LD_LIBRARY_PATH
 +  shlibpath_overrides_runpath=no
 +  hardcode_into_libs=yes
 +  ;;
 +
  gnu*)
    version_type=linux
    need_lib_prefix=no
 @@ -15102,6 +15295,19 @@ gnu*)
    hardcode_into_libs=yes
    ;;

 +haiku*)
 +  version_type=linux
 +  need_lib_prefix=no
 +  need_version=no
 +  dynamic_linker="$host_os runtime_loader"
 +  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
 +  soname_spec='${libname}${release}${shared_ext}$major'
 +  shlibpath_var=LIBRARY_PATH
 +  shlibpath_overrides_runpath=yes
 +  sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
 +  hardcode_into_libs=yes
 +  ;;
 +
  hpux9* | hpux10* | hpux11*)
    # Give a soname corresponding to the major version so that dld.sl refuses to
    # link against other versions.
 @@ -15163,12 +15369,7 @@ interix[3-9]*)
  irix5* | irix6* | nonstopux*)
    case $host_os in
      nonstopux*) version_type=nonstopux ;;
 -    *)
 -	if test "$lt_cv_prog_gnu_ld" = yes; then
 -		version_type=linux
 -	else
 -		version_type=irix
 -	fi ;;
 +    *) version_type=irix ;;
    esac
    need_lib_prefix=no
    need_version=no
 @@ -15258,16 +15459,38 @@ rm -f core conftest.err conftest.$ac_obj
    dynamic_linker='GNU/Linux ld.so'
    ;;

 +midnightbsd*)
 +  version_type=linux
 +  need_lib_prefix=no
 +  need_version=no
 +  library_names_spec='${libname}${release}${shared_ext}${versuffix2} ${libname}${release}${shared_ext} $libname${shared_ext}'
 +  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
 +  shlibpath_var=LD_LIBRARY_PATH
 +  shlibpath_overrides_runpath=yes
 +  hardcode_into_libs=yes
 +  ;;
 +
 +mirbsd*)
 +  version_type=linux
 +  sys_lib_search_path_spec="/usr/lib"
 +  sys_lib_dlsearch_path_spec="/usr/lib"
 +  need_lib_prefix=no
 +  need_version=no
 +  library_names_spec='${libname}${release}${shared_ext}${versuffix2} ${libname}${shared_ext}${versuffix2}'
 +  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
 +  shlibpath_var=LD_LIBRARY_PATH
 +  shlibpath_overrides_runpath=yes
 +  ;;
 +
  netbsd*)
 -  version_type=sunos
 +  version_type=linux
    need_lib_prefix=no
    need_version=no
 -  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
 -    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
 +  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
 +  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null && echo __G95__ | $CC -cpp -E - | $GREP __G95__ >/dev/null; then
      finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
      dynamic_linker='NetBSD (a.out) ld.so'
    else
 -    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
      soname_spec='${libname}${release}${shared_ext}$major'
      dynamic_linker='NetBSD ld.elf_so'
    fi
 @@ -15296,7 +15519,7 @@ newsos6)
    ;;

  openbsd*)
 -  version_type=sunos
 +  version_type=linux
    sys_lib_dlsearch_path_spec="/usr/lib"
    need_lib_prefix=no
    # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
 @@ -15304,7 +15527,7 @@ openbsd*)
      openbsd3.3 | openbsd3.3.*)	need_version=yes ;;
      *)				need_version=no  ;;
    esac
 -  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
 +  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
    shlibpath_var=LD_LIBRARY_PATH
    if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
 @@ -15877,7 +16100,10 @@ $RM -r conftest*
      *) break;;
    esac
  done
 -cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
 +# Return the actual command name, not our pkgsrc wrapper name because several
 +# decisions are made only based on compiler names
 +if test -n "$cc_temp" && new_cc_temp=`$cc_temp --wrappee-name 2>/dev/null`; then :; else new_cc_temp="$cc_temp"; fi
 +cc_basename=`$ECHO "X$new_cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`

    GCC=$G77
    if test -n "$compiler"; then
 @@ -15971,9 +16197,17 @@ $as_echo_n "checking for $compiler optio
        ;;

      darwin* | rhapsody*)
 -      # PIC is the default on this platform
 +      # PIC is the default on this platform, and static linking of
 +      # binaries generally doesn't work
        # Common symbols not allowed in MH_DYLIB files
        lt_prog_compiler_pic_F77='-fno-common'
 +      lt_prog_compiler_static_F77=''
 +      ;;
 +
 +    haiku*)
 +      # PIC is the default for Haiku.
 +      # The "-static" flag exists, but is broken.
 +      lt_prog_compiler_static_F77=
        ;;

      hpux*)
 @@ -15995,6 +16229,13 @@ $as_echo_n "checking for $compiler optio
        # Instead, we relocate shared libraries at runtime.
        ;;

 +    mint*)
 +      # 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
 +      ;;
 +
      msdosdjgpp*)
        # Just because we use GCC doesn't mean we suddenly get shared libraries
        # on systems that don't support them.
 @@ -16117,6 +16358,15 @@ $as_echo_n "checking for $compiler optio
        esac
        ;;

 +    mirbsd*)
 +      case $cc_basename in
 +      # pkgsrc f77 is f2c, which uses gcc underneath.
 +      f77*)
 +	lt_prog_compiler_wl_F77='-Wl,'
 +	;;
 +      esac
 +      ;;
 +
      newsos6)
        lt_prog_compiler_pic_F77='-KPIC'
        lt_prog_compiler_static_F77='-Bstatic'
 @@ -16192,6 +16442,9 @@ $as_echo_n "checking for $compiler optio

  case $host_os in
    # For platforms which do not support PIC, -DPIC is meaningless:
 +  mint*)
 +    lt_prog_compiler_pic_F77=
 +    ;;
    *djgpp*)
      lt_prog_compiler_pic_F77=
      ;;
 @@ -16590,6 +16843,11 @@ _LT_EOF
        fi
        ;;

 +    haiku*)
 +      archive_cmds_F77='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 +      link_all_deplibs_F77=yes
 +      ;;
 +
      interix[3-9]*)
        hardcode_direct_F77=no
        hardcode_shlibpath_var_F77=no
 @@ -16676,7 +16934,7 @@ _LT_EOF
        ;;

      netbsd*)
 -      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
 +      if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null && echo __G95__ | $CC -cpp -E - | grep __G95__ >/dev/null; then
  	archive_cmds_F77='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
  	wlarc=
        else
 @@ -17051,6 +17309,11 @@ if test -z "$aix_libpath"; then aix_libp
        hardcode_shlibpath_var_F77=no
        ;;

 +      haiku*)
 +        archive_cmds_F77='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 +        link_all_deplibs_F77=yes
 +        ;;
 +
      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'
 @@ -17163,6 +17426,20 @@ rm -f core conftest.err conftest.$ac_obj
        link_all_deplibs_F77=yes
        ;;

 +    mirbsd*)
 +      if test -f /usr/libexec/ld.so; then
 +	hardcode_direct_F77=yes
 +	hardcode_shlibpath_var_F77=no
 +	hardcode_direct_absolute_F77=yes
 +	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'
 +      else
 +	ld_shlibs_F77=no
 +      fi
 +      ;;
 +
      netbsd*)
        if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
  	archive_cmds_F77='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
 @@ -17183,6 +17460,8 @@ rm -f core conftest.err conftest.$ac_obj
        ;;

      *nto* | *qnx*)
 +      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'
        ;;

      openbsd*)
 @@ -17644,6 +17923,7 @@ beos*)
  bsdi[45]*)
    version_type=linux
    need_version=no
 +  need_lib_prefix=no
    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
    soname_spec='${libname}${release}${shared_ext}$major'
    finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
 @@ -17744,9 +18024,7 @@ freebsd1*)
    dynamic_linker=no
    ;;

 -freebsd* | dragonfly*)
 -  # DragonFly does not have aout.  When/if they implement a new
 -  # versioning mechanism, adjust this.
 +freebsd*)
    if test -x /usr/bin/objformat; then
      objformat=`/usr/bin/objformat`
    else
 @@ -17758,7 +18036,7 @@ freebsd* | dragonfly*)
    version_type=freebsd-$objformat
    case $version_type in
      freebsd-elf*)
 -      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
 +      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
        need_version=no
        need_lib_prefix=no
        ;;
 @@ -17781,13 +18059,24 @@ freebsd* | dragonfly*)
      shlibpath_overrides_runpath=no
      hardcode_into_libs=yes
      ;;
 -  *) # from 4.6 on, and DragonFly
 +  *) # from 4.6 on
      shlibpath_overrides_runpath=yes
      hardcode_into_libs=yes
      ;;
    esac
    ;;

 +dragonfly*)
 +  version_type=linux
 +  need_version=no
 +  need_lib_prefix=no
 +  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
 +  soname_spec='${libname}${release}${shared_ext}$major'
 +  shlibpath_var=LD_LIBRARY_PATH
 +  shlibpath_overrides_runpath=no
 +  hardcode_into_libs=yes
 +  ;;
 +
  gnu*)
    version_type=linux
    need_lib_prefix=no
 @@ -17798,6 +18087,19 @@ gnu*)
    hardcode_into_libs=yes
    ;;

 +haiku*)
 +  version_type=linux
 +  need_lib_prefix=no
 +  need_version=no
 +  dynamic_linker="$host_os runtime_loader"
 +  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
 +  soname_spec='${libname}${release}${shared_ext}$major'
 +  shlibpath_var=LIBRARY_PATH
 +  shlibpath_overrides_runpath=yes
 +  sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
 +  hardcode_into_libs=yes
 +  ;;
 +
  hpux9* | hpux10* | hpux11*)
    # Give a soname corresponding to the major version so that dld.sl refuses to
    # link against other versions.
 @@ -17859,12 +18161,7 @@ interix[3-9]*)
  irix5* | irix6* | nonstopux*)
    case $host_os in
      nonstopux*) version_type=nonstopux ;;
 -    *)
 -	if test "$lt_cv_prog_gnu_ld" = yes; then
 -		version_type=linux
 -	else
 -		version_type=irix
 -	fi ;;
 +    *) version_type=irix ;;
    esac
    need_lib_prefix=no
    need_version=no
 @@ -17948,16 +18245,38 @@ rm -f core conftest.err conftest.$ac_obj
    dynamic_linker='GNU/Linux ld.so'
    ;;

 +midnightbsd*)
 +  version_type=linux
 +  need_lib_prefix=no
 +  need_version=no
 +  library_names_spec='${libname}${release}${shared_ext}${versuffix2} ${libname}${release}${shared_ext} $libname${shared_ext}'
 +  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
 +  shlibpath_var=LD_LIBRARY_PATH
 +  shlibpath_overrides_runpath=yes
 +  hardcode_into_libs=yes
 +  ;;
 +
 +mirbsd*)
 +  version_type=linux
 +  sys_lib_search_path_spec="/usr/lib"
 +  sys_lib_dlsearch_path_spec="/usr/lib"
 +  need_lib_prefix=no
 +  need_version=no
 +  library_names_spec='${libname}${release}${shared_ext}${versuffix2} ${libname}${shared_ext}${versuffix2}'
 +  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
 +  shlibpath_var=LD_LIBRARY_PATH
 +  shlibpath_overrides_runpath=yes
 +  ;;
 +
  netbsd*)
 -  version_type=sunos
 +  version_type=linux
    need_lib_prefix=no
    need_version=no
 -  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
 -    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
 +  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
 +  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null && echo __G95__ | $CC -cpp -E - | $GREP __G95__ >/dev/null; then
      finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
      dynamic_linker='NetBSD (a.out) ld.so'
    else
 -    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
      soname_spec='${libname}${release}${shared_ext}$major'
      dynamic_linker='NetBSD ld.elf_so'
    fi
 @@ -17986,7 +18305,7 @@ newsos6)
    ;;

  openbsd*)
 -  version_type=sunos
 +  version_type=linux
    sys_lib_dlsearch_path_spec="/usr/lib"
    need_lib_prefix=no
    # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
 @@ -17994,7 +18313,7 @@ openbsd*)
      openbsd3.3 | openbsd3.3.*)	need_version=yes ;;
      *)				need_version=no  ;;
    esac
 -  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
 +  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
    shlibpath_var=LD_LIBRARY_PATH
    if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
 @@ -18557,7 +18876,10 @@ $RM -r conftest*
      *) break;;
    esac
  done
 -cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
 +# Return the actual command name, not our pkgsrc wrapper name because several
 +# decisions are made only based on compiler names
 +if test -n "$cc_temp" && new_cc_temp=`$cc_temp --wrappee-name 2>/dev/null`; then :; else new_cc_temp="$cc_temp"; fi
 +cc_basename=`$ECHO "X$new_cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`


    if test -n "$compiler"; then
 @@ -18776,9 +19098,17 @@ $as_echo_n "checking for $compiler optio
        ;;

      darwin* | rhapsody*)
 -      # PIC is the default on this platform
 +      # PIC is the default on this platform, and static linking of
 +      # binaries generally doesn't work
        # Common symbols not allowed in MH_DYLIB files
        lt_prog_compiler_pic_FC='-fno-common'
 +      lt_prog_compiler_static_FC=''
 +      ;;
 +
 +    haiku*)
 +      # PIC is the default for Haiku.
 +      # The "-static" flag exists, but is broken.
 +      lt_prog_compiler_static_FC=
        ;;

      hpux*)
 @@ -18800,6 +19130,13 @@ $as_echo_n "checking for $compiler optio
        # Instead, we relocate shared libraries at runtime.
        ;;

 +    mint*)
 +      # 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_FC=no
 +      enable_shared=no
 +      ;;
 +
      msdosdjgpp*)
        # Just because we use GCC doesn't mean we suddenly get shared libraries
        # on systems that don't support them.
 @@ -18922,6 +19259,15 @@ $as_echo_n "checking for $compiler optio
        esac
        ;;

 +    mirbsd*)
 +      case $cc_basename in
 +      # pkgsrc f77 is f2c, which uses gcc underneath.
 +      f77*)
 +	lt_prog_compiler_wl_FC='-Wl,'
 +	;;
 +      esac
 +      ;;
 +
      newsos6)
        lt_prog_compiler_pic_FC='-KPIC'
        lt_prog_compiler_static_FC='-Bstatic'
 @@ -18997,6 +19343,9 @@ $as_echo_n "checking for $compiler optio

  case $host_os in
    # For platforms which do not support PIC, -DPIC is meaningless:
 +  mint*)
 +    lt_prog_compiler_pic_FC=
 +    ;;
    *djgpp*)
      lt_prog_compiler_pic_FC=
      ;;
 @@ -19395,6 +19744,11 @@ _LT_EOF
        fi
        ;;

 +    haiku*)
 +      archive_cmds_FC='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 +      link_all_deplibs_FC=yes
 +      ;;
 +
      interix[3-9]*)
        hardcode_direct_FC=no
        hardcode_shlibpath_var_FC=no
 @@ -19481,7 +19835,7 @@ _LT_EOF
        ;;

      netbsd*)
 -      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
 +      if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null && echo __G95__ | $CC -cpp -E - | grep __G95__ >/dev/null; then
  	archive_cmds_FC='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
  	wlarc=
        else
 @@ -19856,6 +20210,11 @@ if test -z "$aix_libpath"; then aix_libp
        hardcode_shlibpath_var_FC=no
        ;;

 +      haiku*)
 +        archive_cmds_FC='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 +        link_all_deplibs_FC=yes
 +        ;;
 +
      hpux9*)
        if test "$GCC" = yes; then
  	archive_cmds_FC='$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'
 @@ -19968,6 +20327,20 @@ rm -f core conftest.err conftest.$ac_obj
        link_all_deplibs_FC=yes
        ;;

 +    mirbsd*)
 +      if test -f /usr/libexec/ld.so; then
 +	hardcode_direct_FC=yes
 +	hardcode_shlibpath_var_FC=no
 +	hardcode_direct_absolute_FC=yes
 +	archive_cmds_FC='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
 +	archive_expsym_cmds_FC='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
 +	hardcode_libdir_flag_spec_FC='${wl}-rpath,$libdir'
 +	export_dynamic_flag_spec_FC='${wl}-E'
 +      else
 +	ld_shlibs_FC=no
 +      fi
 +      ;;
 +
      netbsd*)
        if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
  	archive_cmds_FC='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
 @@ -19988,6 +20361,8 @@ rm -f core conftest.err conftest.$ac_obj
        ;;

      *nto* | *qnx*)
 +      archive_cmds_FC='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 +      archive_expsym_cmds_FC='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
        ;;

      openbsd*)
 @@ -20449,6 +20824,7 @@ beos*)
  bsdi[45]*)
    version_type=linux
    need_version=no
 +  need_lib_prefix=no
    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
    soname_spec='${libname}${release}${shared_ext}$major'
    finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
 @@ -20549,9 +20925,7 @@ freebsd1*)
    dynamic_linker=no
    ;;

 -freebsd* | dragonfly*)
 -  # DragonFly does not have aout.  When/if they implement a new
 -  # versioning mechanism, adjust this.
 +freebsd*)
    if test -x /usr/bin/objformat; then
      objformat=`/usr/bin/objformat`
    else
 @@ -20563,7 +20937,7 @@ freebsd* | dragonfly*)
    version_type=freebsd-$objformat
    case $version_type in
      freebsd-elf*)
 -      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
 +      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
        need_version=no
        need_lib_prefix=no
        ;;
 @@ -20586,13 +20960,24 @@ freebsd* | dragonfly*)
      shlibpath_overrides_runpath=no
      hardcode_into_libs=yes
      ;;
 -  *) # from 4.6 on, and DragonFly
 +  *) # from 4.6 on
      shlibpath_overrides_runpath=yes
      hardcode_into_libs=yes
      ;;
    esac
    ;;

 +dragonfly*)
 +  version_type=linux
 +  need_version=no
 +  need_lib_prefix=no
 +  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
 +  soname_spec='${libname}${release}${shared_ext}$major'
 +  shlibpath_var=LD_LIBRARY_PATH
 +  shlibpath_overrides_runpath=no
 +  hardcode_into_libs=yes
 +  ;;
 +
  gnu*)
    version_type=linux
    need_lib_prefix=no
 @@ -20603,6 +20988,19 @@ gnu*)
    hardcode_into_libs=yes
    ;;

 +haiku*)
 +  version_type=linux
 +  need_lib_prefix=no
 +  need_version=no
 +  dynamic_linker="$host_os runtime_loader"
 +  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
 +  soname_spec='${libname}${release}${shared_ext}$major'
 +  shlibpath_var=LIBRARY_PATH
 +  shlibpath_overrides_runpath=yes
 +  sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
 +  hardcode_into_libs=yes
 +  ;;
 +
  hpux9* | hpux10* | hpux11*)
    # Give a soname corresponding to the major version so that dld.sl refuses to
    # link against other versions.
 @@ -20664,12 +21062,7 @@ interix[3-9]*)
  irix5* | irix6* | nonstopux*)
    case $host_os in
      nonstopux*) version_type=nonstopux ;;
 -    *)
 -	if test "$lt_cv_prog_gnu_ld" = yes; then
 -		version_type=linux
 -	else
 -		version_type=irix
 -	fi ;;
 +    *) version_type=irix ;;
    esac
    need_lib_prefix=no
    need_version=no
 @@ -20753,16 +21146,38 @@ rm -f core conftest.err conftest.$ac_obj
    dynamic_linker='GNU/Linux ld.so'
    ;;

 +midnightbsd*)
 +  version_type=linux
 +  need_lib_prefix=no
 +  need_version=no
 +  library_names_spec='${libname}${release}${shared_ext}${versuffix2} ${libname}${release}${shared_ext} $libname${shared_ext}'
 +  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
 +  shlibpath_var=LD_LIBRARY_PATH
 +  shlibpath_overrides_runpath=yes
 +  hardcode_into_libs=yes
 +  ;;
 +
 +mirbsd*)
 +  version_type=linux
 +  sys_lib_search_path_spec="/usr/lib"
 +  sys_lib_dlsearch_path_spec="/usr/lib"
 +  need_lib_prefix=no
 +  need_version=no
 +  library_names_spec='${libname}${release}${shared_ext}${versuffix2} ${libname}${shared_ext}${versuffix2}'
 +  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
 +  shlibpath_var=LD_LIBRARY_PATH
 +  shlibpath_overrides_runpath=yes
 +  ;;
 +
  netbsd*)
 -  version_type=sunos
 +  version_type=linux
    need_lib_prefix=no
    need_version=no
 -  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
 -    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
 +  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
 +  if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null && echo __G95__ | $CC -cpp -E - | $GREP __G95__ >/dev/null; then
      finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
      dynamic_linker='NetBSD (a.out) ld.so'
    else
 -    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
      soname_spec='${libname}${release}${shared_ext}$major'
      dynamic_linker='NetBSD ld.elf_so'
    fi
 @@ -20791,7 +21206,7 @@ newsos6)
    ;;

  openbsd*)
 -  version_type=sunos
 +  version_type=linux
    sys_lib_dlsearch_path_spec="/usr/lib"
    need_lib_prefix=no
    # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
 @@ -20799,7 +21214,7 @@ openbsd*)
      openbsd3.3 | openbsd3.3.*)	need_version=yes ;;
      *)				need_version=no  ;;
    esac
 -  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
 +  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
    shlibpath_var=LD_LIBRARY_PATH
    if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
 @@ -21205,7 +21620,10 @@ for cc_temp in $compiler""; do
      *) break;;
    esac
  done
 -cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
 +# Return the actual command name, not our pkgsrc wrapper name because several
 +# decisions are made only based on compiler names
 +if test -n "$cc_temp" && new_cc_temp=`$cc_temp --wrappee-name 2>/dev/null`; then :; else new_cc_temp="$cc_temp"; fi
 +cc_basename=`$ECHO "X$new_cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`


  # GCJ did not exist at the time GCC didn't implicitly link libc in.
 @@ -21320,9 +21738,17 @@ $as_echo_n "checking for $compiler optio
        ;;

      darwin* | rhapsody*)
 -      # PIC is the default on this platform
 +      # PIC is the default on this platform, and static linking of
 +      # binaries generally doesn't work
        # Common symbols not allowed in MH_DYLIB files
        lt_prog_compiler_pic_GCJ='-fno-common'
 +      lt_prog_compiler_static_GCJ=''
 +      ;;
 +
 +    haiku*)
 +      # PIC is the default for Haiku.
 +      # The "-static" flag exists, but is broken.
 +      lt_prog_compiler_static_GCJ=
        ;;

      hpux*)
 @@ -21344,6 +21770,13 @@ $as_echo_n "checking for $compiler optio
        # Instead, we relocate shared libraries at runtime.
        ;;

 +    mint*)
 +      # 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_GCJ=no
 +      enable_shared=no
 +      ;;
 +
      msdosdjgpp*)
        # Just because we use GCC doesn't mean we suddenly get shared libraries
        # on systems that don't support them.
 @@ -21466,6 +21899,15 @@ $as_echo_n "checking for $compiler optio
        esac
        ;;

 +    mirbsd*)
 +      case $cc_basename in
 +      # pkgsrc f77 is f2c, which uses gcc underneath.
 +      f77*)
 +	lt_prog_compiler_wl_GCJ='-Wl,'
 +	;;
 +      esac
 +      ;;
 +
      newsos6)
        lt_prog_compiler_pic_GCJ='-KPIC'
        lt_prog_compiler_static_GCJ='-Bstatic'
 @@ -21541,6 +21983,9 @@ $as_echo_n "checking for $compiler optio

  case $host_os in
    # For platforms which do not support PIC, -DPIC is meaningless:
 +  mint*)
 +    lt_prog_compiler_pic_GCJ=
 +    ;;
    *djgpp*)
      lt_prog_compiler_pic_GCJ=
      ;;
 @@ -21939,6 +22384,11 @@ _LT_EOF
        fi
        ;;

 +    haiku*)
 +      archive_cmds_GCJ='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 +      link_all_deplibs_GCJ=yes
 +      ;;
 +
      interix[3-9]*)
        hardcode_direct_GCJ=no
        hardcode_shlibpath_var_GCJ=no
 @@ -22025,7 +22475,7 @@ _LT_EOF
        ;;

      netbsd*)
 -      if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
 +      if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null && echo __G95__ | $CC -cpp -E - | grep __G95__ >/dev/null; then
  	archive_cmds_GCJ='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
  	wlarc=
        else
 @@ -22412,6 +22862,11 @@ if test -z "$aix_libpath"; then aix_libp
        hardcode_shlibpath_var_GCJ=no
        ;;

 +      haiku*)
 +        archive_cmds_GCJ='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 +        link_all_deplibs_GCJ=yes
 +        ;;
 +
      hpux9*)
        if test "$GCC" = yes; then
  	archive_cmds_GCJ='$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'
 @@ -22525,6 +22980,20 @@ rm -f core conftest.err conftest.$ac_obj
        link_all_deplibs_GCJ=yes
        ;;

 +    mirbsd*)
 +      if test -f /usr/libexec/ld.so; then
 +	hardcode_direct_GCJ=yes
 +	hardcode_shlibpath_var_GCJ=no
 +	hardcode_direct_absolute_GCJ=yes
 +	archive_cmds_GCJ='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
 +	archive_expsym_cmds_GCJ='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
 +	hardcode_libdir_flag_spec_GCJ='${wl}-rpath,$libdir'
 +	export_dynamic_flag_spec_GCJ='${wl}-E'
 +      else
 +	ld_shlibs_GCJ=no
 +      fi
 +      ;;
 +
      netbsd*)
        if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
  	archive_cmds_GCJ='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
 @@ -22545,6 +23014,8 @@ rm -f core conftest.err conftest.$ac_obj
        ;;

      *nto* | *qnx*)
 +      archive_cmds_GCJ='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 +      archive_expsym_cmds_GCJ='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
        ;;

      openbsd*)
 @@ -23115,7 +23586,10 @@ for cc_temp in $compiler""; do
      *) break;;
    esac
  done
 -cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
 +# Return the actual command name, not our pkgsrc wrapper name because several
 +# decisions are made only based on compiler names
 +if test -n "$cc_temp" && new_cc_temp=`$cc_temp --wrappee-name 2>/dev/null`; then :; else new_cc_temp="$cc_temp"; fi
 +cc_basename=`$ECHO "X$new_cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`

  lt_cv_prog_compiler_c_o_RC=yes

 @@ -24296,6 +24772,9 @@ LTCC='$LTCC'
  LTCFLAGS='$LTCFLAGS'
  compiler='$compiler_DEFAULT'

 +printf "%s" "$lt_prog_compiler_wl" > /dev/null
 +printf "%s" "$lt_prog_compiler_no_builtin_flag" > /dev/null
 +
  # Quote evaled strings.
  for var in SED \
  GREP \
 @@ -24580,6 +25059,9 @@ case \$lt_ECHO in
    ;;
  esac

 +printf "%s" "$lt_prog_compiler_wl" > /dev/null
 +printf "%s" "$lt_prog_compiler_no_builtin_flag" > /dev/null
 +
  ac_aux_dir='$ac_aux_dir'
  xsi_shell='$xsi_shell'
  lt_shell_append='$lt_shell_append'

 --------------030508090604010200070205
 Content-Type: text/plain; charset=UTF-8;
  name="patch-libltdl_m4_libtool.m4"
 Content-Transfer-Encoding: 7bit
 Content-Disposition: attachment;
  filename="patch-libltdl_m4_libtool.m4"

 $NetBSD$

 --- libltdl/m4/libtool.m4.orig	2009-11-16 13:11:59.000000000 +0000
 +++ libltdl/m4/libtool.m4
 @@ -6195,9 +6195,9 @@ if test "$_lt_caught_CXX_error" != yes;
  	    if test "$GXX" = yes && test "$with_gnu_ld" = no; then
  	      _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
  	      if $CC --version | $GREP -v '^2\.7' > /dev/null; then
 -	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
 +	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
  	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
 -		  $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
 +		  $CC -shared -nostdlib ${wl}-M $wl$lib.exp ${wl}-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'

  	        # Commands to make compiler produce verbose output that lists
  	        # what "hidden" libraries, object files and flags are used when
 @@ -6206,9 +6206,9 @@ if test "$_lt_caught_CXX_error" != yes;
  	      else
  	        # g++ 2.7 appears to require `-G' NOT `-shared' on this
  	        # platform.
 -	        _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
 +	        _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
  	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
 -		  $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
 +		  $CC -G -nostdlib ${wl}-M $wl$lib.exp ${wl}-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'

  	        # Commands to make compiler produce verbose output that lists
  	        # what "hidden" libraries, object files and flags are used when

 --------------030508090604010200070205--

From: Richard PALO <richard.palo@baou.fr>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: pkg/47359 (pkgsrc/devel/libtool problems with solaris, g++ and
 solaris ld)
Date: Wed, 20 Feb 2013 15:20:45 +0100

 To avoid the buggy /usr/xpg4/bin/*grep problems on solaris,
 this patch explicitly uses textproc/grep.
 NB there is still a question concerning hardcoded "find" in this 
 version, I'll see if it is dealt with upstream.

 richard@devzone:~/src/pkgsrc/devel/libtool-base$ cvs diff
 Index: Makefile
 ===================================================================
 RCS file: /cvsroot/pkgsrc/devel/libtool-base/Makefile,v
 retrieving revision 1.98
 diff -u -p -r1.98 Makefile
 --- Makefile    26 Jul 2012 12:04:04 -0000      1.98
 +++ Makefile    20 Feb 2013 14:01:49 -0000
 @@ -60,6 +60,9 @@ BUILD_SHLIBTOOL=      NO

   .elif ${OPSYS} == "SunOS"
   CFLAGS+=       ${_COMPILER_ABI_FLAG.${ABI}}
 +DEPENDS+=            grep-[0-9]*:../../textproc/grep
 +TOOLS_PLATFORM.grep    = ${LOCALBASE}/bin/ggrep
 +TOOLS_PLATFORM.egrep   = ${LOCALBASE}/bin/gegrep
   .endif

   BUILD_SHLIBTOOL?=      YES
 @@ -70,7 +73,7 @@ BUILD_SHLIBTOOL?=     YES
   USE_LANGUAGES=         c c++ fortran77
   CONFIGURE_ARGS+=       --disable-ltdl-install

 -USE_TOOLS+=            echo
 +USE_TOOLS+=            echo grep:run egrep:run

   .PHONY: fix-libtool
   fix-libtool:

From: Richard PALO <richard.palo@baou.fr>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: pkg/47359 (pkgsrc/devel/libtool problems with solaris, g++ and
 solaris ld)
Date: Thu, 21 Feb 2013 14:48:39 +0100

 Le 20/02/13 15:25, Richard PALO a écrit :
 > The following reply was made to PR pkg/47359; it has been noted by GNATS.
 >
 > From: Richard PALO <richard.palo@baou.fr>
 > To: gnats-bugs@NetBSD.org
 > Cc:
 > Subject: Re: pkg/47359 (pkgsrc/devel/libtool problems with solaris, g++ and
 >   solaris ld)
 > Date: Wed, 20 Feb 2013 15:20:45 +0100
 >
 >   To avoid the buggy /usr/xpg4/bin/*grep problems on solaris,
 >   this patch explicitly uses textproc/grep.
 >   NB there is still a question concerning hardcoded "find" in this
 >   version, I'll see if it is dealt with upstream.
 >
 >   richard@devzone:~/src/pkgsrc/devel/libtool-base$ cvs diff
 >   Index: Makefile
 >   ===================================================================
 >   RCS file: /cvsroot/pkgsrc/devel/libtool-base/Makefile,v
 >   retrieving revision 1.98
 >   diff -u -p -r1.98 Makefile
 >   --- Makefile    26 Jul 2012 12:04:04 -0000      1.98
 >   +++ Makefile    20 Feb 2013 14:01:49 -0000
 >   @@ -60,6 +60,9 @@ BUILD_SHLIBTOOL=      NO
 >
 >     .elif ${OPSYS} == "SunOS"
 >     CFLAGS+=       ${_COMPILER_ABI_FLAG.${ABI}}
 >   +DEPENDS+=            grep-[0-9]*:../../textproc/grep
 >   +TOOLS_PLATFORM.grep    = ${LOCALBASE}/bin/ggrep
 >   +TOOLS_PLATFORM.egrep   = ${LOCALBASE}/bin/gegrep
 >     .endif
 >
 >     BUILD_SHLIBTOOL?=      YES
 >   @@ -70,7 +73,7 @@ BUILD_SHLIBTOOL?=     YES
 >     USE_LANGUAGES=         c c++ fortran77
 >     CONFIGURE_ARGS+=       --disable-ltdl-install
 >
 >   -USE_TOOLS+=            echo
 >   +USE_TOOLS+=            echo grep:run egrep:run
 >
 >     .PHONY: fix-libtool
 >     fix-libtool:
 >
 >
 please ignore this patch to libtool-base/Makefile as it appears to cause 
 a circular dependency with textproc/grep during a full [re-]build of 
 pkgsrc which in itself seems strange & problematic.

>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.