summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authora.kudelin2020-12-12 23:51:35 +0300
committera.kudelin2020-12-12 23:51:35 +0300
commitff5ca3b520a8036bc97859e652c76db9c0c05162 (patch)
tree437e8e02014a31a1b41f7d147a4fbe2c8c8a69d3
parentd069539491c0c0cdcc26e6eed0d81aa41bf0c700 (diff)
downloadaur-ff5ca3b520a8036bc97859e652c76db9c0c05162.tar.gz
Applied a patch for ElmerIce
-rwxr-xr-x.SRCINFO4
-rw-r--r--ElmerIce.patch58
-rwxr-xr-xPKGBUILD48
3 files changed, 83 insertions, 27 deletions
diff --git a/.SRCINFO b/.SRCINFO
index a8fb3ae603c2..8c39fc6933de 100755
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = elmerfem
pkgdesc = A finite element software for multiphysical problems
pkgver = 8.4
- pkgrel = 3
+ pkgrel = 4
url = http://www.elmerfem.org
arch = x86_64
license = GPL
@@ -17,8 +17,10 @@ pkgbase = elmerfem
options = !emptydirs
options = !makeflags
source = https://github.com/ElmerCSC/elmerfem/archive/release-8.4.tar.gz
+ source = ElmerIce.patch
source = elmerfem.desktop
sha256sums = cc3ce807d76798361592cc14952cdc3db1ad8f9bac038017514033ce9badc5b3
+ sha256sums = 90287c988ac4f5beedf5221e81f624799ec3253c63a30695e1873044ac5a6515
sha256sums = f4b39389e5f258c7860b8d7a6b171fb54bf849dc772f640ac5e7a12c7a384aca
pkgname = elmerfem
diff --git a/ElmerIce.patch b/ElmerIce.patch
new file mode 100644
index 000000000000..67546aff7de6
--- /dev/null
+++ b/ElmerIce.patch
@@ -0,0 +1,58 @@
+diff --color -Naur elmerice/Solvers/CalvingRemeshMMG.F90 elmerice/Solvers/CalvingRemeshMMG.F90
+--- elmerice/Solvers/CalvingRemeshMMG.F90 2018-12-19 12:34:45.000000000 +0300
++++ elmerice/Solvers/CalvingRemeshMMG.F90 2020-12-12 22:39:24.040363020 +0300
+@@ -71,6 +71,7 @@
+ TYPE(ValueList_t), POINTER :: SolverParams
+ TYPE(Mesh_t),POINTER :: Mesh,GatheredMesh,NewMeshR,FinalMesh
+ TYPE(Element_t),POINTER :: Element, ParentElem
++ TYPE(MMG5_DATA_PTR_T),POINTER :: mmgMet
+ INTEGER :: i,j,k,NNodes,GNBulk, GNBdry, GNNode, NBulk, Nbdry, ierr, &
+ my_cboss,MyPE, PEs,CCount, counter, GlNode_min, GlNode_max,adjList(4),front_BC_ID, &
+ my_calv_front,calv_front, ncalv_parts, group_calve, comm_calve, group_world,ecode, NElNodes
+@@ -426,7 +427,7 @@
+
+ !> ------------------------------ STEP II --------------------------
+ !! remesh function
+- CALL MMG3D_mmg3dls(mmgMesh,mmgSol,ierr)
++ CALL MMG3D_mmg3dls(mmgMesh,mmgSol,mmgMet,ierr)
+
+ CALL MMG3D_SaveMesh(mmgMesh,"test_out.mesh",LEN(TRIM("test_out.mesh")),ierr)
+
+diff --color -Naur elmerice/Solvers/MeshAdaptation_2D/MMG2DSolver.F90 elmerice/Solvers/MeshAdaptation_2D/MMG2DSolver.F90
+--- elmerice/Solvers/MeshAdaptation_2D/MMG2DSolver.F90 2018-12-19 12:34:45.000000000 +0300
++++ elmerice/Solvers/MeshAdaptation_2D/MMG2DSolver.F90 2020-12-12 22:42:32.639562150 +0300
+@@ -310,14 +310,14 @@
+ !------------------------------------------------------------------------------
+ TYPE(Element_t),POINTER :: Element
+ INTEGER, POINTER :: NodeIndexes(:)
+- INTEGER :: np,nt,na,ier
++ INTEGER :: np,nt,na,ier,nquad
+ INTEGER :: ref,corner,required,ridge
+ INTEGER :: parent,ied
+ INTEGER :: tt, jj, kk, ll
+
+
+ !> a) get the size of the mesh: vertices, triangles, edges
+- CALL MMG2D_Get_meshSize(mmgMesh,np,nt,na,ier)
++ CALL MMG2D_Get_meshSize(mmgMesh,np,nt,nquad,na,ier)
+ IF ( ier == 0 ) CALL FATAL('MMGSolver',&
+ 'CALL TO MMGS_Get_meshSize FAILED')
+ IF (DEBUG) PRINT *,'--**-- MMG2D_Get_meshSize DONE'
+@@ -467,7 +467,7 @@
+ TYPE(Element_t),POINTER :: Element
+ INTEGER, POINTER :: NodeIndexes(:)
+
+- INTEGER :: NVert,NEle,NEdge
++ INTEGER :: NVert,NEle,NEdge,NQuad
+ INTEGER :: n
+ INTEGER :: ier
+ INTEGER :: ii,tt
+@@ -476,7 +476,7 @@
+ NEle=Mesh%NumberOfBulkElements
+ NEdge=Mesh%NumberOfBoundaryElements
+
+- CALL MMG2D_Set_meshSize(mmgMesh,NVert,NEle,NEdge,ier)
++ CALL MMG2D_Set_meshSize(mmgMesh,NVert,NEle,NQuad,NEdge,ier)
+ IF ( ier == 0 ) CALL FATAL('MMGSolver',&
+ 'CALL TO MMG2D_Set_meshSize FAILED')
+ IF (DEBUG) PRINT *,'--**-- MMG2D_Set_meshSize DONE'
diff --git a/PKGBUILD b/PKGBUILD
index e15c1cb25f60..e343531c8599 100755
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -4,7 +4,7 @@
pkgname=elmerfem
pkgver=8.4
-pkgrel=3
+pkgrel=4
pkgdesc="A finite element software for multiphysical problems"
arch=('x86_64')
url="http://www.elmerfem.org"
@@ -14,13 +14,16 @@ makedepends=('gcc-fortran' 'cmake')
conflicts=('elmerfem-git')
options=(!emptydirs !makeflags)
source=("https://github.com/ElmerCSC/$pkgname/archive/release-$pkgver.tar.gz"
+ "ElmerIce.patch"
"$pkgname.desktop")
sha256sums=('cc3ce807d76798361592cc14952cdc3db1ad8f9bac038017514033ce9badc5b3'
+ '90287c988ac4f5beedf5221e81f624799ec3253c63a30695e1873044ac5a6515'
'f4b39389e5f258c7860b8d7a6b171fb54bf849dc772f640ac5e7a12c7a384aca')
prepare() {
cd "$srcdir/$pkgname-release-$pkgver"
mkdir ../build
+ patch -p0 < "$srcdir/ElmerIce.patch"
sed -i 's/1 depth/1 ${depth}/g' fem/tests/CMakeLists.txt
sed -i '/#include <QPainter>/a #include <QPainterPath>' ElmerGUI/Application/twod/renderarea.cpp
}
@@ -28,28 +31,23 @@ prepare() {
build() {
cd "$srcdir/build"
cmake ../$pkgname-release-$pkgver \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_Fortran_FLAGS="$FCFLAGS -fallow-argument-mismatch -fallow-invalid-boz" \
- -DELMER_INSTALL_LIB_DIR=/usr/lib \
- -DWITH_CONTRIB=ON \
- -DWITH_ELMERGUI=ON \
- -DWITH_ElmerIce=ON \
- -DWITH_LUA=ON \
- -DWITH_MATC=ON \
- -DWITH_MPI=ON \
- -DWITH_OpenMP=ON \
- -DWITH_QT5=ON \
- -DWITH_ScatteredDataInterpolator=ON \
- -DWITH_PARAVIEW=ON
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_Fortran_FLAGS="$FCFLAGS -fallow-argument-mismatch -fallow-invalid-boz" \
+ -DMPI_Fortran_COMPILE_FLAGS="$FCFLAGS -fallow-argument-mismatch -fallow-invalid-boz" \
+ -DELMER_INSTALL_LIB_DIR=/usr/lib \
+ -DWITH_CONTRIB=ON \
+ -DWITH_ELMERGUI=ON \
+ -DWITH_ElmerIce=ON \
+ -DWITH_LUA=ON \
+ -DWITH_MATC=ON \
+ -DWITH_MPI=ON \
+ -DWITH_OpenMP=ON \
+ -DWITH_QT5=ON \
+ -DWITH_ScatteredDataInterpolator=ON \
+ -DWITH_PARAVIEW=ON
make all
}
-# check() {
-# cd "$srcdir/build"
-# export PATH=$PATH:$PWD/fem/src
-# ctest -j$( grep -c ^processor /proc/cpuinfo )
-# }
-
package() {
cd "$srcdir/build"
make DESTDIR="$pkgdir" install
@@ -58,16 +56,14 @@ package() {
# Remove unecessary libraries
rm -rf -- lib/{*.a,*arpack.so,ElmerGUI}
- #Create directories
- install -dv share/applications
- install -dv share/pixmaps
- install -dv share/licenses/$pkgname
+ # Create directories
+ install -dv share/{applications,pixmaps,licenses/$pkgname}
- #Icon and desktop files
+ # Icon and desktop files
install -D -m644 "$srcdir/$pkgname-release-$pkgver/ElmerGUI/Application/images/logo.png" share/pixmaps/$pkgname.png
install -D -m644 "$srcdir/$pkgname.desktop" share/applications
- #Clean up and move stuff in place
+ # Clean up and move stuff in place
cp share/ElmerGUI/edf-extra/* share/ElmerGUI/edf
mv share/ElmerGUI/license_texts/GPL_EXCEPTION share/licenses/$pkgname
rm share/ElmerGUI/license_texts/*