aboutsummaryrefslogtreecommitdiff
path: root/sysdeps
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2001-03-10 16:40:59 +0000
committerUlrich Drepper <drepper@redhat.com>2001-03-10 16:40:59 +0000
commit667b05772506c97e7d5dbddd405b593d99fc64b1 (patch)
treec6eead1cc5efa84cc3cb84fa70ab221c826d30d4 /sysdeps
parentf79bdc33c766b53cf3169c62e386a68d061b71b6 (diff)
downloadglibc-667b05772506c97e7d5dbddd405b593d99fc64b1.zip
glibc-667b05772506c97e7d5dbddd405b593d99fc64b1.tar.gz
glibc-667b05772506c97e7d5dbddd405b593d99fc64b1.tar.bz2
Update.
2001-03-07 David Mosberger <davidm@hpl.hp.com> * sysdeps/ia64/bits/fenv.h (FE_NONIEEE_ENV): New macro. 2001-03-07 Jes Sorensen <jes@linuxcare.com> * sysdeps/unix/sysv/linux/ia64/ioperm.c (_ioperm): Remove unused variables addr & len. 2001-02-22 Jes Sorensen <jes@linuxcare.com> * sysdeps/ia64/fpu/feenablxcpt.c (feenableexcept): Remove punctuation in asm constraint. 2001-03-07 Mark Kettenis <kettenis@gnu.org> * resolv/netdb.h [__USE_GNU]: Define __need_timespec and include <time.h> to get definition of `struct timespec'. 2001-03-08 Jakub Jelinek <jakub@redhat.com> * elf/rtld.c (dl_main): If tracing, warn about undefined symbols if LD_WARN=1, not if LD_WARN is unset. 2001-03-07 Andreas Schwab <schwab@suse.de> * elf/ldconfig.h: Moved to ... * sysdeps/generic/ldconfig.h: ... here. * sysdeps/unix/sysv/linux/i386/ldconfig.h: New file. * sysdeps/unix/sysv/linux/m68k/ldconfig.h: New file. * sysdeps/unix/sysv/linux/ia64/ldconfig.h: New file. * elf/readlib.c (interpreters, known_libs): Use SYSDEP_KNOWN_INTERPRETER_NAMES and SYSDEP_KNOWN_LIBRARY_NAMES instead of hard coding old names.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/generic/ldconfig.h68
-rw-r--r--sysdeps/ia64/bits/fenv.h5
-rw-r--r--sysdeps/ia64/fpu/feenablxcpt.c2
-rw-r--r--sysdeps/unix/sysv/linux/i386/ldconfig.h25
-rw-r--r--sysdeps/unix/sysv/linux/ia64/ioperm.c3
-rw-r--r--sysdeps/unix/sysv/linux/ia64/ldconfig.h25
-rw-r--r--sysdeps/unix/sysv/linux/m68k/ldconfig.h1
7 files changed, 128 insertions, 1 deletions
diff --git a/sysdeps/generic/ldconfig.h b/sysdeps/generic/ldconfig.h
new file mode 100644
index 0000000..aaad06d
--- /dev/null
+++ b/sysdeps/generic/ldconfig.h
@@ -0,0 +1,68 @@
+/* Copyright (C) 1999, 2000 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Andreas Jaeger <aj@suse.de>, 1999.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If not,
+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
+
+#ifndef _LDCONFIG_H
+#define _LDCONFIG_H
+
+#define FLAG_ANY -1
+#define FLAG_TYPE_MASK 0x00ff
+#define FLAG_LIBC4 0x0000
+#define FLAG_ELF 0x0001
+#define FLAG_ELF_LIBC5 0x0002
+#define FLAG_ELF_LIBC6 0x0003
+#define FLAG_REQUIRED_MASK 0xff00
+#define FLAG_SPARC_LIB64 0x0100
+#define FLAG_IA64_LIB64 0x0200
+#define FLAG_X8664_LIB64 0x0300
+
+/* Declared in cache.c. */
+extern void print_cache (const char *cache_name);
+
+extern void init_cache (void);
+
+extern void save_cache (const char *cache_name);
+
+extern void add_to_cache (const char *path, const char *lib, int flags,
+ uint64_t hwcap);
+
+/* Declared in readlib.c. */
+extern int process_file (const char *real_file_name, const char *file_name,
+ const char *lib, int *flag, char **soname,
+ int is_link);
+
+/* Declared in readelflib.c. */
+extern int process_elf_file (const char *file_name, const char *lib, int *flag,
+ char **soname, void *file_contents,
+ size_t file_length);
+
+/* Declared in chroot_canon.c. */
+extern char *chroot_canon (const char *chroot, const char *name);
+
+/* Declared in ldconfig.c. */
+extern int opt_verbose;
+
+extern int opt_format;
+
+/* Prototypes for a few program-wide used functions. */
+extern void *xmalloc (size_t __n);
+extern void *xcalloc (size_t __n, size_t __size);
+extern void *xrealloc (void *__p, size_t __n);
+extern char *xstrdup (const char *__str);
+
+#endif /* ! _LDCONFIG_H */
diff --git a/sysdeps/ia64/bits/fenv.h b/sysdeps/ia64/bits/fenv.h
index 783fc9b..80b7629 100644
--- a/sysdeps/ia64/bits/fenv.h
+++ b/sysdeps/ia64/bits/fenv.h
@@ -79,4 +79,9 @@ typedef unsigned long int fenv_t;
/* Floating-point environment where only FE_UNNORMAL is masked since this
exception is not generally supported by glibc. */
# define FE_NOMASK_ENV ((__const fenv_t *) 0xc009804c02700302UL)
+
+/* Floating-point environment with (processor-dependent) non-IEEE
+ floating point. In this case, turning on flush-to-zero mode for
+ s0, s2, and s3. */
+# define FE_NONIEEE_ENV ((__const fenv_t *) 0xc009a04d0270037fUL)
#endif
diff --git a/sysdeps/ia64/fpu/feenablxcpt.c b/sysdeps/ia64/fpu/feenablxcpt.c
index 686b750..c699ab4 100644
--- a/sysdeps/ia64/fpu/feenablxcpt.c
+++ b/sysdeps/ia64/fpu/feenablxcpt.c
@@ -27,7 +27,7 @@ feenableexcept (int excepts)
fenv_t new_fpsr;
/* Get the current fpsr. */
- __asm__ __volatile__ ("mov.m %0=ar.fpsr" : "=r " (old_fpsr));
+ __asm__ __volatile__ ("mov.m %0=ar.fpsr" : "=r" (old_fpsr));
new_fpsr = old_fpsr & ~((fenv_t) excepts & FE_ALL_EXCEPT);
diff --git a/sysdeps/unix/sysv/linux/i386/ldconfig.h b/sysdeps/unix/sysv/linux/i386/ldconfig.h
new file mode 100644
index 0000000..9a1a1e1
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/i386/ldconfig.h
@@ -0,0 +1,25 @@
+/* Copyright (C) 2001 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
+ modify it under the terms of the GNU Library General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If not,
+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
+
+#include <sysdeps/generic/ldconfig.h>
+
+#define SYSDEP_KNOWN_INTERPRETER_NAMES \
+ { "/lib/ld-linux.so.1", FLAG_ELF_LIBC5 },
+#define SYSDEP_KNOWN_LIBRARY_NAMES \
+ { "libc.so.5", FLAG_ELF_LIBC5 }, \
+ { "libm.so.5", FLAG_ELF_LIBC5 },
diff --git a/sysdeps/unix/sysv/linux/ia64/ioperm.c b/sysdeps/unix/sysv/linux/ia64/ioperm.c
index 14d960e..8943284 100644
--- a/sysdeps/unix/sysv/linux/ia64/ioperm.c
+++ b/sysdeps/unix/sysv/linux/ia64/ioperm.c
@@ -60,7 +60,10 @@ io_offset (unsigned long int port)
int
_ioperm (unsigned long int from, unsigned long int num, int turn_on)
{
+#if 0
unsigned long int addr, len, base;
+#endif
+ unsigned long int base;
int prot;
/* this test isn't as silly as it may look like; consider overflows! */
diff --git a/sysdeps/unix/sysv/linux/ia64/ldconfig.h b/sysdeps/unix/sysv/linux/ia64/ldconfig.h
new file mode 100644
index 0000000..e5ee162
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/ia64/ldconfig.h
@@ -0,0 +1,25 @@
+/* Copyright (C) 2001 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
+ modify it under the terms of the GNU Library General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If not,
+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
+
+#include <sysdeps/generic/ldconfig.h>
+
+#define SYSDEP_KNOWN_INTERPRETER_NAMES \
+ { "/lib/ld-linux.so.2", FLAG_ELF_LIBC6 },
+#define SYSDEP_KNOWN_LIBRARY_NAMES \
+ { "libc.so.6", FLAG_ELF_LIBC6 }, \
+ { "libm.so.6", FLAG_ELF_LIBC6 },
diff --git a/sysdeps/unix/sysv/linux/m68k/ldconfig.h b/sysdeps/unix/sysv/linux/m68k/ldconfig.h
new file mode 100644
index 0000000..953f192
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/m68k/ldconfig.h
@@ -0,0 +1 @@
+#include <sysdeps/unix/sysv/linux/i386/ldconfig.h>