aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAvatar David Leverton <levertond@googlemail.com> 2010-08-07 22:08:37 +0100
committerAvatar David Leverton <levertond@googlemail.com> 2010-08-07 22:16:30 +0100
commit2371515955763f9c3e38177cccc13d908c64149d (patch)
tree6ac353dff6fe93d284f654c026d5d429eb1aa14d
parentc6528ac2517a97e75e2f7ca9cefc17f241df248d (diff)
downloadpaludis-2371515955763f9c3e38177cccc13d908c64149d.tar.gz
paludis-2371515955763f9c3e38177cccc13d908c64149d.tar.xz
Don't consider OS ABI when checking library compatibility
glibc accepts both _SYSV and _LINUX, and as of 2.12, creates its own libraries with _LINUX (and also starts checking the ABI version with a range rather than always 0) so it doesn't make sense to categorise files as one or the other as far as mutual compatibility goes. It's not clear what the rules should be exactly, so just ignore unless/until we get complaints/more information.
-rw-r--r--paludis/elf_linkage_checker.cc8
1 files changed, 1 insertions, 7 deletions
diff --git a/paludis/elf_linkage_checker.cc b/paludis/elf_linkage_checker.cc
index c1f8b44..a3959b1 100644
--- a/paludis/elf_linkage_checker.cc
+++ b/paludis/elf_linkage_checker.cc
@@ -56,7 +56,7 @@ namespace
static const unsigned MIPS_ABI2 = 32;
unsigned _machine;
- unsigned char _class, _os_abi, _os_abi_version;
+ unsigned char _class;
bool _bigendian, _mips_n32;
bool operator< (const ElfArchitecture &) const PALUDIS_ATTRIBUTE((warn_unused_result));
@@ -77,8 +77,6 @@ namespace
ElfArchitecture(const ElfObject<ElfType_> & elf) :
_machine(normalise_arch(elf.get_arch())),
_class(ElfType_::elf_class),
- _os_abi(elf.get_os_abi()),
- _os_abi_version(elf.get_os_abi_version()),
_bigendian(elf.is_big_endian()),
_mips_n32(EM_MIPS == _machine && MIPS_ABI2 & elf.get_flags())
{
@@ -92,10 +90,6 @@ namespace
return _machine < other._machine;
if (_class != other._class)
return _class < other._class;
- if (_os_abi != other._os_abi)
- return _os_abi < other._os_abi;
- if (_os_abi_version != other._os_abi_version)
- return _os_abi_version < other._os_abi_version;
if (_bigendian != other._bigendian)
return _bigendian < other._bigendian;
return _mips_n32 < other._mips_n32;