diff options
author | Paul Garlick <pgarlick@tourbillion-technology.com> | 2025-07-28 16:50:36 +0100 |
---|---|---|
committer | Andreas Enge <andreas@enge.fr> | 2025-07-28 22:30:03 +0200 |
commit | 293cca33249c408384e06ce4c1291a6a5be93f41 (patch) | |
tree | 0630fe1eacea087eed9d639aae61c7e7815018be | |
parent | dd5a0d5799d6227e5c06facfb2002806619dcbe0 (diff) |
gnu: fenics-dolfin: Fix build with gcc@14.
* gnu/packages/patches/fenics-dolfin-integer-types.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register new patch.
* gnu/packages/simulation.scm (fenics-dolfin)[source]: Use new patch.
Signed-off-by: Andreas Enge <andreas@enge.fr>
-rw-r--r-- | gnu/local.mk | 1 | ||||
-rw-r--r-- | gnu/packages/patches/fenics-dolfin-integer-types.patch | 29 | ||||
-rw-r--r-- | gnu/packages/simulation.scm | 3 |
3 files changed, 32 insertions, 1 deletions
diff --git a/gnu/local.mk b/gnu/local.mk index 4672492c92..8e929a108c 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1294,6 +1294,7 @@ dist_patch_DATA = \ %D%/packages/patches/fenics-dolfin-boost.patch \ %D%/packages/patches/fenics-dolfin-config-slepc.patch \ %D%/packages/patches/fenics-dolfin-hdf5-version-check.patch \ + %D%/packages/patches/fenics-dolfin-integer-types.patch \ %D%/packages/patches/ffmpeg-add-av_stream_get_first_dts-for-chromium.patch \ %D%/packages/patches/ffmpeg-jami-change-RTCP-ratio.patch \ %D%/packages/patches/ffmpeg-jami-rtp_ext_abs_send_time.patch \ diff --git a/gnu/packages/patches/fenics-dolfin-integer-types.patch b/gnu/packages/patches/fenics-dolfin-integer-types.patch new file mode 100644 index 0000000000..97cc13f95f --- /dev/null +++ b/gnu/packages/patches/fenics-dolfin-integer-types.patch @@ -0,0 +1,29 @@ +This patch updates the integer types used in two of the dolfin header files. +The changes enable building with gcc-13 and above. + +See <https://gcc.gnu.org/gcc-13/porting_to.html> for the porting notes. + +See <https://bitbucket.org/fenics-project/dolfin/commits/d56b1b082c50d846fb5bbe4971799ab9ecb21a24> for the upstream fix. + +--- a/dolfin/common/timing.h ++++ b/dolfin/common/timing.h +@@ -39,7 +39,7 @@ + /// + /// Precision of wall is around 1 microsecond, user and system are around + /// 10 millisecond (on Linux). +- enum class TimingType : int32_t { wall = 0, user = 1, system = 2 }; ++ enum class TimingType : int { wall = 0, user = 1, system = 2 }; + + /// Start timing (should not be used internally in DOLFIN!) + void tic(); + +--- a/dolfin/mesh/MeshConnectivity.h ++++ b/dolfin/mesh/MeshConnectivity.h +@@ -24,5 +24,7 @@ + #include <vector> + #include <dolfin/log/log.h> + ++#include <cstdint> ++ + namespace dolfin + { diff --git a/gnu/packages/simulation.scm b/gnu/packages/simulation.scm index ba41bf658e..5568a567ae 100644 --- a/gnu/packages/simulation.scm +++ b/gnu/packages/simulation.scm @@ -755,7 +755,8 @@ FFC is part of the FEniCS Project.") "fenics-dolfin-demo-init.patch" "fenics-dolfin-boost.patch" "fenics-dolfin-config-slepc.patch" - "fenics-dolfin-hdf5-version-check.patch")) + "fenics-dolfin-hdf5-version-check.patch" + "fenics-dolfin-integer-types.patch")) (modules '((guix build utils))) (snippet '(begin ;; Make sure we don't use the bundled test framework. |