Ping, almost a month, I don't think I got a clear yes/no on this One before the discussion wandered off. Only the suggestion to detect Microsoft link seperately, but that's a much bigger change and I'd like to do that later<tm>.
Cheers, Peter * Peter Ekberg wrote on Tuesday, August 23, 2005 07:29 CEST: > Tim Van Holder wrote: > > >>>Regarding dumpbin not being present in the 2003 version, I > > >>>*think* it's just missing from the free toolkit and that it is > > >>>still going strong in "the real" releases of Visual Studio. > > >> > > >>OK. I just can't test it then. > > >> > > >> > > >>>>Also, there seem to be third-party programs named `dumpbin'. > > >>>>Does your1> test av oid them or do they work with > > >> > > >>your macro? Are > > >> > > >>>they in > > >>> > > >>>>wide-spread use? (We can just wait till someone reports > > >> > > >>a bug, if you > > >> > > >>>>don't know; but maybe you do, or I just missed that info.) > > >>> > > >>>Hmm, I was not aware of other dumpbins, so if they are similar > > >>>there might be a problem. > > >> > > >>Completely untested (and no idea about trustworthiness): > > >>http://www.freedownloadscenter.com/Best/coff-dumpbin.html > > I meant to mention (but forgot) that the executable in the > above link appears to be named libdump (but I haven't actually > installed it so I might be mistaken...) > > > >>>But, as the test is currently, the located dumpbin must > > >>>not choke on the -symbols option and it must output a line > > >>>with both "External" and "some_variable" on it. So false > > >>>positives seem unlikely to me, but the test can always be > > >>>hardened. > > > > FYI, the dumpbin.exe provided by Visual C++ is really just a stub > > that calls link.exe (rather like symlinking unzip as zipinfo). > > > > Running "link /dump" has the same effect as running "dumpbin"; so > > perhaps checking for MS Link is enough - if you have identified > > the MS linker, you can use it to list symbols (and I imagine > > libtool may need to know about the linker anyway). > > Oook. I guess dumpbin is available (but slightly hidden) in the > free toolkit after all... > > This info made me look at the dumpbin-as-name-lister patch again > and I found an issue with it... > > I had a vague recollection of a good reason not to change the > checking msg from "checking for BSD-compatible nm..." to the > new "checking for BSD- or MS-compatible name lister (nm)..." > but could not pinpoint it in memory when Ralf suggested it. > Now I remember and the reason is that I couldn't figure out a > way to use AC_CHECK_TOOL within the AC_CACHE_CHECK for nm, so > I added a new check after the check for nm and modified the > check for nm to return "no" instead of "nm" if no BSD nm was > found. Then the change to "no" was lost when I forked out the > patch for the big patch (sorry, too many trees over here) and > I didn't do enough testing with the forked out patch. > > Anyway, the problem with the new checking msg is that the > output from configure is a bit strange if nm is not found, > but dumpbin is: > > checking for BSD- or MS-compatible name lister (nm)... no > checking for dumpbin... dumpbin -symbols > checking the name lister (dumpbin -symbols) interface... MS dumpbin > > However, the old message is strange when dumpbin is specified > by the user with NM="dumpbin -symbols": > > checking for BSD-compatible nm... dumpbin -symbols > checking the name lister (dumpbin -symbols) interface... MS dumpbin > > I don't know which is best... Anyway, ignoring the somewhat strange > output for a bit, is this ok for HEAD? > > > 2005-08-23 Peter Ekberg <[EMAIL PROTECTED]> > > * libltdl/m4/libtool.m4 (LT_PATH_NM): Fix autodetection of > dumpbin and also check for "link -dump -symbols" as a synonym > for "dumpbin -symbols". > > Index: libltdl/m4/libtool.m4 > =================================================================== > RCS file: /cvsroot/libtool/libtool/libltdl/m4/libtool.m4,v > retrieving revision 1.1 > diff -u -r1.1 libtool.m4 > --- libltdl/m4/libtool.m4 22 Aug 2005 22:33:35 -0000 1.1 > +++ libltdl/m4/libtool.m4 23 Aug 2005 05:16:51 -0000 > @@ -2897,13 +2897,13 @@ > fi > done > IFS="$lt_save_ifs" > - test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm > + : ${lt_cv_path_NM=no} > fi]) > if test "$lt_cv_path_NM" != "no"; then > NM="$lt_cv_path_NM" > else > # Didn't find any BSD compatible name lister, look for dumpbin. > - AC_CHECK_TOOL(DUMPBIN, [dumpbin -symbols], :) > + AC_CHECK_TOOLS(DUMPBIN, ["dumpbin -symbols" "link -dump -symbols"], > :) > AC_SUBST([DUMPBIN]) > if test "$DUMPBIN" != ":"; then > NM="$DUMPBIN" > > Cheers, > Peter