Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin AT sources DOT redhat DOT com Date: Thu, 14 Sep 2000 20:50:38 -0400 Message-Id: <200009150050.UAA09500@envy.delorie.com> From: DJ Delorie To: danny_r_smith AT hotmail DOT com, cygwin AT sources DOT redhat DOT com In-reply-to: <200009142254.SAA08402@envy.delorie.com> (message from DJ Delorie on Thu, 14 Sep 2000 18:54:25 -0400) Subject: Re: ld -shared and @ordinals in .def files References: <20000724232744 DOT 44516 DOT qmail AT hotmail DOT com> <200009142254 DOT SAA08402 AT envy DOT delorie DOT com> Oops, I meant this patch, which should also fix the NONAME bug: Index: pe-dll.c =================================================================== RCS file: /cvs/src/src/ld/pe-dll.c,v retrieving revision 1.14 diff -p -2 -r1.14 pe-dll.c *** pe-dll.c 2000/07/19 00:04:04 1.14 --- pe-dll.c 2000/09/15 00:48:59 *************** fill_edata (abfd, info) *** 704,720 **** + ssec->output_section->vma + ssec->output_offset); ! bfd_put_32 (abfd, srva - image_base, (void *) (eaddresses + i)); if (!pe_def_file->exports[s].flag_noname) { char *ename = pe_def_file->exports[s].name; bfd_put_32 (abfd, ERVA (enamestr), (void *) enameptrs); strcpy (enamestr, ename); enamestr += strlen (enamestr) + 1; ! bfd_put_16 (abfd, i, (void *) eordinals); ! enameptrs++; pe_def_file->exports[s].hint = hint++; } - eordinals++; } } --- 704,722 ---- + ssec->output_section->vma + ssec->output_offset); + int ord = pe_def_file->exports[s].ordinal; ! bfd_put_32 (abfd, srva - image_base, ! (void *) (eaddresses + ord - min_ordinal)); if (!pe_def_file->exports[s].flag_noname) { char *ename = pe_def_file->exports[s].name; bfd_put_32 (abfd, ERVA (enamestr), (void *) enameptrs); + enameptrs++; strcpy (enamestr, ename); enamestr += strlen (enamestr) + 1; ! bfd_put_16 (abfd, ord, (void *) eordinals); ! eordinals++; pe_def_file->exports[s].hint = hint++; } } } -- Want to unsubscribe from this list? Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com