mirror of
git://sourceware.org/git/glibc.git
synced 2024-11-21 01:12:26 +08:00
Fix abiversion handling for MIPS.
This commit is contained in:
parent
3af825d53b
commit
1dbb4edc73
@ -1,3 +1,7 @@
|
||||
2010-04-06 Joseph Myers <joseph@codesourcery.com>
|
||||
|
||||
* libc-abis: New.
|
||||
|
||||
2006-03-06 Roland McGrath <roland@redhat.com>
|
||||
|
||||
* Makefile (%.bz2, %.gz): New pattern rules.
|
||||
|
@ -1,3 +1,10 @@
|
||||
2010-04-06 Joseph Myers <joseph@codesourcery.com>
|
||||
|
||||
* sysdeps/mips/dl-machine.h (VALID_ELF_ABIVERSION,
|
||||
VALID_ELF_OSABI, VALID_ELF_HEADER): Remove.
|
||||
* sysdeps/unix/sysv/linux/mips/ldsodefs.h (VALID_ELF_ABIVERSION):
|
||||
Define.
|
||||
|
||||
2010-03-30 Joseph Myers <joseph@codesourcery.com>
|
||||
|
||||
* sysdeps/unix/sysv/linux/mips/bits/socket.h: Define
|
||||
|
16
libc-abis
Normal file
16
libc-abis
Normal file
@ -0,0 +1,16 @@
|
||||
# See the copy of this file in libc for detailed explanations. The
|
||||
# ports copy needs to include all libc definitions applicable to any
|
||||
# ports target; only one copy will be used.
|
||||
#
|
||||
# Feature Name Configuration
|
||||
# ------------ -------------
|
||||
#
|
||||
# MIPS PLTs.
|
||||
MIPS_PLT mips*-*-linux*
|
||||
#
|
||||
# Unique symbol definitions for C++.
|
||||
# Architecture independent, all ELF targets (== all targets)
|
||||
UNIQUE
|
||||
#
|
||||
# Indirect PLT relocations. Architecture dependent.
|
||||
IFUNC powerpc-*-linux*
|
@ -75,15 +75,6 @@ do { if ((l)->l_info[DT_MIPS (RLD_MAP)]) \
|
||||
(ElfW(Addr)) (r); \
|
||||
} while (0)
|
||||
|
||||
/* Allow ABIVERSION == 1, meaning PLTs and copy relocations are
|
||||
required. */
|
||||
#define VALID_ELF_ABIVERSION(ver) (ver == 0 || ver == 2)
|
||||
#define VALID_ELF_OSABI(osabi) (osabi == ELFOSABI_SYSV)
|
||||
#define VALID_ELF_HEADER(hdr,exp,size) \
|
||||
memcmp (hdr,exp,size-2) == 0 \
|
||||
&& VALID_ELF_OSABI (hdr[EI_OSABI]) \
|
||||
&& VALID_ELF_ABIVERSION (hdr[EI_ABIVERSION])
|
||||
|
||||
/* Return nonzero iff ELF header is compatible with the running host. */
|
||||
static inline int __attribute_used__
|
||||
elf_machine_matches_host (const ElfW(Ehdr) *ehdr)
|
||||
|
@ -30,4 +30,12 @@ extern void _dl_static_init (struct link_map *map);
|
||||
#undef DL_STATIC_INIT
|
||||
#define DL_STATIC_INIT(map) _dl_static_init (map)
|
||||
|
||||
/* Allow ABIVERSION == 1, meaning PLTs and copy relocations are
|
||||
required, with ELFOSABI_SYSV. */
|
||||
#undef VALID_ELF_ABIVERSION
|
||||
#define VALID_ELF_ABIVERSION(osabi,ver) \
|
||||
(ver == 0 \
|
||||
|| (osabi == ELFOSABI_SYSV && ver < 2) \
|
||||
|| (osabi == ELFOSABI_LINUX && ver < LIBC_ABI_MAX))
|
||||
|
||||
#endif /* ldsodefs.h */
|
||||
|
Loading…
Reference in New Issue
Block a user