From 376a2b66f442223a58efc0f832b861ab08f3eb0f Mon Sep 17 00:00:00 2001 From: mark Date: Tue, 14 Jun 2016 17:33:27 +0200 Subject: [PATCH] GIT: Merge in foundation/master with cleanup (2016-06-14) The ThirdParty repository from the Foundation now includes some 3rd-party source code (paraview, scotch) as well. To avoid this bloat (ca. 50MB), now and in the future, it is unfortunately necessary to break the linear history and the direct connection with the Foundation repository. This commit is a squashed merge of the current Foundation master branch with some minor adjustments. Stop tracking of the derived README.html file. =========================================================================== Changes prior to merge: commit 3cb21d12be069561fbe13461440cbdf1c8b188d5 Author: mark Date: Tue Jun 14 17:18:40 2016 +0200 GIT: rationalize .gitignore - do not track derived content. - do track wmake files etc. (re-instates some content) commit d1bf108bea922bf60a1002c4641770b91f09f226 Author: Henry Weller Date: Sat Nov 7 21:44:27 2015 +0000 Reinstated Qt build scripts Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1905 commit 7302adf5d0a7bafe635c5d0470f00a6fe78a57f6 Author: mark Date: Tue Jun 14 17:15:27 2016 +0200 Revert "scotch_6.0.3: Added to the source tree to simplify building OpenFOAM" This reverts commit 1cce60aa78540bf96783684523e1cac4b6a78043. commit fbe0018d5fd4d5f94f00f8e7efd3ae11b6ab41b5 Author: mark Date: Tue Jun 14 17:15:03 2016 +0200 Revert "ParaView-5.0.1: Added the source-tree to ThirdParty-dev and patched as described in the README file" This reverts commit eba760a6d6bb44860fc7d94d922be7215ee93c1f. =========================================================================== All changes since NOV-2015 are included in the merge: commit 17cafd35812493f9a39e56c7355f49c1d3eef2d0 Author: Henry Weller Date: Thu Jun 9 14:36:59 2016 +0100 makeGcc, makeCGAL: lib -> lib64 on 64bit OSs Patch contributed by Bruno Santos Resolves patch request http://bugs.openfoam.org/view.php?id=2114 commit ce4951579b8e01ce524ed6e465ea352e6a243f1b Author: Henry Weller Date: Wed Jun 8 15:14:47 2016 +0100 ThirdParty-dev/makeGcc: added "-no-multilib" option Patch contributed by Bruno Santos Resolves patch request http://bugs.openfoam.org/view.php?id=2113 commit f72ad1f0a66338e5c342efed47079347e1db16d0 Author: Henry Weller Date: Tue May 31 09:16:57 2016 +0100 README: Updated download instructions commit eba760a6d6bb44860fc7d94d922be7215ee93c1f Author: Henry Weller Date: Mon May 30 21:20:56 2016 +0100 ParaView-5.0.1: Added the source-tree to ThirdParty-dev and patched as described in the README file Resolves bug-report http://bugs.openfoam.org/view.php?id=2098 commit 1cce60aa78540bf96783684523e1cac4b6a78043 Author: Henry Weller Date: Mon May 30 21:17:14 2016 +0100 scotch_6.0.3: Added to the source tree to simplify building OpenFOAM Recent versions of scotch are rarely available in packaged form for ready installation on GNU/Linux distributions and so the sources are generally required. commit 08df75f4c7339520880fcf9dd243e9c414cbfe7e Author: Henry Weller Date: Mon May 30 21:16:54 2016 +0100 .gitignore: Simplified commit ef2d69ba55076ba14ab0c771ac2981b94ab60f2e Author: Henry Weller Date: Mon May 30 21:16:27 2016 +0100 README: Updated instructions for compiling ParaView-5.0.1 commit 7cdc8b196acfa021c4ff23036714aaee5e1b9612 Author: Henry Weller Date: Mon May 30 12:30:17 2016 +0100 README: Upgraded to CGAL-4.8 commit bc8ce83166a05db0dc197a7a203634aa6d25c96f Author: Henry Weller Date: Mon May 30 12:28:27 2016 +0100 makeCGAL: Updated to CGAL-4.8 commit c0afdcde7920538ceaf9e0c78827e3a3f18f541d Author: Henry Weller Date: Mon May 23 18:46:27 2016 +0100 etc/tools/ParaViewFunctions: Improve instructions for updating the environment after compiling ParaView commit b627924a4bf104521b567d3aa3dc80c864325b1a Author: Henry Weller Date: Tue May 10 11:38:00 2016 +0100 Allwmake: Added scripted changes for REALTYPEWIDTH and IDXTYPEWIDTH Patch contributed by Bruno Santos Resolves bug-report http://bugs.openfoam.org/view.php?id=2085 commit 69dba76b3195420c71173a65b1c227b2650eaebf Author: Henry Weller Date: Sun Apr 3 14:43:58 2016 +0100 Further changes for http://www.openfoam.org/mantisbt/view.php?id=2040 Patch provided by Bruno Santos commit 1379e08a39ef9e199307e9b6608e7ad97ed03b77 Author: Henry Weller Date: Sun Apr 3 10:30:43 2016 +0100 Allwmake: Implement the default "stop on 1st error" Patch contributed by Bruno Santos Resolves tweak http://www.openfoam.org/mantisbt/view.php?id=2040 commit 8c9c235db686de2612c62112b37e132bfa773b16 Author: Henry Weller Date: Wed Mar 30 19:28:28 2016 +0100 Updated handling of the ParaView installation path Patch contributed by Bruno Santos Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=2034 commit d88b4ea88db7d35c7b7fe8d869d59be32a224144 Author: Henry Weller Date: Mon Mar 21 23:03:59 2016 +0000 makeCGAL: Corrected typo Patch contributed by Bruno Santos Resolves report http://www.openfoam.org/mantisbt/view.php?id=1215 commit 578f8827fbc5f709595fc5ab5185053aaa8cf678 Author: Henry Weller Date: Mon Mar 14 11:13:23 2016 +0000 Make scripts updated to use the new OpenFOAM-dev/ets/config.sh variables Contributed by Bruno Santos Resolves patch request http://www.openfoam.org/mantisbt/view.php?id=1215 See also http://www.openfoam.org/mantisbt/view.php?id=1232 commit c8904e60d2c97ee3c4865bb34419758a10cb2a5a Author: Henry Weller Date: Tue Feb 16 08:57:29 2016 +0000 scripts: Reformat with consistent section separators commit 43f2b369458ff87d0c85c493586d12b75855cf32 Author: Henry Weller Date: Tue Feb 16 08:56:26 2016 +0000 ThirdParty-dev/etc/tools/ParaViewFunctions: Updated docs Including patch from Bruno Santos Resolves report http://www.openfoam.org/mantisbt/view.php?id=1997 commit dfe9e823de452f4c540aa4d02dcf5058e063dd44 Author: Henry Weller Date: Wed Feb 10 20:44:32 2016 +0000 README.org: Upgrade OpenMPI link to openmpi-1.10.2 commit 99d158539e21a3a86d9ac9d5d6f67834142a1847 Author: Henry Weller Date: Wed Feb 10 20:21:34 2016 +0000 Rename makeParaView4 makeParaView and update to support versions 4 and 5 Rename makeParaView makeParaView3 specifically for ParaView version 3 commit 8219a109a24d0699f689cf29a6ce6b4190dc84f0 Author: Henry Weller Date: Wed Feb 10 16:21:23 2016 +0000 Updates for changes to etc/config structure commit c6474e672655864b784950b3bc12e245745ea64d Author: Henry Weller Date: Sun Feb 7 10:30:22 2016 +0000 README: Added download link for ParaView-5.0.0 commit 2da4d8ccea67b4d194161f03c2aca8f693789121 Author: Henry Weller Date: Sun Feb 7 10:27:46 2016 +0000 README: Updated for ParaView-5.0.0 commit 730b8840f7a47e4807c5c239caf337b49960fc9b Author: Henry Weller Date: Sun Feb 7 10:26:15 2016 +0000 makeGcc: Removed support for gcc versions older the 4.5 commit 2500c120b9cd29b5b46d4ca118a60dfac78a8923 Author: Henry Weller Date: Mon Nov 2 20:00:59 2015 +0000 README.org: Added patch instructions for ParaView-4.4.0 from http://www.openfoam.org/mantisbt/view.php?id=1887 =========================================================================== --- .gitignore | 69 +--- Allclean | 2 +- Allwmake | 34 +- AllwmakeLibccmio | 6 +- README.html | 335 ------------------ README.org | 49 ++- ...{ParaView4Functions => ParaView3Functions} | 77 +++- etc/tools/ParaViewFunctions | 148 ++++---- etc/tools/ThirdPartyFunctions | 22 +- makeCGAL | 47 ++- makeCmake | 2 +- makeGcc | 63 ++-- makeGperftools | 2 +- makeLLVM | 11 +- makeParaView | 15 +- makeParaView4 => makeParaView3 | 20 +- 16 files changed, 324 insertions(+), 578 deletions(-) delete mode 100644 README.html rename etc/tools/{ParaView4Functions => ParaView3Functions} (86%) rename makeParaView4 => makeParaView3 (95%) diff --git a/.gitignore b/.gitignore index 4565478..b058312 100644 --- a/.gitignore +++ b/.gitignore @@ -1,79 +1,32 @@ -# man gitignore for more information - -# editor and misc backup files - anywhere +# Ignore editor and misc backup files - anywhere *~ .*~ *.bak *.bak[0-9][0-9] -*.orig -*.orig[0-9][0-9] \#*\# -# file-browser settings - anywhere -.directory - -# CVS recovered versions - anywhere -.#* - -# objects and archives - anywhere -*.[oa] -*.la -*.so -*.jar - -# derived files -lex.yy.c - -# Corefiles -core - -# dependency files - anywhere -*.dep - -# lnInclude (symlink) folders - anywhere -lnInclude - -# build folders - anywhere -linux*Gcc*/ -linux*Icc*/ -linuxming*/ -SiCortex*Gcc*/ -solaris*Gcc*/ -SunOS*Gcc*/ - -# source packages - anywhere +# Ignore source packages - anywhere *.tar.bz2 *.tar.gz *.tar *.tgz *.gtgz +# Ignore build and platforms folders +build/ +platforms/ -# ignore the persistent .build tag in the main directory -/.build +# Generated files in the main directory +/*.html -# ignore .timeStamp in the main directory -/.timeStamp - -# ignore unpacked sources in the main directory (match pkg-ver) +# Ignore unpacked sources in the main directory (match pkg-ver) # this also matches symlinks /*[-_][0-9]* -# ignore all sub-directories +# Ignore all top-level sub-directories /*/ -# do not ignore these ones +# Do not ignore these ones though !/etc/ -# do not ignore the first level of these ones -!/malloc/ -/malloc/*/ -!/malloc/fbsdmalloc/ - -# ignore these extra symlinks -libccmio - -# track this patched version directly - until metis gets dropped -!/metis-5.0pre2/libmetis/metislib.h - -# end-of-file +# End-of-file diff --git a/Allclean b/Allclean index 524fde9..de5c650 100755 --- a/Allclean +++ b/Allclean @@ -59,4 +59,4 @@ done [ -d platforms ] && ( set -x; rm -rf platforms/* ) -# ----------------------------------------------------------------- end-of-file +#------------------------------------------------------------------------------ diff --git a/Allwmake b/Allwmake index 1b06a50..977a53e 100755 --- a/Allwmake +++ b/Allwmake @@ -3,7 +3,7 @@ # ========= | # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox # \\ / O peration | -# \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation +# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation # \\/ M anipulation | #------------------------------------------------------------------------------ # License @@ -77,7 +77,7 @@ OPENMPI) set -x cd "${MPI_ARCH_PATH##*/}" || exit 1 # change to openmpi-VERSION - make distclean 2>/dev/null + [ -e Makefile ] && make distclean 2>/dev/null rm -rf $MPI_ARCH_PATH # start with GridEngine support, @@ -122,7 +122,7 @@ MPICH) set -x cd $MPI_HOME || exit 1 # change to mpich-VERSION - make distclean 2>/dev/null + [ -e Makefile ] && make distclean 2>/dev/null rm -rf $MPI_ARCH_PATH rm util/machines/machines.* @@ -173,12 +173,12 @@ esac # get SCOTCH_VERSION, SCOTCH_ARCH_PATH -if settings=`$WM_PROJECT_DIR/bin/foamEtcFile config/scotch.sh` +if settings=`$WM_PROJECT_DIR/bin/foamEtcFile config.sh/scotch` then . $settings else echo - echo "Error: no config/scotch.sh settings" + echo "Error: no config.sh/scotch settings" echo fi @@ -306,14 +306,14 @@ then fi -# ----------------------------------------------------------------------------- +#------------------------------------------------------------------------------ # Metis is optional echo ======================================== echo Build Metis decomposition # get METIS_VERSION, METIS_ARCH_PATH -if settings=`$WM_PROJECT_DIR/bin/foamEtcFile config/metis.sh` +if settings=`$WM_PROJECT_DIR/bin/foamEtcFile config.sh/metis` then . $settings fi @@ -330,6 +330,24 @@ then ( set -x cd $METIS_VERSION || exit 1 + + if [ "$WM_PRECISION_OPTION" = "DP" ] + then + FLOAT_PRECISION=64 + elif [ "$WM_PRECISION_OPTION" = "SP" ] + then + FLOAT_PRECISION=32 + else + echo " Metis pre-configure error:" + echo " WM_PRECISION_OPTION is neither DP nor SP" + exit 1 + fi + + # Change user settings automatically + sed -i -e 's=\(#define IDXTYPEWIDTH\).*=\1 '$WM_LABEL_SIZE'=' \ + -e 's=\(#define REALTYPEWIDTH\).*=\1 '$FLOAT_PRECISION'=' \ + include/metis.h + make config shared=1 prefix=$METIS_ARCH_PATH make -j $WM_NCOMPPROCS install cp $METIS_ARCH_PATH/lib/libmetis.so $FOAM_EXT_LIBBIN @@ -365,4 +383,4 @@ echo ======================================== echo -# ----------------------------------------------------------------- end-of-file +#------------------------------------------------------------------------------ diff --git a/AllwmakeLibccmio b/AllwmakeLibccmio index a3473a5..87330ee 100755 --- a/AllwmakeLibccmio +++ b/AllwmakeLibccmio @@ -3,7 +3,7 @@ # ========= | # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox # \\ / O peration | -# \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation +# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation # \\/ M anipulation | #------------------------------------------------------------------------------ # License @@ -26,7 +26,7 @@ # AllwmakeLibccmio # # Description -# Get and build CD-adapco's ccmio library +# Build CD-adapco's ccmio library # #------------------------------------------------------------------------------ packageDir=libccmio-2.6.1 @@ -82,4 +82,4 @@ set -x ) -# ----------------------------------------------------------------- end-of-file +#------------------------------------------------------------------------------ diff --git a/README.html b/README.html deleted file mode 100644 index 97a4a94..0000000 --- a/README.html +++ /dev/null @@ -1,335 +0,0 @@ - - - - -OpenFOAM-3.0.x Third-Party packages - - - - - - - -
-

