diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2024-08-30 19:07:16 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2024-08-30 19:35:01 +0000 |
commit | 117ed7e19830f213744750d5db48d45766f5c1a5 (patch) | |
tree | b830a6b304e46e6c48e4e2907b9306c54cbb5933 | |
parent | ddfa6f9f825349d48a06ef8a005fccc263ef4891 (diff) | |
download | ports-117ed7e19830f213744750d5db48d45766f5c1a5.tar.gz ports-117ed7e19830f213744750d5db48d45766f5c1a5.zip |
editors/le: fix build with recent libc++ headers
As reported on the ports mailing lists, with recent libc++ headers on
e.g. 15.0-CURRENT, 13.4 or 14.2, editors/le fails with errors similar
to:
/usr/include/c++/v1/ios:257:25: error: expected ')'
257 | static const fmtflags hex = 0x0008;
| ^
./edit.h:158:26: note: expanded from macro 'hex'
158 | #define hex (editmode==HEXM)
| ^
/usr/include/c++/v1/ios:257:25: note: to match this '('
./edit.h:158:17: note: expanded from macro 'hex'
158 | #define hex (editmode==HEXM)
| ^
This is because edit.h defines a `hex` macro, and this clashes with
std::hex from the libc++ headers.
To fix the build, use post-patch to rename the `hex` macro to `is_hex`.
PR: 281141
Reported by: J David <j.david.lists@gmail.com>
Approved by: zi (maintainer)
MFH: 2024Q3
(cherry picked from commit 1aa709605c874eb09ce84076367d86a02023ee2d)
-rw-r--r-- | editors/le/Makefile | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/editors/le/Makefile b/editors/le/Makefile index d3c803e84423..04108f14cffb 100644 --- a/editors/le/Makefile +++ b/editors/le/Makefile @@ -20,6 +20,11 @@ GNU_CONFIGURE_MANPREFIX= ${PREFIX}/share MAKE_JOBS_UNSAFE= yes +post-patch: + @${FIND} ${WRKSRC} -type f \( -name '*.[ch]' -o -name '*.cc' \) | \ + ${XARGS} ${GREP} -l '[[:<:]]hex[[:>:]]' | \ + ${XARGS} ${REINPLACE_CMD} -e 's/[[:<:]]hex[[:>:]]/is_hex/g' + derp-do-install: @${MKDIR} ${STAGEDIR}${DATADIR} ${STAGEDIR}${DOCSDIR} (cd ${WRKSRC}/src && ${INSTALL_PROGRAM} le ${STAGEDIR}${PREFIX}/bin) |