diff options
-rw-r--r-- | pcr/openfoam3.0-git/PKGBUILD | 71 | ||||
-rw-r--r-- | pcr/openfoam3.0-git/boost.patch | 20 | ||||
-rw-r--r-- | pcr/openfoam3.0-git/decomp-options.patch | 12 | ||||
-rw-r--r-- | pcr/openfoam3.0-git/paraFoam.patch | 37 | ||||
-rw-r--r-- | pcr/openfoam3.0-git/paraview.sh | 105 | ||||
-rw-r--r-- | pcr/openfoam3.0-git/prefs.sh | 4 | ||||
-rw-r--r-- | pcr/openfoam3.0-git/scotch-options.patch | 17 | ||||
-rw-r--r-- | pcr/openfoam3.0-git/scotch.sh | 2 |
8 files changed, 259 insertions, 9 deletions
diff --git a/pcr/openfoam3.0-git/PKGBUILD b/pcr/openfoam3.0-git/PKGBUILD index 69b7fc5d6..17503a202 100644 --- a/pcr/openfoam3.0-git/PKGBUILD +++ b/pcr/openfoam3.0-git/PKGBUILD @@ -1,5 +1,10 @@ -# Original Contributor (Arch): aquavitae <aquavitae69: gmail> -# Current Maintainer (Arch): Andrew Fischer <andrew_at_ltengsoft.com> +# Original Contributor (AUR): aquavitae <aquavitae69: gmail> +# Current Maintainer (AUR): Andrew Fischer <andrew_at_ltengsoft.com> +# Packager (AUR): Heavysink + +# parabola changes and rationale: +# - removed "open source" term from pkgdesc +# - removed parametis support pkgname=openfoam3.0-git @@ -7,23 +12,37 @@ pkgname=openfoam3.0-git _distpkgname=OpenFOAM _distpkgver=3.0.x _gitname=$_distpkgname-$_distpkgver -pkgver=20160803.4b5e129 -pkgrel=1.parabola1 +pkgver=20170710.221b8ab7 +pkgrel=4 pkgdesc="The libre CFD toolbox, without nonfree parmetis support" -arch=('i686' 'x86_64') +arch=('i686' 'x86_64' 'armv7h') url="http://www.openfoam.com" license=('GPL') groups=() depends=('cgal' 'paraview' 'scotch' 'boost') -makedepends=('git') +makedepends=('git' 'flex') optdepends=() replaces=() backup=() options=() -source=(git+https://github.com/OpenFOAM/OpenFOAM-3.0.x.git) +source=(git+https://github.com/OpenFOAM/OpenFOAM-3.0.x.git + 'decomp-options.patch' + 'paraFoam.patch' + 'scotch-options.patch' + 'boost.patch' + 'prefs.sh' + 'scotch.sh' + 'paraview.sh') noextract=() install=openfoam.install -md5sums=('SKIP') +md5sums=('SKIP' + 'dcb09c65c450601203f48f7d5177ced2' + 'fb84ecc41b63304064b88ee3291513be' + '905fbd21aa780a57530d65818425ec6c' + 'e0bc9bb43c48acbe06fc834cb93ce949' + 'SKIP' + 'SKIP' + 'SKIP') pkgver() { cd "$srcdir/$_gitname" @@ -32,11 +51,44 @@ pkgver() { build() { + # Extract the current version and major of paraview and of scotch for use in the system preferences + _pversion1=`pacman -Q {paraview,paraview-manta,paraview-git} | sed -e 's/.* //; s/-.*//g'` + _pversion=`echo $_pversion1 | grep .` + _pmajor=`echo $_pversion | cut -d '.' -f1` + _sversion=`pacman -Q scotch | sed -e 's/.* //; s/-.*//g'` + + # Generate and install the system preferences file + echo "compilerInstall=system" > $startdir/prefs.sh + echo "export WM_MPLIB=SYSTEMOPENMPI" >> $startdir/prefs.sh + echo "export ParaView_VERSION=$_pversion" >> $startdir/prefs.sh + echo "export ParaView_MAJOR=$_pmajor" >> $startdir/prefs.sh + cp $startdir/prefs.sh $srcdir/$_gitname/etc || return 1 + + # Generate the scotch.sh file for parabola + echo "export SCOTCH_VERSION=scotch_$_sversion" > $startdir/scotch.sh + echo "export SCOTCH_ARCH_PATH=/usr" >> $startdir/scotch.sh + cp $startdir/scotch.sh $srcdir/$_gitname/etc/config || return 1 + + # Generate the paraview.sh file for Paraview plugin + sed -i -e "s|paraviewversion|ParaView_VERSION=${_pversion}|g" ${srcdir}/paraview.sh + sed -i -e "s|paraviewmajor|ParaView_MAJOR=${_pmajor}|g" ${srcdir}/paraview.sh + cp ${srcdir}/paraview.sh ${srcdir}/${_distpkgname}-3.0.x/etc/config #|| return 1 + + # Patch for openmpi paths, and ptscotch link lines + patch -p1 < $startdir/decomp-options.patch + patch -p1 < $startdir/paraFoam.patch + patch -p1 < $startdir/scotch-options.patch + patch -p1 < $startdir/boost.patch + # Setup the build environment export FOAM_INST_DIR=$srcdir foamDotFile=$srcdir/$_gitname/etc/bashrc [ -f $foamDotFile ] && . $foamDotFile || return 1 + #Fix flex version + cd ${srcdir}/$_gitname + find . -name '*.L' -print -exec sed -i -e 's|YY_FLEX_SUBMINOR_VERSION < 34|YY_FLEX_SUBMINOR_VERSION < 34 \&\& YY_FLEX_MINOR_VERSION < 6|g' {} \; + # Enter build directory cd "$srcdir/$_gitname" || return 1 @@ -44,9 +96,10 @@ build() { ./Allwmake || return 1 wclean all || return 1 wmakeLnIncludeAll || return 1 + } package() { - cd "$srcdir" + cd "$startdir" # Create destination directories install -d "$pkgdir/opt/$_distpkgname" "$pkgdir/etc/profile.d" || return 1 diff --git a/pcr/openfoam3.0-git/boost.patch b/pcr/openfoam3.0-git/boost.patch new file mode 100644 index 000000000..0e3e992cf --- /dev/null +++ b/pcr/openfoam3.0-git/boost.patch @@ -0,0 +1,20 @@ +--- src/OpenFOAM-3.0.x/applications/utilities/mesh/generation/foamyMesh/foamyHexMesh/Make/options 2016-04-23 10:46:06.634726444 -0400 ++++ src/OpenFOAM-3.0.x/applications/utilities/mesh/generation/foamyMesh/foamyHexMesh/Make/options 2016-04-23 10:50:35.496222009 -0400 +@@ -35,4 +35,5 @@ EXE_LIBS = \ + -lfileFormats \ + -ltriSurface \ + -ldynamicMesh \ +- -lsampling ++ -lsampling \ ++ -lboost_thread + +--- src/OpenFOAM-3.0.x/applications/utilities/mesh/generation/foamyMesh/foamyQuadMesh/Make/options 2016-04-23 10:46:06.634726444 -0400 ++++ src/OpenFOAM-3.0.x/applications/utilities/mesh/generation/foamyMesh/foamyQuadMesh/Make/options 2016-04-23 10:48:25.558854579 -0400 +@@ -38,4 +38,5 @@ EXE_LIBS = \ + -ldecompositionMethods \ + -L$(FOAM_LIBBIN)/dummy -lptscotchDecomp \ + -lsampling \ +- -lfileFormats ++ -lfileFormats \ ++ -lboost_thread + diff --git a/pcr/openfoam3.0-git/decomp-options.patch b/pcr/openfoam3.0-git/decomp-options.patch new file mode 100644 index 000000000..3043c228f --- /dev/null +++ b/pcr/openfoam3.0-git/decomp-options.patch @@ -0,0 +1,12 @@ +--- src/OpenFOAM-3.0.x/src/parallel/decompose/metisDecomp/Make/options ++++ src/OpenFOAM-3.0.x/src/parallel/decompose/metisDecomp/Make/options +@@ -1,7 +1,7 @@ + EXE_INC = \ + /* -DFULLDEBUG -g -O0 */ \ +- -I$(METIS_ARCH_PATH)/include \ ++ -I/usr/include \ + -I../decompositionMethods/lnInclude + + LIB_LIBS = \ +- -L$(METIS_ARCH_PATH)/lib -lmetis ++ -L$(FOAM_EXT_LIBBIN) -lparmetis diff --git a/pcr/openfoam3.0-git/paraFoam.patch b/pcr/openfoam3.0-git/paraFoam.patch new file mode 100644 index 000000000..1a43d606d --- /dev/null +++ b/pcr/openfoam3.0-git/paraFoam.patch @@ -0,0 +1,37 @@ +--- src/OpenFOAM-3.0.x/bin/paraFoam ++++ src/OpenFOAM-3.0.x/bin/paraFoam +@@ -124,21 +124,22 @@ done + # Get the ParaView major version to select the appropriate readers + version=`echo $ParaView_VERSION | sed -e 's/^\([0-9][0-9]*\).*$/\1/'` + +-# Check that reader module has been built +-if [ $requirePV -eq 1 -a ! -f $PV_PLUGIN_PATH/libPV${version}FoamReader_SM.so ] +-then +- cat<< BUILDREADER ++# NOTE: For OpenFOAM built from AUR, paraview will already be installed ++# with the required readers. No need to perform this check. ++#if [ $requirePV -eq 1 -a ! -f $PV_PLUGIN_PATH/libPV${version}FoamReader_SM.so ] ++#then ++# cat<< BUILDREADER + +-FATAL ERROR: ParaView reader module libraries do not exist ++#FATAL ERROR: ParaView reader module libraries do not exist + +-Please build the reader module before continuing: +-cd \$FOAM_UTILITIES/postProcessing/graphics/PV${version}Readers +-./Allwclean +-./Allwmake ++#Please build the reader module before continuing: ++#cd \$FOAM_UTILITIES/postProcessing/graphics/PV${version}Readers ++#./Allwclean ++#./Allwmake + +-BUILDREADER +- exit 1 +-fi ++#BUILDREADER ++# exit 1 ++#fi + + # Check for --data=... argument + hasDataArg() diff --git a/pcr/openfoam3.0-git/paraview.sh b/pcr/openfoam3.0-git/paraview.sh new file mode 100644 index 000000000..0bc141109 --- /dev/null +++ b/pcr/openfoam3.0-git/paraview.sh @@ -0,0 +1,105 @@ +#----------------------------------*-sh-*-------------------------------------- +# ========= | +# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox +# \\ / O peration | +# \\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation +# \\/ M anipulation | +#------------------------------------------------------------------------------ +# License +# This file is part of OpenFOAM. +# +# OpenFOAM is free software: you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# OpenFOAM is distributed in the hope that it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# +# You should have received a copy of the GNU General Public License +# along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. +# +# File +# config/paraview.sh +# +# Description +# Setup file for paraview-[3-4].x +# Sourced from OpenFOAM-<VERSION>/etc/bashrc or from foamPV alias +# +# Note +# The env. variables 'ParaView_DIR' and 'ParaView_MAJOR' +# are required for building plugins +#------------------------------------------------------------------------------ + +# clean the PATH +cleaned=`$WM_PROJECT_DIR/bin/foamCleanPath "$PATH" "$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/cmake- $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/paraview-"` && PATH="$cleaned" + +# determine the cmake to be used +unset CMAKE_HOME +for cmake in cmake-3.2.1 cmake-2.8.12.1 cmake-2.8.8 cmake-2.8.4 cmake-2.8.3 cmake-2.8.1 +do + cmake=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$cmake + if [ -r $cmake ] + then + export CMAKE_HOME=$cmake + export PATH=$CMAKE_HOME/bin:$PATH + break + fi +done + + +#- ParaView version, automatically determine major version +paraviewversion +paraviewmajor + + +# Evaluate command-line parameters for ParaView +_foamParaviewEval() +{ + while [ $# -gt 0 ] + do + case "$1" in + ParaView*=*) + # name=value -> export name=value + eval "export $1" + ;; + esac + shift + done +} + +# Evaluate command-line parameters +_foamParaviewEval $@ + +export ParaView_VERSION ParaView_MAJOR + +paraviewInstDir=/usr +export ParaView_DIR=/usr +export ParaView_INCLUDE_DIR=$ParaView_DIR/include/paraview +ParaView_LIB_DIR=$ParaView_DIR/lib/paraview +export PATH=$ParaView_DIR/bin:$PATH +export LD_LIBRARY_PATH=$ParaView_LIB_DIR:$LD_LIBRARY_PATH +export PV_PLUGIN_PATH=$FOAM_LIBBIN/paraview +if [ "$FOAM_VERBOSE" -a "$PS1" ] +then + echo "Using paraview" + echo " ParaView_DIR : $ParaView_DIR" + echo " ParaView_LIB_DIR : $ParaView_LIB_DIR" + echo " ParaView_INCLUDE_DIR : $ParaView_INCLUDE_DIR" + echo " PV_PLUGIN_PATH : $PV_PLUGIN_PATH" +fi + + # add in python libraries if required +if [ "$PYTHONPATH" ] +then + export PYTHONPATH=$PYTHONPATH:$ParaView_LIB_DIR/site-packages/vtk:$ParaView_LIB_DIR/site-packages/paraview:$ParaView_LIB_DIR/site-packages:$ParaView_LIB_DIR +else + export PYTHONPATH=$ParaView_LIB_DIR/site-packages/vtk:$ParaView_LIB_DIR/site-packages/paraview:$ParaView_LIB_DIR/site-packages:$ParaView_LIB_DIR +fi + +unset _foamParaviewEval +unset cleaned cmake paraviewInstDir paraviewPython + +# ----------------------------------------------------------------------------- diff --git a/pcr/openfoam3.0-git/prefs.sh b/pcr/openfoam3.0-git/prefs.sh new file mode 100644 index 000000000..880455437 --- /dev/null +++ b/pcr/openfoam3.0-git/prefs.sh @@ -0,0 +1,4 @@ +compilerInstall=system +export WM_MPLIB=SYSTEMOPENMPI +export ParaView_VERSION=5.4.1 +export ParaView_MAJOR=5 diff --git a/pcr/openfoam3.0-git/scotch-options.patch b/pcr/openfoam3.0-git/scotch-options.patch new file mode 100644 index 000000000..e363feb06 --- /dev/null +++ b/pcr/openfoam3.0-git/scotch-options.patch @@ -0,0 +1,17 @@ +--- src/OpenFOAM-3.0.x/src/parallel/decompose/ptscotchDecomp/Make/options ++++ src/OpenFOAM-3.0.x/src/parallel/decompose/ptscotchDecomp/Make/options +@@ -9,4 +9,4 @@ EXE_INC = \ + -I../decompositionMethods/lnInclude + + LIB_LIBS = \ +- -L$(SCOTCH_ROOT)/lib -L$(FOAM_EXT_LIBBIN)/$(FOAM_MPI) -lptscotch -lptscotcherrexit -lscotch ${LINK_FLAGS} -lrt ++ -L$(SCOTCH_ROOT)/lib -L$(FOAM_EXT_LIBBIN)/$(FOAM_MPI) -lptscotch -lscotch -lptscotcherrexit -lscotcherrexit ${LINK_FLAGS} -lbz2 -lrt +--- src/OpenFOAM-3.0.x/src/parallel/decompose/scotchDecomp/Make/options ++++ src/OpenFOAM-3.0.x/src/parallel/decompose/scotchDecomp/Make/options +@@ -13,4 +13,4 @@ EXE_INC = \ + -I../decompositionMethods/lnInclude + + LIB_LIBS = \ +- -L$(SCOTCH_ROOT)/lib -L$(FOAM_EXT_LIBBIN) -lscotch -lscotcherrexit -lrt ++ -L$(SCOTCH_ROOT)/lib -L$(FOAM_EXT_LIBBIN) -lscotch -lscotcherrexit -lbz2 -lrt + diff --git a/pcr/openfoam3.0-git/scotch.sh b/pcr/openfoam3.0-git/scotch.sh new file mode 100644 index 000000000..b723bd9f7 --- /dev/null +++ b/pcr/openfoam3.0-git/scotch.sh @@ -0,0 +1,2 @@ +export SCOTCH_VERSION=scotch_6.0.4 +export SCOTCH_ARCH_PATH=/usr |