delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/1998/03/13/13:15:04

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 <cgf AT bbc DOT com> 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 <khan AT xraylith DOT wisc DOT edu>
>
>	* 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 <khan AT xraylith DOT wisc DOT edu>
>
>	* 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".

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019