X-Recipient: archive-cygwin AT delorie DOT com X-Spam-Check-By: sourceware.org Date: Wed, 1 Jul 2009 13:06:58 +0200 From: Corinna Vinschen To: cygwin AT cygwin DOT com Subject: Re: w32api funny Message-ID: <20090701110658.GA28524@calimero.vinschen.de> Reply-To: cygwin AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com References: <4A4B3B8A DOT 9020800 AT gmail DOT com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4A4B3B8A.9020800@gmail.com> User-Agent: Mutt/1.5.19 (2009-02-20) Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com On Jul 1 11:33, Dave Korn wrote: > > I noticed this when we added StrStrI to setup.exe, and I forgot to bootstrap > the generated files; I got a bad exe that didn't work for me because it > imported StrStrIA from comctl32.dll (which was the next -l option in the > LDFLAGS), which - at least on w2k - doesn't actually export that function: > > $ for x in /usr/lib/w32api/lib{comctl32,shell32,shlwapi}.a ; do echo $x; nm $x > | grep StrStrI ; done > /usr/lib/w32api/libcomctl32.a > 00000000 T _StrStrIW AT 8 > 00000000 I __imp__StrStrIW AT 8 > 00000000 T _StrStrIA AT 8 > 00000000 I __imp__StrStrIA AT 8 > /usr/lib/w32api/libshell32.a > 00000000 T _StrStrIW AT 8 > 00000000 I __imp__StrStrIW AT 8 > 00000000 T _StrStrIA AT 8 > 00000000 I __imp__StrStrIA AT 8 > /usr/lib/w32api/libshlwapi.a > 00000000 T _StrStrIW AT 8 > 00000000 I __imp__StrStrIW AT 8 > 00000000 T _StrStrIA AT 8 > 00000000 I __imp__StrStrIA AT 8 > > $ cd $WINDIR/system32 > > $ for x in comctl32.dll shell32.dll shlwapi.dll ; do echo $x ; dumpbin > /exports $x | grep StrStrI ; done > comctl32.dll > shell32.dll > 403 AB 00117E97 StrStrIA > 404 AC 00117E9D StrStrIW > shlwapi.dll > 710 F4 0000F2B4 StrStrIA > 711 F5 00007E9E StrStrIW > > I checked on an XP system as well, and it's not exported from comctl32.dll > there either. The definitions come from here: > > /usr/src/w32api-3.13-1/lib/comctl32.def:125:StrStrIA AT 8 > /usr/src/w32api-3.13-1/lib/comctl32.def:126:StrStrIW AT 8 > > and are present in CVS HEAD. I removed all the erroneously defined StrFOO entry points from comctl32.a. Thanks, Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Project Co-Leader cygwin AT cygwin DOT com Red Hat -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple