about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux/arm
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2000-03-31 05:50:02 +0000
committerUlrich Drepper <drepper@redhat.com>2000-03-31 05:50:02 +0000
commitb5567b2af66e2be232c0db9bf189424c039465d2 (patch)
tree9273a3119bdb9e10fca7376a2b933bc41eded931 /sysdeps/unix/sysv/linux/arm
parentb86120ed685c140c3d19386d463d6efba436ab92 (diff)
downloadglibc-b5567b2af66e2be232c0db9bf189424c039465d2.tar.gz
glibc-b5567b2af66e2be232c0db9bf189424c039465d2.tar.xz
glibc-b5567b2af66e2be232c0db9bf189424c039465d2.zip
Update.
2000-03-29  Jes Sorensen  <jes@pcatls01.cern.ch>

	* malloc/malloc.c: Declare bit flags UL so that they will not
	default to int size when being inverted.

2000-03-29  Andreas Jaeger  <aj@suse.de>

	* sysdeps/unix/sysv/linux/arm/errlist.c: Use shlib-compat macros.
	* sysdeps/unix/sysv/linux/arm/siglist.c: Likewise.

2000-03-29  Andreas Jaeger  <aj@suse.de>,
            Ralf Baechle <ralf@uni-koblenz.de>

	* Makeconfig: Introduce new variable SHARED to mark code used in
	the shared library.
	* elf/dl-close.c: Use it instead of PIC.
	* elf/dl-load.c: Likewise.
	* elf/dl-open.c: Likewise.
	* hurd/geteuids.c: Likewise.
	* include/libc-symbols.h: Likewise.
	* include/shlib-compat.h: Likewise.
	* libio/freopen.c: Likewise.
	* linuxthreads/cancel.c: Likewise.
	* linuxthreads/pthread.c: Likewise.
	* linuxthreads/wrapsyscall.c: Likewise.
	* nss/nsswitch.c: Likewise.
	* stdio-common/vfprintf.c: Likewise.
	* sysdeps/arm/init-first.c: Likewise.
	* sysdeps/i386/init-first.c: Likewise
	* sysdeps/generic/init-first.c: Likewise.
	* sysdeps/generic/libc-start.c: Likewise.
	* sysdeps/mips/init-first.c: Likewise.
	* sysdeps/powerpc/elf/libc-start.c: Likewise.
	* sysdeps/unix/sysv/linux/init-first.c: Likewise.
	* sysdeps/unix/sysv/linux/arm/siglist.c: Likewise.
	* sysdeps/unix/sysv/linux/arm/errlist.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/chown.c: Likewise.

	* sysdeps/mips/machine-gmon.h (asm): Use __PIC__ as check.
Diffstat (limited to 'sysdeps/unix/sysv/linux/arm')
-rw-r--r--sysdeps/unix/sysv/linux/arm/errlist.c27
-rw-r--r--sysdeps/unix/sysv/linux/arm/siglist.c38
2 files changed, 27 insertions, 38 deletions
diff --git a/sysdeps/unix/sysv/linux/arm/errlist.c b/sysdeps/unix/sysv/linux/arm/errlist.c
index e249522514..c72ecd86fd 100644
--- a/sysdeps/unix/sysv/linux/arm/errlist.c
+++ b/sysdeps/unix/sysv/linux/arm/errlist.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998 Free Software Foundation, Inc.
+/* Copyright (C) 1998, 2000 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -18,18 +18,18 @@
 
 #include <sizes.h>
 #include <errlist.h>
+#include <shlib-compat.h>
 
-#if defined HAVE_ELF && defined PIC && defined DO_VERSIONING
-
-# define SYS_ERRLIST __new_sys_errlist
-# define SYS_NERR __new_sys_nerr
+#define SYS_ERRLIST __new_sys_errlist
+#define SYS_NERR __new_sys_nerr
 
+#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)
 asm (".data; .globl __old_sys_errlist;  __old_sys_errlist:");
 #endif
 
 #include <sysdeps/gnu/errlist.c>
 
-#if defined HAVE_ELF && defined PIC && defined DO_VERSIONING
+#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)
 asm (".type __old_sys_errlist,%object;.size __old_sys_errlist,"
      OLD_ERRLIST_SIZE_STR "*" PTR_SIZE_STR);
 
@@ -44,12 +44,11 @@ symbol_version (_old_sys_nerr, sys_nerr, GLIBC_2.0);
 weak_alias (__old_sys_errlist, _old_sys_errlist);
 symbol_version (__old_sys_errlist, _sys_errlist, GLIBC_2.0);
 symbol_version (_old_sys_errlist, sys_errlist, GLIBC_2.0);
-
-weak_alias (__new_sys_nerr, _new_sys_nerr)
-default_symbol_version (__new_sys_nerr, _sys_nerr, GLIBC_2.1);
-default_symbol_version (_new_sys_nerr, sys_nerr, GLIBC_2.1);
-weak_alias (__new_sys_errlist, _new_sys_errlist)
-default_symbol_version (__new_sys_errlist, _sys_errlist, GLIBC_2.1);
-default_symbol_version (_new_sys_errlist, sys_errlist, GLIBC_2.1);
-
 #endif
+
+strong_alias (__new_sys_nerr, _new_sys_nerr)
+versioned_symbol (libc, __new_sys_nerr, _sys_nerr, GLIBC_2_1);
+versioned_symbol (libc, _new_sys_nerr, sys_nerr, GLIBC_2_1);
+strong_alias (__new_sys_errlist, _new_sys_errlist)
+versioned_symbol (libc, __new_sys_errlist, _sys_errlist, GLIBC_2_1);
+versioned_symbol (libc, _new_sys_errlist, sys_errlist, GLIBC_2_1);
diff --git a/sysdeps/unix/sysv/linux/arm/siglist.c b/sysdeps/unix/sysv/linux/arm/siglist.c
index 5d3a9afc53..3d7464e3e4 100644
--- a/sysdeps/unix/sysv/linux/arm/siglist.c
+++ b/sysdeps/unix/sysv/linux/arm/siglist.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997, 1998 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 1998, 2000 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -20,41 +20,34 @@
 #include <signal.h>
 #include <sizes.h>
 #include <libintl.h>
+#include <shlib-compat.h>
 
-#if defined HAVE_ELF && defined PIC && defined DO_VERSIONING
-# define SYS_SIGLIST	__new_sys_siglist
-# define SYS_SIGABBREV	__new_sys_sigabbrev
-#else
-# define SYS_SIGLIST	_sys_siglist
-# define SYS_SIGABBREV	_sys_sigabbrev
-#endif
-
-#if defined HAVE_ELF && defined PIC && defined DO_VERSIONING
+#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)
 asm (".data; .globl __old_sys_siglist;  __old_sys_siglist:");
 #endif
 
-const char *const SYS_SIGLIST[NSIG] =
+const char *const __new_sys_siglist[NSIG] =
 {
 #define init_sig(sig, abbrev, desc)   [sig] desc,
 #include "siglist.h"
 #undef init_sig
 };
 
-#if defined HAVE_ELF && defined PIC && defined DO_VERSIONING
+#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)
 asm (".type __old_sys_siglist,%object;.size __old_sys_siglist,"
         OLD_SIGLIST_SIZE_STR "*" PTR_SIZE_STR);
 
 asm (".data; .globl __old_sys_sigabbrev;  __old_sys_sigabbrev:");
 #endif
 
-const char *const SYS_SIGABBREV[NSIG] =
+const char *const __new_sys_sigabbrev[NSIG] =
 {
 #define init_sig(sig, abbrev, desc)   [sig] abbrev,
 #include "siglist.h"
 #undef init_sig
 };
 
-#if defined HAVE_ELF && defined PIC && defined DO_VERSIONING
+#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)
 asm (".type __old_sys_sigabbrev,%object;.size __old_sys_sigabbrev,"
         OLD_SIGLIST_SIZE_STR "*" PTR_SIZE_STR);
 
@@ -62,15 +55,12 @@ extern const char *const *__old_sys_siglist;
 extern const char *const *__old_sys_sigabbrev;
 
 strong_alias (__old_sys_siglist, _old_sys_siglist)
-symbol_version (__old_sys_siglist, _sys_siglist, GLIBC_2.0);
-symbol_version (_old_sys_siglist, sys_siglist, GLIBC_2.0);
-symbol_version (__old_sys_sigabbrev, sys_sigabbrev, GLIBC_2.0);
+compat_symbol (libc, __old_sys_siglist, _sys_siglist, GLIBC_2_0);
+compat_symbol (libc, _old_sys_siglist, sys_siglist, GLIBC_2_0);
+compat_symbol (libc, __old_sys_sigabbrev, sys_sigabbrev, GLIBC_2_0);
+#endif
 
 strong_alias (__new_sys_siglist, _new_sys_siglist)
-default_symbol_version (__new_sys_siglist, _sys_siglist, GLIBC_2.1);
-default_symbol_version (_new_sys_siglist, sys_siglist, GLIBC_2.1);
-default_symbol_version (__new_sys_sigabbrev, sys_sigabbrev, GLIBC_2.1);
-#else
-weak_alias (_sys_siglist, sys_siglist)
-weak_alias (_sys_sigabbrev, sys_sigabbrev)
-#endif
+versioned_symbol (libc, __new_sys_siglist, _sys_siglist, GLIBC_2_1);
+versioned_symbol (libc, _new_sys_siglist, sys_siglist, GLIBC_2_1);
+versioned_symbol (libc, __new_sys_sigabbrev, sys_sigabbrev, GLIBC_2_1);