git: b58a13b94c99 - stable/12 - Add ElfW() macro for compatibility with Linux
Dimitry Andric
dim at FreeBSD.org
Sat Aug 14 13:04:37 UTC 2021
The branch stable/12 has been updated by dim:
URL: https://cgit.FreeBSD.org/src/commit/?id=b58a13b94c99a5c505bc24ca705111585d1b6759
commit b58a13b94c99a5c505bc24ca705111585d1b6759
Author: Dimitry Andric <dim at FreeBSD.org>
AuthorDate: 2021-08-05 18:57:22 +0000
Commit: Dimitry Andric <dim at FreeBSD.org>
CommitDate: 2021-08-14 13:00:28 +0000
Add ElfW() macro for compatibility with Linux
Some Linux software using ELF headers assumes the existence of an
ElfW(type) macro, which concatenates 'Elf', the default ELF word size,
and the given type. This is identical to our __ElfN(x) macro in
<sys/elf_generic.h>. Add the macro for compatibility, with a comment
that we prefer the __ElfN() macro for FreeBSD.
Reviewed by: emaste, kib
Differential Revision: https://reviews.freebsd.org/D31427
MFC after: 1 week
(cherry picked from commit 34e7e4b6a059eee5e4e3e34de5b9d5f0d6e589f9)
---
sys/sys/elf_generic.h | 3 +++
1 file changed, 3 insertions(+)
diff --git a/sys/sys/elf_generic.h b/sys/sys/elf_generic.h
index 301ee52cf7a1..dcd44fe93b14 100644
--- a/sys/sys/elf_generic.h
+++ b/sys/sys/elf_generic.h
@@ -57,6 +57,9 @@
#define __ELFN(x) __CONCAT(__CONCAT(__CONCAT(ELF,__ELF_WORD_SIZE),_),x)
#define __ElfType(x) typedef __ElfN(x) __CONCAT(Elf_,x)
+/* Define ElfW for compatibility with Linux, prefer __ElfN() in FreeBSD code */
+#define ElfW(x) __ElfN(x)
+
__ElfType(Addr);
__ElfType(Half);
__ElfType(Off);
More information about the dev-commits-src-all
mailing list