summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO4
-rw-r--r--DSTabulation-Fortran-fix.patch12
-rw-r--r--PKGBUILD11
3 files changed, 24 insertions, 3 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 7f75dde05e8d..4e1d7e85ffc1 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = petsc
pkgdesc = Portable, extensible toolkit for scientific computation
pkgver = 3.13.1
- pkgrel = 2
+ pkgrel = 3
url = https://www.mcs.anl.gov/petsc/
install = petsc.install
arch = i686
@@ -28,8 +28,10 @@ pkgbase = petsc
options = staticlibs
source = http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-lite-3.13.1.tar.gz
source = test_optdepends.sh
+ source = DSTabulation-Fortran-fix.patch
sha256sums = 74a895e44e2ff1146838aaccb7613e7626d99e0eed64ca032c87c72d084efac3
sha256sums = 207f3c8107698f572f4075422bd069859c6a69b6bf92183d977dc802da323e18
+ sha256sums = 6907950866797d2a6058de8bc4d4369aa175c4cde92cb533b5b1e291db23edcf
pkgname = petsc
diff --git a/DSTabulation-Fortran-fix.patch b/DSTabulation-Fortran-fix.patch
new file mode 100644
index 000000000000..4b8a660a5166
--- /dev/null
+++ b/DSTabulation-Fortran-fix.patch
@@ -0,0 +1,12 @@
+diff --unified --recursive --text petsc-3.13.1.orig/src/dm/dt/interface/f90-custom/zdtdsf90.c petsc-3.13.1.new/src/dm/dt/interface/f90-custom/zdtdsf90.c
+--- petsc-3.13.1.orig/src/dm/dt/interface/f90-custom/zdtdsf90.c 2020-06-02 06:55:13.984780847 +0200
++++ petsc-3.13.1.new/src/dm/dt/interface/f90-custom/zdtdsf90.c 2020-06-02 06:55:34.188151947 +0200
+@@ -29,7 +29,7 @@
+ *ierr = PetscQuadratureGetData(q, NULL, NULL, &Nq, NULL, NULL);if (*ierr) return;
+ *ierr = PetscDSGetTabulation(*prob, &T);if (*ierr) return;
+ *ierr = F90Array1dCreate((void *) T[*f]->T[0], MPIU_REAL, 1, Nq*Nb*Nc, ptrB PETSC_F90_2PTR_PARAM(ptrb));if (*ierr) return;
+- *ierr = F90Array1dCreate((void *) T[*f]->T[0], MPIU_REAL, 1, Nq*Nb*Nc*dim, ptrD PETSC_F90_2PTR_PARAM(ptrd));
++ *ierr = F90Array1dCreate((void *) T[*f]->T[1], MPIU_REAL, 1, Nq*Nb*Nc*dim, ptrD PETSC_F90_2PTR_PARAM(ptrd));
+ }
+
+ PETSC_EXTERN void petscdsrestoretabulation_(PetscDS *prob, PetscInt *f, F90Array1d *ptrB, F90Array1d *ptrD, PetscErrorCode *ierr PETSC_F90_2PTR_PROTO(ptrb) PETSC_F90_2PTR_PROTO(ptrd))
diff --git a/PKGBUILD b/PKGBUILD
index 3ca6ee08e11b..0cc96e46d5fe 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -31,13 +31,20 @@ optdepends=('trilinos: support for trilinos'
)
install=petsc.install
source=(http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${pkgname}-lite-${pkgver/_/-}.tar.gz
- test_optdepends.sh)
+ test_optdepends.sh
+ DSTabulation-Fortran-fix.patch)
sha256sums=('74a895e44e2ff1146838aaccb7613e7626d99e0eed64ca032c87c72d084efac3'
- '207f3c8107698f572f4075422bd069859c6a69b6bf92183d977dc802da323e18')
+ '207f3c8107698f572f4075422bd069859c6a69b6bf92183d977dc802da323e18'
+ '6907950866797d2a6058de8bc4d4369aa175c4cde92cb533b5b1e291db23edcf')
_install_dir=/opt/petsc/${_config}
_petsc_arch="arch-${_config}"
+prepare() {
+ cd "$pkgname-$pkgver"
+ patch --forward --strip=1 --input="${srcdir}/DSTabulation-Fortran-fix.patch"
+}
+
build() {
_build_dir="${srcdir}/${pkgname}-${pkgver/_/-}"