openfoam/applications/utilities/postProcessing/graphics/PVReaders/Allwmake
Mark Olesen b4d38ab468 ENH: improve handling of ThirdParty packages
- generalize some of the library extensions (.so vs .dylib).
  Provide as wmake 'sysFunctions'

- added note about unsupported/incomplete system support

- centralize detection of ThirdParty packages into wmake/ subdirectory
  by providing a series of scripts in the spirit of GNU autoconfig.
  For example,

      have_boost, have_readline, have_scotch, ...

  Each of the `have_<package>` scripts will generally provide the
  following type of functions:

      have_<package>          # detection
      no_<package>            # reset
      echo_<package>          # echoing

  and the following type of variables:

      HAVE_<package>          # unset or 'true'
      <package>_ARCH_PATH     # root for <package>
      <package>_INC_DIR       # include directory for <package>
      <package>_LIB_DIR       # library directory for <package>

  This simplifies the calling scripts:

      if have_metis
      then
          wmake metisDecomp
      fi

  As well as reducing clutter in the corresponding Make/options:

      EXE_INC = \
          -I$(METIS_INC_DIR) \
          -I../decompositionMethods/lnInclude

      LIB_LIBS = \
          -L$(METIS_LIB_DIR) -lmetis

  Any additional modifications (platform-specific or for an external build
  system) can now be made centrally.
2018-04-24 14:51:19 +02:00

44 lines
1.2 KiB
Bash
Executable File

#!/bin/sh
cd ${0%/*} || exit 1 # Run from this directory
export WM_CONTINUE_ON_ERROR=true # Optional unit
. $WM_PROJECT_DIR/wmake/scripts/AllwmakeParseArguments
. $WM_PROJECT_DIR/wmake/scripts/cmakeFunctions # The CMake functions
# -----------------------------------------------------------------------------
warnIncomplete()
{
echo
echo " WARNING: incomplete build of ParaView plugin: $@"
echo
}
# major version as per paraview include directory:
# Eg, "PREFIX/include/paraview-5.0" -> "5.0"
major="${ParaView_INCLUDE_DIR##*-}"
case "$major" in
[45].[0-9]*)
if canBuildPlugin
then
(
wmakeLibPv foamPv
wmakeLibPv vtkPVblockMesh
wmakeLibPv vtkPVFoam
if [ "$targetType" != objects ]
then
cmakePv $PWD/PVblockMeshReader || warnIncomplete "BlockMesh"
cmakePv $PWD/PVFoamReader || warnIncomplete "OpenFOAM"
fi
)
fi
;;
*)
echo "==> skip build of ParaView plugins"
echo " include directory was for paraview major version '${major:-none}'"
;;
esac
#------------------------------------------------------------------------------