From f199d860aec77c025228942b51e79d92d7ac8f4d Mon Sep 17 00:00:00 2001 From: Jan Beulich Date: Wed, 22 Dec 2004 08:41:43 +0000 Subject: config.gcc: Add dbxelf.h to NetWare's tm_file. gcc/ 2004-12-22 Jan Beulich * config.gcc: Add dbxelf.h to NetWare's tm_file. * config/i386/netware-crt0.c: Prototype __init_environment and __deinit_environment prior to their definition. (__init_environment): Correct invokation of constructor function. * config/i386/netware.h (TARGET_OS_CPP_BUILTINS): Use builtin_define_std rather than builtin_define on IAPX386. * config/i386/nwld.h: Disable stabs debugging info with the linker this file supports. * config/i386/t-nwld (SHLIB_LINK): Do not use a temporary file for the output. Add -posix to the options as that is the more compatible mode. * gthr-nks.h: Formatting. (__gthread_mutex_init_function): Kill the dubious use of NX_MUTEX_RECURSIVE as it is now clear that the traditional mutexes were not meant to be recursive. (__gthread_recursive_mutex_t, __GTHREAD_RECURSIVE_MUTEX_INIT_FUNCTION, __gthread_recursive_mutex_init_function, __gthread_recursive_mutex_lock, __gthread_recursive_mutex_trylock, __gthread_recursive_mutex_unlock): New. gcc/testsuite/ 2004-12-22 Jan Beulich * gcc.dg/20040813-1.c: Skip for *-*-netware*. From-SVN: r92488 --- gcc/config/i386/netware-crt0.c | 5 ++++- gcc/config/i386/netware.h | 2 +- gcc/config/i386/nwld.h | 3 +++ gcc/config/i386/t-nwld | 3 ++- 4 files changed, 10 insertions(+), 3 deletions(-) (limited to 'gcc/config/i386') diff --git a/gcc/config/i386/netware-crt0.c b/gcc/config/i386/netware-crt0.c index b553f3d..0da9114 100644 --- a/gcc/config/i386/netware-crt0.c +++ b/gcc/config/i386/netware-crt0.c @@ -23,6 +23,9 @@ Boston, MA 02111-1307, USA. */ #include #include "unwind-dw2-fde.h" +int __init_environment (void *); +int __deinit_environment (void *); + #define SECTION_DECL(name, decl) decl __attribute__((__section__(name))) @@ -54,7 +57,7 @@ __init_environment (void *unused __attribute__((__unused__))) for (pctor = &__CTOR_END__ - 1; pctor > &__CTOR_LIST__; --pctor) if (*pctor != NULL) - pctor(); + (*pctor)(); return 0; } diff --git a/gcc/config/i386/netware.h b/gcc/config/i386/netware.h index 9246f3f..13e5e39 100644 --- a/gcc/config/i386/netware.h +++ b/gcc/config/i386/netware.h @@ -47,7 +47,7 @@ Boston, MA 02111-1307, USA. */ #define TARGET_OS_CPP_BUILTINS() \ do \ { \ - builtin_define ("IAPX386"); \ + builtin_define_std ("IAPX386"); \ builtin_define ("_M_IX86=300"); \ builtin_define ("__netware__"); \ builtin_assert ("system=netware"); \ diff --git a/gcc/config/i386/nwld.h b/gcc/config/i386/nwld.h index 8dd7c9f..67fa213 100644 --- a/gcc/config/i386/nwld.h +++ b/gcc/config/i386/nwld.h @@ -57,3 +57,6 @@ void nwld_named_section_asm_out_destructor (rtx, int); #undef EH_FRAME_SECTION_NAME #define EH_FRAME_SECTION_NAME ".eh_frame"TARGET_SUB_SECTION_SEPARATOR + +/* nwld does not currently support stabs debug info */ +#undef DBX_DEBUGGING_INFO diff --git a/gcc/config/i386/t-nwld b/gcc/config/i386/t-nwld index f56f1f1..2535563 100644 --- a/gcc/config/i386/t-nwld +++ b/gcc/config/i386/t-nwld @@ -38,6 +38,7 @@ SHLIB_SRC = $(srcdir)/config/i386/netware-libgcc.c SHLIB_LINK = set -e; \ cat $(SHLIB_DEF) >@shlib_so_name@.def; \ + echo "name $(SHLIB_NAME)" >>@shlib_so_name@.def; \ echo "version $(gcc_version)" | sed "s!\.!,!g" >>@shlib_so_name@.def; \ touch libgcc/build; \ echo "build $$$$(($$$$(>@shlib_so_name@.def; \ @@ -47,7 +48,7 @@ SHLIB_LINK = set -e; \ else echo "WARNING: $(SHLIB_NAME) built without XDC data will not work well." 1>&2; \ fi; \ $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -o $(SHLIB_NAME) \ - $(SHLIB_SRC) -static-libgcc -lnetware \ + $(SHLIB_SRC) -posix -static-libgcc -lnetware \ -Wl,--Map,--map-info,full,--strip-all,--def-file,@shlib_so_name@.def; \ rm -f @shlib_so_name@.imp; $(LN_S) $(SHLIB_MAP) @shlib_so_name@.imp; \ echo $$$$(($$$$(libgcc/build -- cgit v1.1