From: cgf AT bbc DOT com (Christopher Faylor) Subject: Re: comments on cygwin32 b19 ld problems 13 Mar 1998 13:15:04 -0800 Message-ID: <199803120243.VAA06365.cygnus.gnu-win32@hardy.bbc.com> To: khan AT xraylith DOT wisc DOT edu Cc: gnu-win32 AT cygnus DOT com, ian AT cygnus DOT com, khan AT eh_pc11 DOT xraylith DOT wisc DOT edu, noer AT cygnus DOT com, sos AT prospect DOT com DOT ru I can confirm that this works. I'm using Mumit's EGCS/binutils with a change very similar to the one he shows below. cgf >Christopher Faylor writes: >> >> It should be easy to fix. We can just name the section ".data_nocopy" >> instead of ".data$nocopy" and explicitly include .data_nocopy after __data_en >> d >> in the ldtemplate files. >> > >Following Chris' suggestion, I propose something along the lines of the >following (changes to b19 winsup and gas-980303 ld template). Now both >cygwin32 b19 fork works, and so do C++ code that uses grouped sections >for template data. > >===== WINSUP >Wed Mar 11 20:28:42 1998 Mumit Khan > > * winsup.h (NO_COPY): Use explicitly named section. > >--- ../../src/winsup/winsup.h Sun Feb 22 20:29:02 1998 >+++ winsup.h Wed Mar 11 20:03:50 1998 >@@ -357,7 +357,7 @@ extern "C" class shared_info *cygwin32_g > > #define WM_ASYNCIO 0x8000 // WM_APP > >-#define NO_COPY __attribute__((section(".data$nocopy"))) >+#define NO_COPY __attribute__((section(".data_cygwin_nocopy"))) > > /* Note that MAX_PATH is defined in the windows headers */ > /* There is also PATH_MAX and MAXPATHLEN. > >===== BINUTILS 980303 > >Wed Mar 11 20:32:30 1998 Mumit Khan > > * scripttempl/pe.sc: Put cygwin32-specific .data_cygwin_nocopy in > .data section. > >--- scripttempl/pe.sc.~1 Wed Mar 11 20:30:40 1998 >+++ scripttempl/pe.sc Wed Mar 11 20:31:10 1998 >@@ -37,6 +37,7 @@ SECTIONS > *(.data2) > ${RELOCATING+*(.data\$*)} > ${RELOCATING+__data_end__ = . ;} >+ *(.data_cygwin_nocopy) > } > > .bss ${RELOCATING+BLOCK(__section_alignment__)} : - For help on using this list (especially unsubscribing), send a message to "gnu-win32-request AT cygnus DOT com" with one line of text: "help".