libtool
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Mingw-users] Re: "Re: libbfd, libtool & Win32" and "Re: Building a


From: Max Bowsher
Subject: Re: [Mingw-users] Re: "Re: libbfd, libtool & Win32" and "Re: Building a MinGW GLib etc..."
Date: Mon, 16 Sep 2002 23:11:13 +0100

Max Bowsher wrote:
> Robert Boehne wrote:
> > Max,
> >
> > I took a look at the patch, and I don't have any objections
> > to it being checked in to Libtool.  Can I get some comment
> > from the mingwin people before I take the leap and
> > check it in?

Oh, and just thought of something else. That patch was against the latest Cygwin
release of libtool, which contains the following patch to libtool.m4. The 2nd
hunk is of particular importance, because I borrow that code for use on mingw as
well as Cygwin. I will try and get in contact with the Cygwin libtool maintainer
and ask that this patch be submitted for merge with mainline libtool.

--- libtool.m4 26 Jun 2002 07:15:36 -0000 1.261
+++ libtool.m4 16 Jul 2002 04:13:30 -0000
@@ -603,7 +603,16 @@
     # check would be larger than it should be.
     lt_cv_sys_max_cmd_len=12288;    # 12K is about right
     ;;
-
+  cygwin*)
+    # On Win9x/ME, this test blows up -- it succeeds, but takes
+    # about 5 minutes as the teststring grows exponentially.
+    # Worse, since 9x/ME are not pre-emptively multitasking,
+    # you end up with a "frozen" computer, even though with patience
+    # the test eventually succeeds (with a max line length of 256k).
+    # Instead, let's just punt: use the minimum linelength reported by
+    # all of the supported platforms: 8192 (on NT/2K/XP).
+    lt_cv_sys_max_cmd_len=8192;
+    ;;
   gnu*)
     # Under GNU Hurd, this test is not required because there is
     # no limit to the length of command line arguments.
@@ -1109,10 +1118,11 @@
     library_names_spec='$libname.dll.a'
     sys_lib_search_path_spec="/lib /lib/w32api /usr/lib /usr/local/lib"
     soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} |
sed -e 's/[[.]]/-/g'`${versuffix}.dll'
-    postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo
\$dlname'\''`~
+    postinstall_cmds='base_file=`basename \${file}`~
+      dlpath=`bash 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo
\$dlname'\''`~
       dldir=$destdir/`dirname \$dlpath`~
       test -d \$dldir || mkdir -p \$dldir~
-      $install_prog .libs/$dlname \$dldir/$dlname'
+      $install_prog $dir/$dlname \$dldir/$dlname'
     postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~
       dlpath=$dir/\$dldll~
        $rm \$dlpath'
@@ -4387,7 +4397,7 @@
       _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience |
awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) &&
([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols'
     fi
     ;;
-  mingw* | pw32*)
+  mingw* | pw32*) # and not cygwin.  Cygwin uses the $NM incantation, below
     _LT_AC_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
   ;;
   *)





reply via email to

[Prev in Thread] Current Thread [Next in Thread]