Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Message-ID: <0f2c01c19571$29015200$0200a8c0@lifelesswks> From: "Robert Collins" To: "Jason Tishler" , "Cygwin" Cc: "Roth, Kevin P." References: <6EB31774D39507408D04392F40A10B2BC1FEA4 AT FDYEXC202 DOT mgroupnet DOT com> <20020104185355 DOT GA2172 AT dothill DOT com> Subject: Re: rebase for setup (curl) Date: Sat, 5 Jan 2002 09:42:57 +1100 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 X-OriginalArrivalTime: 04 Jan 2002 22:44:31.0024 (UTC) FILETIME=[5F909B00:01C19571] ----- Original Message ----- From: "Jason Tishler" > On Fri, Jan 04, 2002 at 11:47:32AM -0500, Roth, Kevin P. wrote: > > Negative - I get no warnings at all during the building of > > cygcurl-2.dll. > > Thanks for the confirmation. > All PostgreSQL DLLs are created with dllwrap. If I invoke dllwrap with > So, the options passed to ld are the same for cygcurl-2.dll and pq.dll > except for the slight variation of --base-file versus --image-base. > > I decided to table the search for the "offending" ld option(s) because > of the following gloomy thought: > > Given that rebase can break certain DLLs and that it is nearly > impossible to control how arbitrary packages create their DLLs, > can setup.exe's proposed rebase solution deal with this problem? > Or, is the rebase solution doomed to failure? Time for a 2c opinion. Looks like something is broken with dllwrap->ld interaction. Does adding --shared fix this? Or perhaps the -Wl,--dll should be replaced with --shared... If we can isolate that, and release an updated dllwrap we've solved the core fault. At that point IMO we can simply release, with a loud warning that folk need to update and rebuild their .dlls _BECAUSE THEY ARE CURRENTLY CORRUPT_. Rebasing is a PE feature, if the .dll's are not surviving rebasing, something is wrong - they probably won't survive relocation either. Lastly, if you recall my suggestion about leaving unrebasable .dlls in place, and rebasing around them, we can simply test a dll the first time we see it and see if it survives. If not, we mark it's address space as reserved and move along. Rob -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/