OpenFOAM-3.0.x Third-Party packages

- - -
-

1 Description

-
-

-Scripts for building third-party packages. -

-
-
-
-

2 Order of execution:

-
-
    -
  • makeGcc (recommended if the system gcc is < 4.7) -
  • -
  • Allwmake (Builds OpenMPI, Scotch etc.) -
  • -
  • makeCmake (if the system cmake version is < 2.8.8) -
  • -
  • makeParaView4 -
  • -
-
-
-

2.1 Optional

-
-
    -
  • AllwmakeLibccmio (Only required for conversion of STAR-CCM+ meshes) -
  • -
  • Allclean (Only required to save disk space) -
  • -
-
-
-
- -
-

4 Notes

-
-
-

4.1 Building ParaView-4.3.1/4.4.0

-
-

-The ParaView-4.3.1/4.4.0 source-pack provided by KitWare will not build and -install correctly without a minor correction: lines 653-656 must be removed -or commented from file -ThirdParty-3.0.0/ParaView-4.?.?/Qt/Components/CMakeLists.txt after -unpacking and renaming the ParaView-4.?.? directory. This is because the -file ui_pqExportStateWizard.h referred to in the lines 653-656: -

-
- -
if(PARAVIEW_INSTALL_DEVELOPMENT_FILES)
-  install(FILES "${CMAKE_CURRENT_BINARY_DIR}/ui_pqExportStateWizard.h"
-          DESTINATION "${VTK_INSTALL_INCLUDE_DIR}")
-endif()
-
-
-

