This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


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

--enable-new-gxx-abi


This patch allows to configure g++ so that -fnew-abi is the default
(requiring -fno-new-abi to turn it off).

A later extension to this patch could also configure libstdc++-v3
instead of libstdc++.

Martin

Wed Aug 26 09:19:54 1998  Martin von L÷wis  <loewis@informatik.hu-berlin.de>

	* configure.in (--enable-new-gxx-abi): New option.
	* acconfig.h (ENABLE_NEW_GXX_ABI): Define.
	* gcc.c (CC1PLUS_FULL_SPEC): Define depending on option.

Index: acconfig.h
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/acconfig.h,v
retrieving revision 1.22
diff -c -p -r1.22 acconfig.h
*** acconfig.h	1998/07/09 00:27:20	1.22
--- acconfig.h	1998/08/25 06:43:29
***************
*** 59,64 ****
--- 59,67 ----
  /* Whether abort must be declared even if <stdlib.h> is included.  */
  #undef NEED_DECLARATION_ABORT
  
+ /* Use new g++ ABI */
+ #undef ENABLE_NEW_GXX_ABI
+ 
  /* Whether strerror must be declared even if <string.h> is included.  */
  #undef NEED_DECLARATION_STRERROR
  
Index: config.in
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/config.in,v
retrieving revision 1.33
diff -c -p -r1.33 config.in
*** config.in	1998/07/09 00:28:12	1.33
--- config.in	1998/08/25 06:43:42
***************
*** 60,65 ****
--- 60,68 ----
  /* Whether abort must be declared even if <stdlib.h> is included.  */
  #undef NEED_DECLARATION_ABORT
  
+ /* Use new g++ ABI */
+ #undef ENABLE_NEW_GXX_ABI
+ 
  /* Whether strerror must be declared even if <string.h> is included.  */
  #undef NEED_DECLARATION_STRERROR
  
Index: configure.in
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/configure.in,v
retrieving revision 1.138
diff -c -p -r1.138 configure.in
*** configure.in	1998/08/14 09:23:45	1.138
--- configure.in	1998/08/25 06:43:47
*************** AC_ARG_WITH(elf,
*** 55,60 ****
--- 55,66 ----
  elf="$with_elf",
  elf=no)
  
+ # Specify usage of new ABI
+ AC_ARG_ENABLE(new-gxx-abi,
+ [  --enable-new-gxx-abi    try experimental incompatible g++ features.],
+ AC_DEFINE(ENABLE_NEW_GXX_ABI)
+ )
+ 
  # Specify the local prefix
  local_prefix=
  AC_ARG_WITH(local-prefix,
Index: gcc.c
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/gcc.c,v
retrieving revision 1.52
diff -c -p -r1.52 gcc.c
*** gcc.c	1998/07/28 21:33:43	1.52
--- gcc.c	1998/08/25 06:43:53
*************** proper position among the other output f
*** 448,453 ****
--- 448,458 ----
  #ifndef CC1PLUS_SPEC
  #define CC1PLUS_SPEC ""
  #endif
+ #ifdef ENABLE_NEW_GXX_ABI
+ #define CC1PLUS_FULL_SPEC CC1PLUS_SPEC " -fnew-abi"
+ #else
+ #define CC1PLUS_FULL_SPEC CC1PLUS_SPEC
+ #endif
  
  /* config.h can define LINK_SPEC to provide extra args to the linker
     or extra switch-translations.  */
*************** proper position among the other output f
*** 506,512 ****
  static char *cpp_spec = CPP_SPEC;
  static char *cpp_predefines = CPP_PREDEFINES;
  static char *cc1_spec = CC1_SPEC;
! static char *cc1plus_spec = CC1PLUS_SPEC;
  static char *signed_char_spec = SIGNED_CHAR_SPEC;
  static char *asm_spec = ASM_SPEC;
  static char *asm_final_spec = ASM_FINAL_SPEC;
--- 511,517 ----
  static char *cpp_spec = CPP_SPEC;
  static char *cpp_predefines = CPP_PREDEFINES;
  static char *cc1_spec = CC1_SPEC;
! static char *cc1plus_spec = CC1PLUS_FULL_SPEC;
  static char *signed_char_spec = SIGNED_CHAR_SPEC;
  static char *asm_spec = ASM_SPEC;
  static char *asm_final_spec = ASM_FINAL_SPEC;


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