git: 34e7e4b6a059 - main - Add ElfW() macro for compatibility with Linux
Dimitry Andric
dim at FreeBSD.org
Fri Aug 6 18:51:52 UTC 2021
The branch main has been updated by dim:
URL: https://cgit.FreeBSD.org/src/commit/?id=34e7e4b6a059eee5e4e3e34de5b9d5f0d6e589f9
commit 34e7e4b6a059eee5e4e3e34de5b9d5f0d6e589f9
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-06 18:50:32 +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
---
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-main
mailing list