commit:     3fb82ca8c2c89b551977fe98aee0f578bdf6ace4
Author:     Christopher Fore <csfore <AT> posteo <DOT> net>
AuthorDate: Thu Aug 15 13:47:32 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Aug 15 14:06:32 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3fb82ca8

sci-physics/lhapdf: Fix compilation on GCC 15

- Include patch from upstream MR (refer to patch file)

Closes: https://bugs.gentoo.org/937778
Signed-off-by: Christopher Fore <csfore <AT> posteo.net>
Closes: https://github.com/gentoo/gentoo/pull/38162
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/lhapdf-6.5.4-include-cstdint.patch       | 31 ++++++++++++++++++++++
 sci-physics/lhapdf/lhapdf-6.5.4-r1.ebuild          |  4 +++
 2 files changed, 35 insertions(+)

diff --git a/sci-physics/lhapdf/files/lhapdf-6.5.4-include-cstdint.patch 
b/sci-physics/lhapdf/files/lhapdf-6.5.4-include-cstdint.patch
new file mode 100644
index 000000000000..2afed53f210b
--- /dev/null
+++ b/sci-physics/lhapdf/files/lhapdf-6.5.4-include-cstdint.patch
@@ -0,0 +1,31 @@
+https://gitlab.com/hepcedar/lhapdf/merge_requests/96
+
+From: Christopher Fore <csf...@posteo.net>
+Date: Wed, 14 Aug 2024 20:38:03 -0400
+Subject: [PATCH] yamlcpp: Explicitly include <cstdint>
+
+GCC 15 will no longer include <cstdint> by default, resulting in build
+failures in projects that do not explicitly include it.
+
+Error:
+emitterutils.cpp:221:11: error: 'uint16_t' was not declared in this scope
+  221 | std::pair<uint16_t, uint16_t> EncodeUTF16SurrogatePair(int codePoint) {
+      |           ^~~~~~~~
+emitterutils.cpp:13:1:
+note: 'uint16_t' is defined in header '<cstdint>';
+this is probably fixable by adding '#include <cstdint>'
+   12 | #include "yaml-cpp/null.h"
+  +++ |+#include <cstdint>
+   13 | #include "yaml-cpp/ostream_wrapper.h"
+
+See-also: https://gcc.gnu.org/pipermail/gcc-cvs/2024-August/407124.html
+See-also: https://bugs.gentoo.org/937778
+Signed-off-by: Christopher Fore <csf...@posteo.net>
+--- a/src/yamlcpp/emitterutils.cpp
++++ b/src/yamlcpp/emitterutils.cpp
+@@ -1,4 +1,5 @@
+ #include <algorithm>
++#include <cstdint>
+ #include <iomanip>
+ #include <sstream>
+ 

diff --git a/sci-physics/lhapdf/lhapdf-6.5.4-r1.ebuild 
b/sci-physics/lhapdf/lhapdf-6.5.4-r1.ebuild
index 7e3801a3d0e3..f5d5eb09c594 100644
--- a/sci-physics/lhapdf/lhapdf-6.5.4-r1.ebuild
+++ b/sci-physics/lhapdf/lhapdf-6.5.4-r1.ebuild
@@ -42,6 +42,10 @@ BDEPEND="
        ')
 "
 
+PATCHES=(
+       "${FILESDIR}"/${PN}-6.5.4-include-cstdint.patch
+)
+
 pkg_setup() {
        use python && python-single-r1_pkg_setup
 }

Reply via email to