summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Diehl2022-09-30 13:40:09 +0200
committerMartin Diehl2022-09-30 13:40:09 +0200
commitcb4c89af11f5bc295486680a28cd9a76b2dbded7 (patch)
tree5a1b09eb8f2da5cb87ab857a49415b49e05b637e
parentb5ea17817f5e0a2f76dcabfc06b36024cbe4ac33 (diff)
downloadaur-cb4c89af11f5bc295486680a28cd9a76b2dbded7.tar.gz
support for newer PETSc versions
-rw-r--r--.SRCINFO14
-rw-r--r--0001-PETSc-3.17.1-backport.patch56
-rw-r--r--PKGBUILD2
3 files changed, 70 insertions, 2 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 9edacb4f0084..c4757cccc6b8 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = damask
pkgdesc = DAMASK - The Duesseldorf Advanced Material Simulation Kit
pkgver = 3.0.0~alpha6
- pkgrel = 3
+ pkgrel = 4
url = https://damask.mpie.de
arch = x86_64
license = AGPL3
@@ -10,9 +10,18 @@ pkgbase = damask
makedepends = petsc
makedepends = hdf5-openmpi
makedepends = fftw
+ makedepends = zlib
+ makedepends = libfyaml
+ makedepends = python-matplotlib
+ makedepends = python-scipy
+ makedepends = python-pandas
+ makedepends = python-h5py
+ makedepends = python-pyaml
optdepends = paraview: post-processing
source = https://damask3.mpie.de/download/damask-3.0.0-alpha6.tar.xz
+ source = 0001-PETSc-3.17.1-backport.patch
sha256sums = de6748c285558dec8f730c4301bfa56b4078c130ff80e3095faf76202f8d2109
+ sha256sums = d810807b097512c275ff43f66873117f54a190ab9cd2696c24f6c6cb1792ae1c
pkgname = damask
depends = python-damask
@@ -24,12 +33,15 @@ pkgname = damask-grid
depends = petsc
depends = hdf5-openmpi
depends = fftw
+ depends = zlib
+ depends = libfyaml
optdepends = dream3d: pre-processing
pkgname = damask-mesh
pkgdesc = Mesh solver for DAMASK
depends = petsc
depends = hdf5-openmpi
+ depends = libfyaml
optdepends = neper: pre-processing
pkgname = python-damask
diff --git a/0001-PETSc-3.17.1-backport.patch b/0001-PETSc-3.17.1-backport.patch
new file mode 100644
index 000000000000..26bd9bcf66c6
--- /dev/null
+++ b/0001-PETSc-3.17.1-backport.patch
@@ -0,0 +1,56 @@
+From bbf1d3253058e94300a79dfddec1453b36a8f940 Mon Sep 17 00:00:00 2001
+From: Martin Diehl <mail@martin-diehl.net>
+Date: Fri, 30 Sep 2022 13:27:32 +0200
+Subject: [PATCH] PETSc 3.17.1 backport
+
+---
+ CMakeLists.txt | 2 +-
+ src/DAMASK_interface.f90 | 2 +-
+ src/mesh/discretization_mesh.f90 | 4 ++++
+ 3 files changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index b4c405319..7a6f9ea7f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -10,7 +10,7 @@ endif()
+ # Dummy project to determine compiler names and version
+ project(Prerequisites LANGUAGES)
+ set(ENV{PKG_CONFIG_PATH} "$ENV{PETSC_DIR}/$ENV{PETSC_ARCH}/lib/pkgconfig")
+-pkg_check_modules(PETSC REQUIRED PETSc>=3.12.0 PETSc<3.17.0)
++pkg_check_modules(PETSC REQUIRED PETSc>=3.12.0 PETSc<3.18.0)
+ pkg_get_variable(CMAKE_Fortran_COMPILER PETSc fcompiler)
+ pkg_get_variable(CMAKE_C_COMPILER PETSc ccompiler)
+
+diff --git a/src/DAMASK_interface.f90 b/src/DAMASK_interface.f90
+index f5233f2f0..c37840a46 100644
+--- a/src/DAMASK_interface.f90
++++ b/src/DAMASK_interface.f90
+@@ -11,7 +11,7 @@
+ !--------------------------------------------------------------------------------------------------
+ #define PETSC_MAJOR 3
+ #define PETSC_MINOR_MIN 12
+-#define PETSC_MINOR_MAX 16
++#define PETSC_MINOR_MAX 17
+
+ module DAMASK_interface
+ use, intrinsic :: ISO_fortran_env
+diff --git a/src/mesh/discretization_mesh.f90 b/src/mesh/discretization_mesh.f90
+index 9baff52fb..70ee28343 100644
+--- a/src/mesh/discretization_mesh.f90
++++ b/src/mesh/discretization_mesh.f90
+@@ -100,7 +100,11 @@ subroutine discretization_mesh_init(restart)
+ debug_element = config_debug%get_asInt('element',defaultVal=1)
+ debug_ip = config_debug%get_asInt('integrationpoint',defaultVal=1)
+
++#if (PETSC_VERSION_MAJOR==3 && PETSC_VERSION_MINOR>16)
++ call DMPlexCreateFromFile(PETSC_COMM_WORLD,interface_geomFile,'n/a',PETSC_TRUE,globalMesh,err_PETSc)
++#else
+ call DMPlexCreateFromFile(PETSC_COMM_WORLD,interface_geomFile,PETSC_TRUE,globalMesh,err_PETSc)
++#endif
+ CHKERRQ(err_PETSc)
+ call DMGetDimension(globalMesh,dimPlex,err_PETSc)
+ CHKERRQ(err_PETSc)
+--
+2.37.3
+
diff --git a/PKGBUILD b/PKGBUILD
index 986672ec996b..964508502eb9 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,7 +3,7 @@ pkgbase=damask
pkgname=('damask' 'damask-grid' 'damask-mesh' 'python-damask')
pkgver=3.0.0~alpha6
pkgver_=3.0.0-alpha6
-pkgrel=3
+pkgrel=4
pkgdesc='DAMASK - The Duesseldorf Advanced Material Simulation Kit'
arch=('x86_64')
url='https://damask.mpie.de'