-does not exist and cannot be installed causing the build and installation to -fail. -

- -

-Additionally for ParaView-4.4.0 there is a bug in the STL reader which can -be patched by running the following command from within the ThirdParty-??? -directory: -

- -

-See also http://www.openfoam.org/mantisbt/view.php?id=1887 -

-
-
- -
-

4.2 Building ParaView-4.1.0

-
-

-On Ubuntu 14.10 and higher, OpenSuSE 13.2 and probably other recent -GNU/Linux distributions there is an issue in the GL libraries requiring a -change to the vtkXOpenGLRenderWindow.cxx file in ParaView: Uncomment line 30 -

- -

-#define GLX_GLXEXT_LEGACY -

-
-
-
-
-
-

Date: 3rd November 2015

-

Created: 2015-11-03 Tue 17:54

-

Emacs 24.5 (Org mode 8.2.10)

-

Validate

-
- - diff --git a/README.org b/README.org index 01f8d50..9129eb3 100644 --- a/README.org +++ b/README.org @@ -1,11 +1,11 @@ # -*- mode: org; -*- # -#+TITLE: OpenFOAM-3.0.x Third-Party packages +#+TITLE: OpenFOAM Third-Party packages #+AUTHOR: The OpenFOAM Foundation -#+DATE: 3rd November 2015 +#+DATE: 31th May 2016 #+LINK: http://www.openfoam.org #+OPTIONS: author:nil ^:{} -# Copyright (c) 2015 OpenFOAM Foundation. +# Copyright (c) 2014-2016 OpenFOAM Foundation. * Description Scripts for building third-party packages. @@ -13,7 +13,7 @@ + makeGcc (recommended if the system gcc is < 4.7) + Allwmake (Builds OpenMPI, Scotch etc.) + makeCmake (if the system cmake version is < 2.8.8) - + makeParaView4 + + makeParaView *** Optional + AllwmakeLibccmio (Only required for conversion of STAR-CCM+ meshes) + Allclean (Only required to save disk space) @@ -28,24 +28,29 @@ + mpc http://www.multiprecision.org/ http://www.multiprecision.org/mpc/download/mpc-1.0.1.tar.gz *** Parallel Processing - + OpenMPI: http://www.open-mpi.org/software/ompi/v1.10/downloads/openmpi-1.10.0.tar.bz2 - + Scotch/PtScotch: https://gforge.inria.fr/frs/download.php/file/34099/scotch_6.0.3.tar.gz +***** Scotch + + Scotch/PtScotch: https://gforge.inria.fr/frs/download.php/file/34099/scotch_6.0.3.tar.gz +***** OpenMPI + + OpenMPI: http://www.open-mpi.org/software/ompi/v1.10/downloads/openmpi-1.10.2.tar.bz2 *** ParaView - + cmake http://www.cmake.org/files/v3.2/cmake-3.2.1.tar.gz - + ParaView http://www.paraview.org/files/v4.4/ParaView-v4.4.0-source.tar.gz + + cmake http://www.cmake.org/files/v3.2/cmake-3.2.1.tar.gz + + ParaView-4.4.0 http://www.paraview.org/files/v4.4/ParaView-v4.4.0-source.tar.gz + + ParaView-5.0.1 http://www.paraview.org/files/v5.0/ParaView-v5.0.1-source.tar.gz + but may need patching to compile (See [[Notes]]). *** CGAL - + CGAL https://github.com/CGAL/cgal/releases/download/releases%2FCGAL-4.7/CGAL-4.7.tar.xz + + CGAL https://github.com/CGAL/cgal/releases/download/releases%2FCGAL-4.8/CGAL-4.8.tar.xz + boost http://sourceforge.net/projects/boost/files/boost/1.55.0/boost_1_55_0.tar.bz2/download *** Miscellaneous + libccmio http://portal.nersc.gov/svn/visit/trunk/third_party/libccmio-2.6.1.tar.gz * Notes -*** Building ParaView-4.3.1/4.4.0 - The ParaView-4.3.1/4.4.0 source-pack provided by KitWare will not build and - install correctly without a minor correction: lines 653-656 must be removed - or commented from file - /ThirdParty-3.0.0/ParaView-4.?.?/Qt/Components/CMakeLists.txt/ after - unpacking and renaming the ParaView-4.?.? directory. This is because the - file ui_pqExportStateWizard.h referred to in the lines 653-656: +*** Building ParaView-4.3.1/4.4.0/5.0.0/5.0.1 + The ParaView-4.3.1/4.4.0/5.0.0 source-pack provided by KitWare will not + build and install correctly without a minor correction: lines 653-656 + (650-653 in ParaView-5.0.0, 659-662 in ParaView-5.0.1) must be removed or + commented from file + /ThirdParty-???/ParaView-[45].?.?/Qt/Components/CMakeLists.txt/ after + unpacking and renaming the ParaView-[45].?.? directory. This is because the + file ui_pqExportStateWizard.h referred to in #+begin_src C if(PARAVIEW_INSTALL_DEVELOPMENT_FILES) install(FILES "${CMAKE_CURRENT_BINARY_DIR}/ui_pqExportStateWizard.h" @@ -60,7 +65,17 @@ directory: + wget https://raw.githubusercontent.com/Kitware/VTK/40937e934308e5009e80769dc0c451ee4f157749/IO/Geometry/vtkSTLReader.cxx -O ParaView-4.4.0/VTK/IO/Geometry/vtkSTLReader.cxx See also http://www.openfoam.org/mantisbt/view.php?id=1887 - +*** Building ParaView-5.0.1 with gcc-6.1.0 +***** Add support for gcc-6.?.? + The following cmake files + + ParaView-5.0.1/VTK/CMake/vtkCompilerExtras.cmake + + ParaView-5.0.1/VTK/CMake/GenerateExportHeader.cmake + specifically limit the gcc versions supported. To add support gcc-6.?.? + replace '[345]' with '[3456]' +***** SciberQuestToolKit + The SciberQuestToolKit plugin fails to compile with gcc-6.1.0 and causes + the compilation of ParaView to halt. The easiest solution is to delete + the ParaView-5.0.1/Plugins/SciberQuestToolKit directory. *** Building ParaView-4.1.0 On Ubuntu 14.10 and higher, OpenSuSE 13.2 and probably other recent GNU/Linux distributions there is an issue in the GL libraries requiring a diff --git a/etc/tools/ParaView4Functions b/etc/tools/ParaView3Functions similarity index 86% rename from etc/tools/ParaView4Functions rename to etc/tools/ParaView3Functions index 04323da..fe7e9fd 100644 --- a/etc/tools/ParaView4Functions +++ b/etc/tools/ParaView3Functions @@ -2,7 +2,7 @@ # ========= | # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox # \\ / O peration | -# \\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation +# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation # \\/ M anipulation | #------------------------------------------------------------------------------ # License @@ -63,6 +63,9 @@ setDirs() echo "ParaView_SOURCE_DIR=$ParaView_SOURCE_DIR" echo "ParaView_BINARY_DIR=$ParaView_BINARY_DIR" echo "ParaView_DIR=$ParaView_DIR" + + # Forcefully override the .git path for the ParaView source code directory + export GIT_DIR=$ParaView_SOURCE_DIR/.git } @@ -71,7 +74,10 @@ setDirs() # setVersion() { - [ "$#" -ge 1 ] && ParaView_VERSION="${1##paraview-}" + if [ "$#" -ge 1 ] + then + ParaView_VERSION="${1##paraview-}" + fi # the major version is "." ParaView_MAJOR=$(echo $ParaView_VERSION | \ @@ -152,7 +158,10 @@ addCMakeVariable() # addVerbosity() { - [ "$withVERBOSE" = true ] && addCMakeVariable "CMAKE_VERBOSE_MAKEFILE=TRUE" + if [ "${withVERBOSE:=false}" = true ] + then + addCMakeVariable "CMAKE_VERBOSE_MAKEFILE=TRUE" + fi } @@ -161,7 +170,11 @@ addVerbosity() # addMpiSupport() { - [ "${withMPI:=false}" = true ] || return + if [ "${withMPI:=false}" != true ] + then + return + fi + OBJ_ADD="$OBJ_ADD-mpi" addCMakeVariable "PARAVIEW_USE_MPI=ON VTK_USE_MPI=ON" @@ -174,7 +187,11 @@ addMpiSupport() # addPythonSupport() { - [ "${withPYTHON:=false}" = true ] || return + if [ "${withPYTHON:=false}" != true ] + then + return + fi + OBJ_ADD="$OBJ_ADD-py" if pythonBin=$(which python 2>/dev/null) @@ -242,7 +259,10 @@ addPythonSupport() # addMesaSupport() { - [ "${withMESA:=false}" = true ] || return + if [ "${withMESA:=false}" != true ] + then + return + fi if [ -d "$MESA_INCLUDE" -a -f "$MESA_LIBRARY" ] then @@ -266,7 +286,10 @@ addMesaSupport() addQtSupport() { QtVersion=none - [ "${withQT:=false}" = true ] || return + if [ "${withQT:=false}" != true ] + then + return + fi addCMakeVariable "PARAVIEW_BUILD_QT_GUI=ON" @@ -325,10 +348,10 @@ addQtSupport() QtMajor=$1 QtMinor=$2 - if [ $QtMajor -lt 4 ] || [ $QtMajor -eq 4 -a $QtMinor -lt 5 ] + if [ $QtMajor -ne 4 -o $QtMajor -eq 4 -a $QtMinor -lt 5 ] then echo "*** Error: Qt version provided < 4.5" - echo "*** Please use the -qmake option to specify the location of a version of Qt >= 4.5 " + echo "*** Please use the -qmake option to specify the location of a version of Qt >= 4.5 and < 5.0" echo "*** e.g." echo "*** -qmake /usr/local/qt-4.6.2/bin/qmake" echo "*** -qmake $installBASE/qt-4.6.2/bin/qmake" @@ -380,7 +403,10 @@ configParaView() fi # default to using cmake from the path - [ -n "$cmakeExe" ] || cmakeExe=cmake + if [ -z "$cmakeExe" ] + then + cmakeExe=cmake + fi # remove any existing build folder and recreate if [ -d $ParaView_BINARY_DIR ] @@ -391,8 +417,6 @@ configParaView() fi mkdir -p $ParaView_BINARY_DIR - addCMakeVariable "CMAKE_BUILD_TYPE:STRING=$buildType" - cd $ParaView_BINARY_DIR || exit 1 # change to build folder echo "----" @@ -404,7 +428,6 @@ configParaView() echo " Source : $ParaView_SOURCE_DIR" echo " Build : $ParaView_BINARY_DIR" echo " Target : $ParaView_DIR" - echo " Build type : $buildType" echo "----" echo echo "$cmakeExe" \ @@ -436,7 +459,10 @@ makeParaView() # remove lib if it is a link # (how this was previously handled before 'make install' worked) - [ -L lib ] && rm lib 2>/dev/null + if [ -L lib ] + then + rm lib 2>/dev/null + fi } @@ -450,6 +476,19 @@ installParaView() make install +# hack for missing files after install of version 3.14.1 + echo "Copying missing files to install folder" + CMAKE_SRC_DIR=$ParaView_SOURCE_DIR/CMake + CMAKE_INSTALL_DIR=$ParaView_DIR/lib/paraview-$ParaView_MAJOR/CMake + cp -f $ParaView_SOURCE_DIR/ParaViewUse.cmake $CMAKE_INSTALL_DIR + cp -f $CMAKE_SRC_DIR/generate_proxydocumentation.cmake $CMAKE_INSTALL_DIR + cp -f $CMAKE_SRC_DIR/smxml_to_xml.xsl $CMAKE_INSTALL_DIR + cp -f $CMAKE_SRC_DIR/xml_to_html.xsl $CMAKE_INSTALL_DIR + cp -f $CMAKE_SRC_DIR/xml_to_wiki.xsl.in $CMAKE_INSTALL_DIR + cp -f $CMAKE_SRC_DIR/generate_qhp.cmake $CMAKE_INSTALL_DIR + unset CMAKE_SRC_DIR CMAKE_INSTALL_DIR +# --- end hack + cat<< INFO --- Installation complete for paraview-$ParaView_VERSION @@ -472,16 +511,20 @@ unset withMESA MESA_INCLUDE MESA_LIBRARY unset withPYTHON PYTHON_INCLUDE PYTHON_LIBRARY unset CMAKE_VARIABLES unset OBJ_ADD -unset buildType + # start with these general settings +addCMakeVariable "VTK_USE_TK:BOOL=OFF" addCMakeVariable "BUILD_SHARED_LIBS:BOOL=ON VTK_USE_RPATH:BOOL=OFF" +addCMakeVariable "CMAKE_BUILD_TYPE:STRING=Release" # include development files in "make install" -addCMakeVariable "PARAVIEW_INSTALL_DEVELOPMENT_FILES:BOOL=ON" +addCMakeVariable "PARAVIEW_INSTALL_DEVELOPMENT:BOOL=ON" # don't build test tree addCMakeVariable "BUILD_TESTING:BOOL=OFF" +# remove dependency on WebKit +# addCMakeVariable VTK_QT_USE_WEBKIT:BOOL=OFF -# ----------------------------------------------------------------- end-of-file +#------------------------------------------------------------------------------ diff --git a/etc/tools/ParaViewFunctions b/etc/tools/ParaViewFunctions index 96bf8a4..e5fb200 100644 --- a/etc/tools/ParaViewFunctions +++ b/etc/tools/ParaViewFunctions @@ -2,7 +2,7 @@ # ========= | # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox # \\ / O peration | -# \\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation +# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation # \\/ M anipulation | #------------------------------------------------------------------------------ # License @@ -32,7 +32,7 @@ # buildBASE, installBASE defined from tools/ThirdPartyFunctions # -# where things are or should be put +# Where things are or should be put # ParaView_VERSION and ParaView_MAJOR should already have been set # # ParaView_SOURCE_DIR : location of the original sources @@ -63,17 +63,23 @@ setDirs() echo "ParaView_SOURCE_DIR=$ParaView_SOURCE_DIR" echo "ParaView_BINARY_DIR=$ParaView_BINARY_DIR" echo "ParaView_DIR=$ParaView_DIR" + + # Forcefully override the .git path for the ParaView source code directory + export GIT_DIR=$ParaView_SOURCE_DIR/.git } # -# set ParaView_VERSION and adjust ParaView_MAJOR accordingly +# Set ParaView_VERSION and adjust ParaView_MAJOR accordingly # setVersion() { - [ "$#" -ge 1 ] && ParaView_VERSION="${1##paraview-}" + if [ "$#" -ge 1 ] + then + ParaView_VERSION="${1##paraview-}" + fi - # the major version is "." + # The major version is "." ParaView_MAJOR=$(echo $ParaView_VERSION | \ sed -e 's/^\([0-9][0-9]*\.[0-9][0-9]*\).*$/\1/') @@ -84,7 +90,7 @@ setVersion() #------------------------------------------------------------------------------ # -# extract and echo date stamp information from +# Extract and echo date stamp information from # VTK/Utilities/kwsys/kwsysDateStamp.cmake # since the order of the entries is already correct, can use simple sed script # @@ -101,9 +107,8 @@ echoDateStamp() ) } - # -# extract version information from +# Extract version information from # CMakeLists.txt # since the order of the entries is already correct, can use simple sed script # @@ -121,7 +126,7 @@ getVersion() } # -# compare version information +# Compare version information # checkVersion() { @@ -135,7 +140,7 @@ checkVersion() } # -# set CMake cache variables +# Set CMake cache variables # addCMakeVariable() { @@ -148,20 +153,27 @@ addCMakeVariable() # -# verbose makefiles +# Verbose makefiles # addVerbosity() { - [ "$withVERBOSE" = true ] && addCMakeVariable "CMAKE_VERBOSE_MAKEFILE=TRUE" + if [ "${withVERBOSE:=false}" = true ] + then + addCMakeVariable "CMAKE_VERBOSE_MAKEFILE=TRUE" + fi } # -# define options for mpi support +# Define options for mpi support # addMpiSupport() { - [ "${withMPI:=false}" = true ] || return + if [ "${withMPI:=false}" != true ] + then + return + fi + OBJ_ADD="$OBJ_ADD-mpi" addCMakeVariable "PARAVIEW_USE_MPI=ON VTK_USE_MPI=ON" @@ -170,18 +182,22 @@ addMpiSupport() # -# define options for python support +# Define options for python support # addPythonSupport() { - [ "${withPYTHON:=false}" = true ] || return + if [ "${withPYTHON:=false}" != true ] + then + return + fi + OBJ_ADD="$OBJ_ADD-py" if pythonBin=$(which python 2>/dev/null) then if [ -n "$PYTHON_LIBRARY" ] then - # check $PYTHON_LIBRARY if it has been set + # Check $PYTHON_LIBRARY if it has been set if [ ! -e "$PYTHON_LIBRARY" ] then echo "*** Error: libpython not found at location specified " \ @@ -208,7 +224,7 @@ addPythonSupport() pythonMajor=$(echo $PYTHON_LIBRARY | sed 's/.*libpython\(.*\)\.so.*/\1/') pythonInclude=/usr/include/python$pythonMajor - # note - we could also allow for a PYTHON_INCLUDE variable ... + # Note - we could also allow for a PYTHON_INCLUDE variable ... [ -d "$pythonInclude" ] || { echo " No python headers found in $pythonInclude/" echo " Please install python headers or deactivate " @@ -238,11 +254,14 @@ addPythonSupport() # -# define options for mesa support +# Define options for mesa support # addMesaSupport() { - [ "${withMESA:=false}" = true ] || return + if [ "${withMESA:=false}" != true ] + then + return + fi if [ -d "$MESA_INCLUDE" -a -f "$MESA_LIBRARY" ] then @@ -266,7 +285,11 @@ addMesaSupport() addQtSupport() { QtVersion=none - [ "${withQT:=false}" = true ] || return + + if [ "${withQT:=false}" != true ] + then + return + fi addCMakeVariable "PARAVIEW_BUILD_QT_GUI=ON" @@ -289,7 +312,7 @@ addQtSupport() if [ -n "$qmakeExe" ] then - # use absolute path + # Use absolute path if [ "${qmakeExe#/}" = "$qmakeExe" ] then qmakeExe="$(cd ${qmakeExe%/qmake} 2>/dev/null && pwd)/qmake" @@ -303,7 +326,7 @@ addQtSupport() fi fi - # default to using qmake from the path + # Default to using qmake from the path if [ -n "$qmakeExe" ] then addCMakeVariable "QT_QMAKE_EXECUTABLE:FILEPATH=$qmakeExe" @@ -319,16 +342,16 @@ addQtSupport() # parse -> "Using Qt version X.Y.Z in ..." QtVersion=$($qmakeExe -query QT_VERSION) - # split Major.Minor.Revision - could also use IFS hacking + # Split Major.Minor.Revision - could also use IFS hacking set -- $(echo "$QtVersion" | sed -e 's/\./ /g') QtMajor=$1 QtMinor=$2 - if [[ ($QtMajor -lt 4) || ($QtMajor -eq 4 && $QtMinor -lt 5) ]] + if [ $QtMajor -lt 4 -o $QtMajor -eq 4 -a $QtMinor -lt 5 ] then echo "*** Error: Qt version provided < 4.5" - echo "*** Please use the -qmake option to specify the location of a version of Qt >= 4.5 " + echo "*** Please use the -qmake option to specify the location of a version of Qt >= 4.5" echo "*** e.g." echo "*** -qmake /usr/local/qt-4.6.2/bin/qmake" echo "*** -qmake $installBASE/qt-4.6.2/bin/qmake" @@ -342,7 +365,7 @@ addQtSupport() # -# configure via cmake, but don't actually build anything +# Configure via cmake, but don't actually build anything # configParaView() { @@ -365,7 +388,7 @@ configParaView() if [ -n "$cmakeExe" ] then - # use absolute path + # Use absolute path if [ "${cmakeExe#/}" = "$cmakeExe" ] then cmakeExe="$(cd ${cmakeExe%/cmake} 2>/dev/null && pwd)/cmake" @@ -379,10 +402,13 @@ configParaView() fi fi - # default to using cmake from the path - [ -n "$cmakeExe" ] || cmakeExe=cmake + # Default to using cmake from the path + if [ -z "$cmakeExe" ] + then + cmakeExe=cmake + fi - # remove any existing build folder and recreate + # Remove any existing build folder and recreate if [ -d $ParaView_BINARY_DIR ] then echo "removing old build directory" @@ -391,7 +417,9 @@ configParaView() fi mkdir -p $ParaView_BINARY_DIR - cd $ParaView_BINARY_DIR || exit 1 # change to build folder + addCMakeVariable "CMAKE_BUILD_TYPE:STRING=$buildType" + + cd $ParaView_BINARY_DIR || exit 1 # Change to build folder echo "----" echo "Configuring paraview-$ParaView_VERSION (major version: $ParaView_MAJOR)" @@ -402,6 +430,7 @@ configParaView() echo " Source : $ParaView_SOURCE_DIR" echo " Build : $ParaView_BINARY_DIR" echo " Target : $ParaView_DIR" + echo " Build type : $buildType" echo "----" echo echo "$cmakeExe" \ @@ -412,7 +441,7 @@ configParaView() echo "----" echo - # run cmake to create Makefiles + # Run cmake to create Makefiles $cmakeExe \ -DCMAKE_INSTALL_PREFIX:PATH=$ParaView_DIR \ $CMAKE_VARIABLES \ @@ -421,53 +450,40 @@ configParaView() # -# invoke make +# Invoke make # also link bin/ to lib/paraview-* for development without installation # makeParaView() { - cd $ParaView_BINARY_DIR || exit 1 # change to build folder + cd $ParaView_BINARY_DIR || exit 1 # Change to build folder echo " Starting make" time make -j $WM_NCOMPPROCS echo " Done make" - # remove lib if it is a link + # Remove lib if it is a link # (how this was previously handled before 'make install' worked) - [ -L lib ] && rm lib 2>/dev/null + if [ -L lib ] + then + rm lib 2>/dev/null + fi } # -# install the program +# Install the program # installParaView() { - cd $ParaView_BINARY_DIR || exit 1 # change to build folder + cd $ParaView_BINARY_DIR || exit 1 # Change to build folder echo " Installing ParaView to $ParaView_DIR" make install -# hack for missing files after install of version 3.14.1 - echo "Copying missing files to install folder" - CMAKE_SRC_DIR=$ParaView_SOURCE_DIR/CMake - CMAKE_INSTALL_DIR=$ParaView_DIR/lib/paraview-$ParaView_MAJOR/CMake - cp -f $ParaView_SOURCE_DIR/ParaViewUse.cmake $CMAKE_INSTALL_DIR - cp -f $CMAKE_SRC_DIR/generate_proxydocumentation.cmake $CMAKE_INSTALL_DIR - cp -f $CMAKE_SRC_DIR/smxml_to_xml.xsl $CMAKE_INSTALL_DIR - cp -f $CMAKE_SRC_DIR/xml_to_html.xsl $CMAKE_INSTALL_DIR - cp -f $CMAKE_SRC_DIR/xml_to_wiki.xsl.in $CMAKE_INSTALL_DIR - cp -f $CMAKE_SRC_DIR/generate_qhp.cmake $CMAKE_INSTALL_DIR - unset CMAKE_SRC_DIR CMAKE_INSTALL_DIR -# --- end hack - cat<< INFO --- Installation complete for paraview-$ParaView_VERSION - Set environment variables: - - export ParaView_DIR=$ParaView_DIR - export PATH=\$ParaView_DIR/bin:\$PATH - export PV_PLUGIN_PATH=\$FOAM_LIBBIN/paraview-$ParaView_MAJOR + Now update the environment by running: + wmRefresh --- INFO } @@ -475,27 +491,23 @@ INFO #------------------------------------------------------------------------------ -# clear the referenced variables before using any of the functions +# Clear the referenced variables before using any of the functions unset withMPI withVERBOSE unset withQT QMAKE_PATH unset withMESA MESA_INCLUDE MESA_LIBRARY unset withPYTHON PYTHON_INCLUDE PYTHON_LIBRARY unset CMAKE_VARIABLES unset OBJ_ADD +unset buildType - -# start with these general settings -addCMakeVariable "VTK_USE_TK:BOOL=OFF" +# Start with these general settings addCMakeVariable "BUILD_SHARED_LIBS:BOOL=ON VTK_USE_RPATH:BOOL=OFF" -addCMakeVariable "CMAKE_BUILD_TYPE:STRING=Release" -# include development files in "make install" -addCMakeVariable "PARAVIEW_INSTALL_DEVELOPMENT:BOOL=ON" +# Include development files in "make install" +addCMakeVariable "PARAVIEW_INSTALL_DEVELOPMENT_FILES:BOOL=ON" -# don't build test tree +# Don't build test tree addCMakeVariable "BUILD_TESTING:BOOL=OFF" -# remove dependency on WebKit -# addCMakeVariable VTK_QT_USE_WEBKIT:BOOL=OFF -# ----------------------------------------------------------------- end-of-file +#------------------------------------------------------------------------------ diff --git a/etc/tools/ThirdPartyFunctions b/etc/tools/ThirdPartyFunctions index a82a569..85c03e9 100644 --- a/etc/tools/ThirdPartyFunctions +++ b/etc/tools/ThirdPartyFunctions @@ -2,7 +2,7 @@ # ========= | # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox # \\ / O peration | -# \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation +# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation # \\/ M anipulation | #------------------------------------------------------------------------------ # License @@ -31,12 +31,13 @@ # Define WM_NCOMPPROCS always. #------------------------------------------------------------------------------ -# define the normal build and prefix directories +# Define the normal build and prefix directories buildBASE=$WM_THIRD_PARTY_DIR/build/$WM_ARCH$WM_COMPILER installBASE=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER + # -# mostly building without wmake +# Mostly building without wmake # - disable wmakeScheduler variables # - restrict WM_NCOMPPROCS to local number of cores # @@ -53,7 +54,16 @@ fi # -# download file $1 from url $2 into download/ directory +# If WM_CONTINUE_ON_ERROR not set activate the shell option "stop on error" +# +if [ -z "${WM_CONTINUE_ON_ERROR}" ] +then + set -e +fi + + +# +# Download file $1 from url $2 into download/ directory # downloadFile() { @@ -75,7 +85,7 @@ downloadFile() # -# copy Make/{files,options} from wmakeFiles/PACKAGE +# Copy Make/{files,options} from wmakeFiles/PACKAGE # # $1 = PACKAGE # $2 (optional) TARGET DIRECTORY @@ -119,4 +129,4 @@ cpMakeFiles() } -# ----------------------------------------------------------------- end-of-file +#------------------------------------------------------------------------------ diff --git a/makeCGAL b/makeCGAL index 6291227..0fbd2c8 100755 --- a/makeCGAL +++ b/makeCGAL @@ -3,7 +3,7 @@ # ========= | # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox # \\ / O peration | -# \\ / A nd | Copyright (C) 2012-2014 OpenFOAM Foundation +# \\ / A nd | Copyright (C) 2012-2016 OpenFOAM Foundation # \\/ M anipulation | #------------------------------------------------------------------------------ # License @@ -37,15 +37,22 @@ # Mixing system and ThirdParty for gmp/mpfr is not supported. # #------------------------------------------------------------------------------ + +# Get CGAL, boost and gmp/mpfr versions +. $WM_PROJECT_DIR/etc/config.sh/functions +_foamEval SOURCE_CGAL_VERSIONS_ONLY=yes \ + $($WM_PROJECT_DIR/bin/foamEtcFile config.sh/CGAL) +_foamSource $($WM_PROJECT_DIR/bin/foamEtcFile config.sh/compiler) + set -x -cgalPACKAGE=CGAL-4.7 -boostPACKAGE=boost-system -gmpPACKAGE=gmp-system -mpfrPACKAGE=mpfr-system +cgalPACKAGE=${cgal_version:-CGAL-4.8} +boostPACKAGE=${boost_version:-boost-system} +gmpPACKAGE=${gmp_version:-gmp-system} +mpfrPACKAGE=${mpfr_version:-mpfr-system} #------------------------------------------------------------------------------ -# run from third-party directory only +# Run from third-party directory only wmakeCheckPwd "$WM_THIRD_PARTY_DIR" || { echo "Error: Current directory is not \$WM_THIRD_PARTY_DIR" echo " The environment variables are inconsistent with the installation." @@ -83,11 +90,11 @@ USAGE } -# ensure CMake gets the correct C++ compiler +# Ensure CMake gets the correct C++ compiler [ -n "$WM_CXX" ] && export CXX="$WM_CXX" -# parse options +# Parse options while [ "$#" -gt 0 ] do case "$1" in @@ -159,7 +166,7 @@ then else boostInc="/usr/include" - # for completeness: + # For completeness: # 64-bit needs lib64, but 32-bit needs lib (not lib32) if [ "$WM_ARCH_OPTION" = 64 ] then @@ -170,7 +177,7 @@ else fi -# retrieve boost version: +# Retrieve boost version: if [ -f "$boostInc/boost/version.hpp" ] then BOOST_VERSION_NO=`sed -ne 's/^#define *BOOST_VERSION *\([0-9][0-9]*\).*$/\1/p' $boostInc/boost/version.hpp` @@ -180,6 +187,11 @@ else exit 1 fi +if [ "$cgal_version" = "cgal-system" ] +then + echo "Using system installation of CGAL" + exit 0 +fi # # Build CGAL @@ -201,7 +213,7 @@ GMP_ARCH_PATH=$installBASE/$gmpPACKAGE MPFR_ARCH_PATH=$installBASE/$mpfrPACKAGE ( - # remove any existing build folder and recreate + # Remove any existing build folder and recreate if [ -d $CGAL_BINARY_DIR ] then echo "removing old build directory" @@ -246,13 +258,13 @@ CMAKE_OPTIONS echo " ThirdParty : gmp/mpfr" configGmpMpfr=$(cat < +usage: ${0##*/} [option] [gmp-VERSION] [mpfr-VERSION] [mpc-VERSION] +options: + -no-multilib for 64-bit systems that don't have 32-bit support + -help * build combinations of gmp, mpfr, mpc and gcc $gmpPACKAGE @@ -62,6 +71,7 @@ USAGE exit 1 } +GCC_BUILD_OPTIONS="" # Parse options while [ "$#" -gt 0 ] @@ -70,6 +80,10 @@ do -h | -help) usage ;; + -no-multilib) + GCC_BUILD_OPTIONS="--disable-multilib" + shift + ;; gmp-[4-9]*) gmpPACKAGE="${1%%/}" shift @@ -120,13 +134,6 @@ GMP_ARCH_PATH=$installBASE/$gmpPACKAGE MPFR_ARCH_PATH=$installBASE/$mpfrPACKAGE MPC_ARCH_PATH=$installBASE/$mpcPACKAGE -# mpc is not needed for gcc older than 4.5 -case "$gccPACKAGE" in -gcc-4.[0-4].*) - mpcPACKAGE=false - ;; -esac - # # Build GMP # @@ -151,6 +158,7 @@ else set -x $sourceDIR/configure ABI=$ABI \ --prefix=$GMP_ARCH_PATH \ + --libdir=$GMP_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH \ --enable-cxx \ && make -j $WM_NCOMPPROCS \ && make install \ @@ -187,7 +195,9 @@ else set -x $sourceDIR/configure ABI=$ABI \ --prefix=$MPFR_ARCH_PATH \ - --with-gmp=$GMP_ARCH_PATH \ + --libdir=$MPFR_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH \ + --with-gmp-include=$GMP_ARCH_PATH/include \ + --with-gmp-lib=$GMP_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH \ && make -j $WM_NCOMPPROCS \ && make install \ && echo "Built: $mpfrPACKAGE" @@ -206,9 +216,6 @@ echo "---------------" if [ -d $MPC_ARCH_PATH ] then echo "Already built: $mpcPACKAGE" -elif [ "$mpcPACKAGE" = false ] -then - echo "Skip building mpc - not needed for older gcc versions" else echo "Starting build: $mpcPACKAGE" echo @@ -226,8 +233,11 @@ else set -x $sourceDIR/configure ABI=$ABI \ --prefix=$MPC_ARCH_PATH \ - --with-gmp=$GMP_ARCH_PATH \ - --with-mpfr=$MPFR_ARCH_PATH \ + --libdir=$MPC_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH \ + --with-gmp-include=$GMP_ARCH_PATH/include \ + --with-gmp-lib=$GMP_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH \ + --with-mpfr-include=$MPFR_ARCH_PATH/include \ + --with-mpfr-lib=$MPFR_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH \ && make -j $WM_NCOMPPROCS \ && make install \ && echo "Built: $mpcPACKAGE" @@ -263,9 +273,6 @@ else cd $sourceDIR || exit 1 make distclean 2>/dev/null - unset withMpc - [ -d "$MPC_ARCH_PATH" ] && withMpc="--with-mpc=$MPC_ARCH_PATH" - rm -rf $buildDIR mkdir -p $buildDIR cd $buildDIR @@ -273,14 +280,18 @@ else set -x $sourceDIR/configure \ --prefix=$GCC_ARCH_PATH \ - --with-gmp=$GMP_ARCH_PATH \ - --with-mpfr=$MPFR_ARCH_PATH \ - $withMpc \ + --with-gmp-include=$GMP_ARCH_PATH/include \ + --with-gmp-lib=$GMP_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH \ + --with-mpfr-include=$MPFR_ARCH_PATH/include \ + --with-mpfr-lib=$MPFR_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH \ + --with-mpc-include=$MPC_ARCH_PATH/include \ + --with-mpc-lib=$MPC_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH \ --with-pkgversion=OpenFOAM \ --enable-languages=c,c++ \ --enable-__cxa_atexit \ --enable-libstdcxx-allocator=new \ --with-system-zlib \ + $GCC_BUILD_OPTIONS \ MAKEINFO=missing \ && make -j $WM_NCOMPPROCS \ && make install \ @@ -292,4 +303,4 @@ else fi -# ----------------------------------------------------------------- end-of-file +#------------------------------------------------------------------------------ diff --git a/makeGperftools b/makeGperftools index 3bf9bd2..613c332 100755 --- a/makeGperftools +++ b/makeGperftools @@ -115,4 +115,4 @@ else } fi -# ----------------------------------------------------------------- end-of-file +#------------------------------------------------------------------------------ diff --git a/makeLLVM b/makeLLVM index 505d407..0551ead 100755 --- a/makeLLVM +++ b/makeLLVM @@ -3,7 +3,7 @@ # ========= | # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox # \\ / O peration | -# \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation +# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation # \\/ M anipulation | #------------------------------------------------------------------------------ # License @@ -37,7 +37,12 @@ # cd - # #------------------------------------------------------------------------------ -llvmPACKAGE=llvm-3.6.0 + +# get default llvm version +. $WM_PROJECT_DIR/etc/config.sh/functions +_foamSource $($WM_PROJECT_DIR/bin/foamEtcFile config.sh/compiler) + +llvmPACKAGE=${clang_version:-llvm-3.6.0} #------------------------------------------------------------------------------ # run from third-party directory only @@ -131,4 +136,4 @@ else } fi -# ----------------------------------------------------------------- end-of-file +#------------------------------------------------------------------------------ diff --git a/makeParaView b/makeParaView index 6de1398..10db8a8 100755 --- a/makeParaView +++ b/makeParaView @@ -3,7 +3,7 @@ # ========= | # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox # \\ / O peration | -# \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation +# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation # \\/ M anipulation | #------------------------------------------------------------------------------ # License @@ -26,7 +26,7 @@ # makeParaView # # Description -# Make and install paraview for version 3.14.1 and higher +# Make and install paraview 4 or 5 # - place the paraview source under $WM_THIRD_PARTY_DIR/ParaView-VERSION # (note capitalisation) # @@ -107,8 +107,8 @@ The -no-FEATURE option can be disable these features (if not already disabled): CMake options start with a capital letter and contain an '='. For example, - $Script BUILD_TESTING=ON PARAVIEW_GENERATE_PROXY_DOCUMENTATION=OFF -to add tests and avoid building documentation + $Script BUILD_TESTING=ON +to add tests For finer control, the build stages can be selected or deselected individually: -config -no-config @@ -146,6 +146,7 @@ setVersion # unset runCONFIG runMAKE runINSTALL runDEFAULT=true +buildType=Release # parse options while [ "$#" -gt 0 ] @@ -270,6 +271,11 @@ do export ParaView_MAJOR="$2" shift 2 ;; + -buildType) + [ "$#" -ge 2 ] || usage "'$1' option requires an argument" + buildType="$2" + shift 2 + ;; *) usage "unknown option/argument: '$*'" ;; @@ -317,6 +323,7 @@ Version information qt ${QtVersion:-none} version ${ParaView_VERSION:-unknown} major ${ParaView_MAJOR:-unknown} + build ${buildType:-Release} $(checkVersion) --------------------- SUMMARY diff --git a/makeParaView4 b/makeParaView3 similarity index 95% rename from makeParaView4 rename to makeParaView3 index b9a312d..28101ee 100755 --- a/makeParaView4 +++ b/makeParaView3 @@ -3,7 +3,7 @@ # ========= | # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox # \\ / O peration | -# \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation +# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation # \\/ M anipulation | #------------------------------------------------------------------------------ # License @@ -23,10 +23,10 @@ # along with OpenFOAM. If not, see . # # Script -# makeParaView +# makeParaView3 # # Description -# Make and install paraview +# Make and install paraview for version 3.14.1 and higher # - place the paraview source under $WM_THIRD_PARTY_DIR/ParaView-VERSION # (note capitalisation) # @@ -40,7 +40,7 @@ wmakeCheckPwd "$WM_THIRD_PARTY_DIR" || { exit 1 } . etc/tools/ThirdPartyFunctions -. etc/tools/ParaView4Functions +. etc/tools/ParaView3Functions #------------------------------------------------------------------------------ # # USER OPTIONS: @@ -107,8 +107,8 @@ The -no-FEATURE option can be disable these features (if not already disabled): CMake options start with a capital letter and contain an '='. For example, - $Script BUILD_TESTING=ON -to add tests + $Script BUILD_TESTING=ON PARAVIEW_GENERATE_PROXY_DOCUMENTATION=OFF +to add tests and avoid building documentation For finer control, the build stages can be selected or deselected individually: -config -no-config @@ -146,7 +146,6 @@ setVersion # unset runCONFIG runMAKE runINSTALL runDEFAULT=true -buildType=Release # parse options while [ "$#" -gt 0 ] @@ -271,11 +270,6 @@ do export ParaView_MAJOR="$2" shift 2 ;; - -buildType) - [ "$#" -ge 2 ] || usage "'$1' option requires an argument" - buildType="$2" - shift 2 - ;; *) usage "unknown option/argument: '$*'" ;; @@ -323,7 +317,6 @@ Version information qt ${QtVersion:-none} version ${ParaView_VERSION:-unknown} major ${ParaView_MAJOR:-unknown} - build ${buildType:-Release} $(checkVersion) --------------------- SUMMARY @@ -334,4 +327,5 @@ SUMMARY echo echo Done + #------------------------------------------------------------------------------