- In the foundation version they introduced a construct to handle
the transition from 'wmRefresh' as an alias to 'wmRefresh' as
a shell function. This transition is unnecessary for OpenFOAM+
since 1606 used wmREFRESH (not wmRefresh) as an alias.
For portability it is important to avoid this non-POSIX
"type -t". It causes issues with dash and with zsh
(mentioned in issue #277).
type -t dash -> -t: not found
type -t zsh -> zsh: bad option: -t
Note: zsh users may still noticed other problems.
For example, the POSIX 'unset -f' normally has no output, but in zsh
it reports an error and has exit code 1 if the function was not
previously defined. Whereas in POSIX (including bash, dash) it only
returns non-zero if the name(s) could not be unset.
The change from C++0x to C++11 allows all of C++11 functionality to be
used in OpenFOAM, in particular constructor delegation which avoids code
duplication or constructor helper functions. However, this also means a
change to the minimum gcc version supported which is now 4.7 rather than
4.5.
Note that gcc-4.7 does not support the entire C++11 standard but does
support all of the functionality currently needed for further OpenFOAM
development. The minimum gcc-version which supports the entire C++11
standard is 4.8 which is now the recommended minimum gcc version.
- instead we use the CGAL settings directly since they have the
same option of (version | system | none)
- may wish to review this again in the future.
- export/setenv WM_COMPILER_TYPE as suggested by Mattijs.
- for overall consistency, don't carp about an unset WM_COMPILER_TYPE,
since this would only be on the first instance (prior to the
export/setenv) and would be confusing about why/when this message
may occur.
- reduce clutter: only use (system|ThirdParty) for WM_COMPILER_TYPE.
Drop the old 'OpenFOAM' setting for WM_COMPILER_TYPE, which was
transitional in early 2011.
- make the error messages more meaningful
- 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)
- replace with an alternative workaround.
Unset the _foamAddLib function prior to sourcing config.sh/CGAL:
- LD_LIBRARY_PATH will not be adjusted.
- cgal_version/boost_version variables will be retained.
Note: for ThirdParty builds, it is important that the boost and CGAL
paths are added into LD_LIBRARY_PATH even if before they are created.
This ensures that the OpenFOAM environment is functional after the
build.
The '*-none' and '*-system' specifications can still be used to avoid
setting them at all.
- not previously possible to configure a third-party gcc
with system gmp/mpfr/mpc.
This makes it easier to switch between compilers for testing.
- use system libraries by default