diff options
-rwxr-xr-x | .SRCINFO | 4 | ||||
-rw-r--r-- | ElmerIce.patch | 58 | ||||
-rwxr-xr-x | PKGBUILD | 48 |
3 files changed, 83 insertions, 27 deletions
@@ -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' @@ -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/* |