Commit Graph

12 Commits

Author SHA1 Message Date
Mark Olesen
c84b9aaac6 ENH: use new foamEtcFile options to simplify syntax when sourcing files
Can now use this:
    _foamSourceEtc config.sh/scotch
    _foamSourceEtc config.csh/scotch

instead of this:
    _foamSource $($WM_PROJECT_DIR/bin/foamEtcFile config.sh/scotch)
    _foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.csh/scotch`

In the bash/sh version, leave the _foamSource function for now, since
ThirdParty is still relying on it.

STYLE: elminate while-loop for _foamAddPath etc since this type of
construct isn't readily possible for csh and isn't being used anywhere.
2017-02-23 15:55:38 +01:00
Mark Olesen
d3911dd167 STYLE: avoid old-style shell backticks in various places 2017-02-20 09:30:58 +01:00
Mark Olesen
966b6e730e CONFIG: incorrect MPI_HOME for (unsupported) mpich 2016-11-29 13:06:03 +01:00
Mark Olesen
dec8bd46c3 BUG: _foamAddPath not available when foamPV alias/function is used
STYLE: only use paraview settings when actually available

- this means executing makeParaView prior to building OpenFOAM itself,
  but is consistent with the instructions given by makeParaView,
  and elminates anticipating the source location from the paraview
  config file, which increases the build flexibilty for ThirdParty
2016-11-28 15:35:27 +01:00
Mark Olesen
e9e9760329 CONFIG: bump versions of various third-party sources
* boost 1_62_0 (Sept 2016)

* CGAL 4.9 (Sept 2016)
  - now has headers-only mode that could be interesting

* FFTW 3.3.5 (Jul 2016)

* openmpi 1.10.4 (Sept 2016)
  - the first openmpi 2.x release is also available, but too early to switch

* paraview 5.2.0 (Nov 2016)
  - builds without additional patching

STYLE: removed unneeded CMake environment variables
2016-11-23 14:14:06 +01:00
Andrew Heather
9fbd612672 GIT: Initial state after latest Foundation merge 2016-09-20 14:49:08 +01:00
Henry Weller
c482490a60 etc/bashrc, etc/config.sh:
- "$FOAM_USER_APPBIN" and "$FOAM_USER_LIBBIN" have been added to
    "foamOldDirs" in "etc/bashrc" and "etc/config.sh/unset"

  - "$OPAL_PREFIX" is now undefined in the option "SYSTEMOPENMPI" within
    "etc/config.sh/mpi", but only if the path defined in this variable
    is cleaned when using "foamCleanPath".

  - "$OPAL_PREFIX" is now also conditionally undefined in
    "etc/config.sh/unset" when the path is picked up by "foamCleanPath".

Patch contributed by Bruno Santos
Resolved bug-report http://bugs.openfoam.org/view.php?id=2210
2016-08-23 21:02:55 +01:00
Mark Olesen
b4997ae091 CONFIG: only need one library variant for third-party openmpi
- in 3rd-party we always build into lib$WM_COMPILER_LIB_ARCH and
  thus only need this one in LD_LIBRARY_PATH.
2016-06-21 12:23:44 +02:00
Mark Olesen
b2b4123164 STYLE: minor config file details
- move unset mpi buffer size from config.csh/settings -> config.csh/mpi

- wmUNSET now also unalias wmREFRESH

Note: unsetenv WM_COMPILER_TYPE in csh variant?

- drop reference to paraview-3 in config files.
  Cannot say anything definite about support for versions
  this old (2012)
2016-06-17 19:56:19 +02:00
Henry Weller
4409a0ea5a etc/bashrc, etc/config.sh: Updates provided by Bruno Santos:
1. "foamCompiler" was changed to a more permanent "WM_COMPILER_TYPE"
    environment variable, so that it can be used by 3rd party
    installation scripts, such as "makeGcc", "makeLLVM" and so on. More
    on this will be provided in issue #1215.

 2. The script functions such as "_foamSource()" and "_foamAddPath()"
    were moved to a new file "etc/config.sh/functions". It has the
    ability to set or unset, depending on whether "WM_BASH_FUNCTIONS" is
    defined or not. This allows for these functions to be reused by
    other scripts, such as "makeGcc".

 3. The script "etc/config.sh/CGAL" relies on whether a local
    environment variable "SOURCE_CGAL_VERSIONS_ONLY" is defined or not,
    so that it will load only the version settings if it's defined. This
    is to make it easier to call this script from "makeCGAL". Although
    it still feels a bit of a clunky hack, but I didn't manage to deduce
    any other way we could do this :( I didn't add indentation within
    the if-block, to make it easier to read the changes. In addition,
    the local variable "common_path" is used to shorten the length of
    the lines and use slightly less repeated code.

 4. Added another new script "etc/config.sh/compiler", which has only
    the version numbers for the compilers taken out from the "settings"
    file. It currently depends on "WM_COMPILER_TYPE" for setting the
    variables, the same way it did with "foamCompiler". This script is
    now always sourced from the "settings" file, for the following
    reasons:

   - "makeGCC" and "makeLLVM" can now take advantage of this script file.

   - The example "compiler" script (detailed next) can rely on this
     script file and then override parameters on-demand, as well as
     allowing for system compilers to have dedicated settings, such as
     setting "WM_CC". This is similar to how the example environment
     script for "paraview" works.

 5. To the script "etc/config.sh/example/compiler" were added a few more examples:

   - It now starts with a block where it first loads the default "compiler" script.

   - Has a "WM_COMPILER=Gcc48u" case example for when we try to use GCC
     4.8 in Ubuntu 15.10. This is just to give the idea that in a
     particular system, we might have several system-wide compiler
     versions. For example, in Ubuntu 15.10, there is GCC 4.7, 4.8 and
     5.2, which could be used for testing performances or compatibility
     with some other 3rd party library.

   - Has the "WM_COMPILER=Icc" case example, related to the original bug
     report, where "WM_CC=icc" and "WM_CXX=icpc", so that the user then
     simply copies this file to their own local preferences folder.

 6. Small bug fix in "etc/config.sh/mpi", where unsetting "minBufferSize" was missing at the end of the script.

 7. Small change in "etc/config.sh/paraview", where "CMAKE_ROOT" is set
    along with "CMAKE_HOME". This is due to a rare issue that occurs on
    people's systems where they have a custom system-wide CMake version
    installed and which is used by having "CMAKE_ROOT" set on that
    environment. This can mess up OpenFOAM's custom ParaView builds,
    given that conflicting CMake versions can lead to not building
    ParaView at all.

   - For more details about "CMAKE_ROOT":
     https://cmake.org/Wiki/CMake_Useful_Variables [^]

 8. The scripts "_foamAddPath _foamAddLib _foamAddMan" were not being
    unset at the end of "settings". They are now unset at the end of
    "bashrc", through a call to the new double-use "functions" script.

Additionally all references to "foamCompiler" have been changed to
"WM_COMPILER_TYPE".

See also http://www.openfoam.org/mantisbt/view.php?id=1232
2016-03-09 09:01:09 +00:00
Henry Weller
350d03246e scripts: Reformat with consistent section separators 2016-02-15 18:30:24 +00:00
Henry Weller
9a7c6287a8 etc/config.*: Separate MPI settings into separate files and upgrade OpenMPI to 10.0.2 2016-02-10 20:46:24 +00:00