diff options
author | Elliott Hughes <enh@google.com> | 2014-12-02 16:16:29 -0800 |
---|---|---|
committer | Elliott Hughes <enh@google.com> | 2014-12-02 16:16:29 -0800 |
commit | b514026eb22d408da0d7090bf57b342d4ceb4097 (patch) | |
tree | 4867be5bd8f963d17ab26d1fad16b9d23e026d4b /linker/linker_phdr.cpp | |
parent | 6995c1dcb5a9ad77a54d950fc24f5aba00909b69 (diff) | |
download | android_bionic-b514026eb22d408da0d7090bf57b342d4ceb4097.tar.gz android_bionic-b514026eb22d408da0d7090bf57b342d4ceb4097.tar.bz2 android_bionic-b514026eb22d408da0d7090bf57b342d4ceb4097.zip |
Kill <machine/exec.h>.
Bug: 18546535
Change-Id: I479e003deab21e31eb5caa5393067ed1dc558387
Diffstat (limited to 'linker/linker_phdr.cpp')
-rw-r--r-- | linker/linker_phdr.cpp | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/linker/linker_phdr.cpp b/linker/linker_phdr.cpp index 61ae5ab28..ffd4de28a 100644 --- a/linker/linker_phdr.cpp +++ b/linker/linker_phdr.cpp @@ -29,7 +29,6 @@ #include "linker_phdr.h" #include <errno.h> -#include <machine/exec.h> #include <sys/mman.h> #include <sys/types.h> #include <sys/stat.h> @@ -38,6 +37,20 @@ #include "linker.h" #include "linker_debug.h" +static int GetTargetElfMachine() { +#if defined(__arm__) + return EM_ARM; +#elif defined(__aarch64__) + return EM_AARCH64; +#elif defined(__i386__) + return EM_386; +#elif defined(__mips__) + return EM_MIPS; +#elif defined(__x86_64__) + return EM_X86_64; +#endif +} + /** TECHNICAL NOTE ON ELF LOADING. @@ -200,7 +213,7 @@ bool ElfReader::VerifyElfHeader() { return false; } - if (header_.e_machine != ELF_TARG_MACH) { + if (header_.e_machine != GetTargetElfMachine()) { DL_ERR("\"%s\" has unexpected e_machine: %d", name_, header_.e_machine); return false; } |