delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2001/02/07/15:07:33

From: "Mark E." <snowball3 AT bigfoot DOT com>
To: djgpp-workers AT delorie DOT com
Date: Wed, 7 Feb 2001 14:36:19 -0500
MIME-Version: 1.0
Subject: GCC: DJGPP bootstrap fix + define MSDOS
Message-ID: <3A815D63.28556.10AD1D4@localhost>
X-mailer: Pegasus Mail for Win32 (v3.12c)
Reply-To: djgpp-workers AT delorie DOT com

Greetings,
gcc will no longer bootstrap after the last cvs update. Turns out this is 
because the macro SUPPORTS_ONE_ONLY is now used in CPP. SUPPORTS_ONE_ONLY 
uses target_flags to determine if the -mbnu210 switch has been used, but the 
target_flags variable is naturally not available in CPP. The only way I see 
to fix the bootstrap is to eliminate the -mbnu210 switch. Any less drastic 
ideas are welcomed.

Index: djgpp.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/i386/djgpp.h,v
retrieving revision 1.22
diff -c -p -r1.22 djgpp.h
*** djgpp.h	2001/02/07 00:33:20	1.22
--- djgpp.h	2001/02/07 19:24:19
*************** Boston, MA 02111-1307, USA.  */
*** 117,123 ****
  /* Include <sys/version.h> so __DJGPP__ and __DJGPP_MINOR__ are defined.  
*/
  #undef CPP_SPEC
  #define CPP_SPEC "-remap %(cpp_cpu) %{posix:-D_POSIX_SOURCE} \
!   -imacros %s../include/sys/version.h"
  
  /* We need to override link_command_spec in gcc.c so support -Tdjgpp.djl.
     This cannot be done in LINK_SPECS as that LINK_SPECS is processed
--- 117,123 ----
  /* Include <sys/version.h> so __DJGPP__ and __DJGPP_MINOR__ are defined.  
*/
  #undef CPP_SPEC
  #define CPP_SPEC "-remap %(cpp_cpu) %{posix:-D_POSIX_SOURCE} \
!   -imacros %s../include/sys/version.h %{!ansi:-DMSDOS}"
  
  /* We need to override link_command_spec in gcc.c so support -Tdjgpp.djl.
     This cannot be done in LINK_SPECS as that LINK_SPECS is processed
*************** dtor_section ()							\
*** 259,281 ****
  
  /* Used to be defined in xm-djgpp.h, but moved here for cross-compilers.  
*/
  #define LIBSTDCXX "-lstdcxx"
- 
- /* Add command line option -mbnu210 to indicate we can use binutil 2.10's 
features.  */
- #undef MASK_BNU210
- #define MASK_BNU210 (0x40000000)
- 
- #undef SUBTARGET_SWITCHES
- #define SUBTARGET_SWITCHES 		\
-   { "bnu210", -MASK_BNU210, "Enable weak symbol and enhanced C++ template 
support. Binutils 2.10 or higher required." }, \
-   { "no-bnu210", MASK_BNU210, "Disable weak symbol and enhanced C++ 
template support." },
- 
- /* Weak symbols and .gnu.linkonce are only in Binutils-2.10 and later. 
-    Default to using Binutils 2.10 features.  */
- #undef SUPPORTS_WEAK
- #define SUPPORTS_WEAK ((target_flags & MASK_BNU210) == 0)
- 
- #undef SUPPORTS_ONE_ONLY
- #define SUPPORTS_ONE_ONLY ((target_flags & MASK_BNU210) == 0)
  
  /* Support for C++ templates.  */
  #undef MAKE_DECL_ONE_ONLY
--- 259,264 ----

- Raw text -


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