git: d33e4c76bdc7 - 2021Q4 - devel/elfutils: Fix build after mempcpy(3) and wmempcpy(3) were added
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 08 Nov 2021 09:06:45 UTC
The branch 2021Q4 has been updated by yuri:
URL: https://cgit.FreeBSD.org/ports/commit/?id=d33e4c76bdc723c7059c841dc4ad14be6a30d8ac
commit d33e4c76bdc723c7059c841dc4ad14be6a30d8ac
Author: Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2021-11-07 23:42:46 +0000
Commit: Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2021-11-08 09:06:43 +0000
devel/elfutils: Fix build after mempcpy(3) and wmempcpy(3) were added
PR: 258092
(cherry picked from commit 06a7ac65bd3efb5eb1a1705a55f11acc812d941d)
---
devel/elfutils/Makefile | 6 ++++++
devel/elfutils/files/patch-lib_eu-config.h | 6 +++++-
2 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/devel/elfutils/Makefile b/devel/elfutils/Makefile
index 894ce37687dc..98b4cd366da5 100644
--- a/devel/elfutils/Makefile
+++ b/devel/elfutils/Makefile
@@ -48,6 +48,12 @@ CONFIGURE_ARGS+= --program-prefix=eu-
# Disable debuginfod until option support can be added:
CONFIGURE_ARGS+= --disable-debuginfod
+.include <bsd.port.options.mk>
+
+.if ${OPSYS} == FreeBSD && ${OSVERSION} >= 1300512 # 2021-07-17
+CFLAGS+= -DFREEBSD_HAS_MEMPCPY
+.endif
+
pre-configure:
@${CP} -a \
${LOCALBASE}/share/gnulib/lib/obstack.c \
diff --git a/devel/elfutils/files/patch-lib_eu-config.h b/devel/elfutils/files/patch-lib_eu-config.h
index f9502d4abe2a..04549063aa1c 100644
--- a/devel/elfutils/files/patch-lib_eu-config.h
+++ b/devel/elfutils/files/patch-lib_eu-config.h
@@ -1,6 +1,6 @@
--- lib/eu-config.h.orig 2020-03-30 12:17:45 UTC
+++ lib/eu-config.h
-@@ -176,6 +176,182 @@ asm (".section predict_data, \"aw\"; .previous\n"
+@@ -176,6 +176,186 @@ asm (".section predict_data, \"aw\"; .previous\n"
#define ELFUTILS_HEADER(name) <lib##name.h>
@@ -23,6 +23,9 @@
+
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wshadow"
++#ifndef FREEBSD_HAS_MEMPCPY // fix for the build failure, see bug#258092: mempcpy and wmempcpy were added in commits:
++// on 14: ee37f64cf875255338f917a9da76c643cf59786c on 2021-07-15
++// on 13: dba677d13b26ad5422133b2ab76486b74d63ade4 on 2021-07-22
+static inline void *
+mempcpy(void * restrict dst, const void * restrict src, size_t len)
+{
@@ -36,6 +39,7 @@
+
+ return (wmemcpy(dst, src, len) + len);
+}
++#endif
+#pragma GCC diagnostic pop
+
+static inline void *