This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

IMAGE_SCN_MEM_DISCARDABLE on .reloc vs relocatable dlls


This patch will cause problems with stripping of relocatable dlls..

2003-12-15  Dmitry Semyonov  <Dmitry.Semyonov@oktet.ru>
	    Nick Clifton  <nickc@redhat.com>

	* peXXigen.c (_bfd_XXi_swap_scnhdr_out): Ensure that correct flags
	are set on known section types.

Setting section flags for .reloc with IMAGE_SCN_MEM_DISCARDABLE means
that it will be treated like debugging info and be stripped when using
strip with no options or when using ld -s. This will render the dll
non-relocatable.

Attached fixes.   If the user really wants to make the dll non-relocatable
'strip --remove-section=.reloc' can still be used. 

ChangeLog 

2003-12-19  Danny Smith  <dannysmith@users.sourceforge.net>

	* coffcode.h (styp_to_sec_flags): Don't treat .reloc section
	as SEC_DEBUGGING.


Index: coffcode.h
===================================================================
RCS file: /cvs/src/src/bfd/coffcode.h,v
retrieving revision 1.100
diff -c -3 -p -r1.100 coffcode.h
*** coffcode.h	1 Dec 2003 18:46:21 -0000	1.100
--- coffcode.h	19 Dec 2003 00:00:02 -0000
*************** styp_to_sec_flags (abfd, hdr, name, sect
*** 1064,1070 ****
  	  sec_flags &= ~ SEC_READONLY;
  	  break;
  	case IMAGE_SCN_MEM_DISCARDABLE:
! 	  sec_flags |= SEC_DEBUGGING;
  	  break;
  	case IMAGE_SCN_MEM_SHARED:
  	  sec_flags |= SEC_SHARED;
--- 1065,1072 ----
  	  sec_flags &= ~ SEC_READONLY;
  	  break;
  	case IMAGE_SCN_MEM_DISCARDABLE:
! 	  if (strncmp (name, ".reloc", sizeof ".reloc" - 1) != 0)
! 	    sec_flags |= SEC_DEBUGGING;
  	  break;
  	case IMAGE_SCN_MEM_SHARED:
  	  sec_flags |= SEC_SHARED;

http://personals.yahoo.com.au - Yahoo! Personals
New people, new possibilities. FREE for a limited time.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]