Commit 8e0b0536 authored by Mark Olesen's avatar Mark Olesen
Browse files

CONFIG: add gcc 10 series, reorder the compiler version list

- now list compiler versions in reverse order (newest first) similar
  to how they are listed on the gcc/llvm sites. Add comments to
  mention which compiler series are now considered unsupported.
parent 636d2688
## OpenFOAM® System Requirements
OpenFOAM requires a functioning C++11 compiler and `make` build toolchain.
OpenFOAM requires a functioning C++11 compiler and GNU `make` build toolchain.
### Minimum recommended versions
- gcc : 4.8.5
- cmake: 3.3 (required for ParaView and CGAL build)
- cmake: 3.8 (required for ParaView and CGAL build)
- boost: 1.48 (required for CGAL build and some functionality)
- fftw: 3.3.7 (recommended - required for FFT-related functionality)
- paraview: 5.5.2 (for visualization)
......@@ -28,12 +28,12 @@ To check the installed versions
### Additional utilities
- flex : **not 2.6.2, 2.6.3** (fails for building scotch)
- flex : ***not 2.6.2, 2.6.3*** (fails for building scotch)
- m4 : no known minimum level
- QT : 5.9 (optional - for ParaView build)
### Ubuntu (eg, 19.04)
### Ubuntu (eg, 20.04)
Install dependencies by executing the following lines on the command line:
```
......@@ -42,13 +42,13 @@ sudo apt-get install libgmp-dev libmpfr-dev libmpc-dev
```
Additional libraries will be required if compiling ParaView from
source, however it is suggested to skipped this initially since
source, however it is recommended to skipped this initially since
it generally represent the main compilation difficulty.
In many cases, a system installation of paraview or a
[precompiled binary][download ParaView]
will be much easier.
Some libraries can be installed from from the operating system, or
Some libraries can be installed from the operating system, or
compiled from the ThirdParty directory.
The default configuration for OpenFOAM assumes OpenMPI from the system
and ThirdParty installations for most others (boost, CGAL, FFTW,
......@@ -59,7 +59,7 @@ more system libraries on Ubuntu.
To inspect the available system versions, use the `apt-cache show`
command. For example,
```
sudo apt-cache show fftw3-dev
sudo apt-cache show libboost-dev
```
| Program | apt-cache show | Ubuntu | Version |
......
......@@ -40,114 +40,119 @@ case ThirdParty:
case Gcc:
set gcc_version="$default_gcc_version"
breaksw
case Gcc48*:
set gcc_version=gcc-4.8.5
case Gcc101*:
set gcc_version=gcc-10.1.0
breaksw
case Gcc49*:
set gcc_version=gcc-4.9.4
case Gcc93*:
set gcc_version=gcc-9.3.0
breaksw
case Gcc51*:
set gcc_version=gcc-5.1.0
case Gcc92*:
set gcc_version=gcc-9.2.0
breaksw
case Gcc52*:
set gcc_version=gcc-5.2.0
case Gcc91*:
set gcc_version=gcc-9.1.0
breaksw
case Gcc53*:
set gcc_version=gcc-5.3.0
case Gcc84*:
set gcc_version=gcc-8.4.0
breaksw
case Gcc54*:
set gcc_version=gcc-5.4.0
case Gcc83*:
set gcc_version=gcc-8.3.0
breaksw
case Gcc55*:
set gcc_version=gcc-5.5.0
case Gcc82*:
set gcc_version=gcc-8.2.0
breaksw
case Gcc61*:
set gcc_version=gcc-6.1.0
case Gcc81*:
set gcc_version=gcc-8.1.0
breaksw
case Gcc62*:
set gcc_version=gcc-6.2.0
case Gcc75*:
set gcc_version=gcc-7.5.0
breaksw
case Gcc63*:
set gcc_version=gcc-6.3.0
case Gcc74*:
set gcc_version=gcc-7.4.0
breaksw
case Gcc64*:
set gcc_version=gcc-6.4.0
case Gcc73*:
set gcc_version=gcc-7.3.0
breaksw
case Gcc65*:
set gcc_version=gcc-6.5.0
case Gcc72*:
set gcc_version=gcc-7.2.0
breaksw
case Gcc71*:
set gcc_version=gcc-7.1.0
breaksw
case Gcc72*:
set gcc_version=gcc-7.2.0
# Older GCC series that receive no further bugfixes
case Gcc65*:
set gcc_version=gcc-6.5.0
breaksw
case Gcc73*:
set gcc_version=gcc-7.3.0
case Gcc64*:
set gcc_version=gcc-6.4.0
breaksw
case Gcc74*:
set gcc_version=gcc-7.4.0
case Gcc63*:
set gcc_version=gcc-6.3.0
breaksw
case Gcc75*:
set gcc_version=gcc-7.5.0
case Gcc62*:
set gcc_version=gcc-6.2.0
breaksw
case Gcc81*:
set gcc_version=gcc-8.1.0
case Gcc61*:
set gcc_version=gcc-6.1.0
breaksw
case Gcc82*:
set gcc_version=gcc-8.2.0
case Gcc55*:
set gcc_version=gcc-5.5.0
breaksw
case Gcc83*:
set gcc_version=gcc-8.3.0
case Gcc54*:
set gcc_version=gcc-5.4.0
breaksw
case Gcc84*:
set gcc_version=gcc-8.4.0
case Gcc53*:
set gcc_version=gcc-5.3.0
breaksw
case Gcc91*:
set gcc_version=gcc-9.1.0
case Gcc52*:
set gcc_version=gcc-5.2.0
breaksw
case Gcc92*:
set gcc_version=gcc-9.2.0
case Gcc51*:
set gcc_version=gcc-5.1.0
breaksw
case Gcc93*:
set gcc_version=gcc-9.3.0
case Gcc49*:
set gcc_version=gcc-4.9.4
breaksw
case Gcc48*:
set gcc_version=gcc-4.8.5
breaksw
case Clang:
set clang_version="$default_clang_version"
breaksw
case Clang37*:
set clang_version=llvm-3.7.1
case Clang100*:
set clang_version=llvm-10.0.0
breaksw
case Clang38*:
set clang_version=llvm-3.8.1
case Clang90*:
set clang_version=llvm-9.0.1
breaksw
case Clang39*:
set clang_version=llvm-3.9.1
case Clang80*:
set clang_version=llvm-8.0.1
breaksw
case Clang40*:
set clang_version=llvm-4.0.1
case Clang71*:
set clang_version=llvm-7.1.0
breaksw
case Clang50*:
set clang_version=llvm-5.0.2
case Clang70*:
set clang_version=llvm-7.0.1
breaksw
case Clang60*:
set clang_version=llvm-6.0.1
breaksw
case Clang70*:
set clang_version=llvm-7.0.1
case Clang50*:
set clang_version=llvm-5.0.2
breaksw
case Clang71*:
set clang_version=llvm-7.1.0
case Clang40*:
set clang_version=llvm-4.0.1
breaksw
case Clang80*:
set clang_version=llvm-8.0.1
case Clang39*:
set clang_version=llvm-3.9.1
breaksw
case Clang90*:
set clang_version=llvm-9.0.1
case Clang38*:
set clang_version=llvm-3.8.1
breaksw
case Clang100*:
set clang_version=llvm-10.0.0
case Clang37*:
set clang_version=llvm-3.7.1
breaksw
default:
......
......@@ -42,43 +42,45 @@ ThirdParty)
case "$WM_COMPILER" in
Gcc) gcc_version="$default_gcc_version" ;;
Gcc48*) gcc_version=gcc-4.8.5 ;;
Gcc49*) gcc_version=gcc-4.9.4 ;;
Gcc51*) gcc_version=gcc-5.1.0 ;;
Gcc52*) gcc_version=gcc-5.2.0 ;;
Gcc53*) gcc_version=gcc-5.3.0 ;;
Gcc54*) gcc_version=gcc-5.4.0 ;;
Gcc55*) gcc_version=gcc-5.5.0 ;;
Gcc61*) gcc_version=gcc-6.1.0 ;;
Gcc62*) gcc_version=gcc-6.2.0 ;;
Gcc63*) gcc_version=gcc-6.3.0 ;;
Gcc64*) gcc_version=gcc-6.4.0 ;;
Gcc65*) gcc_version=gcc-6.5.0 ;;
Gcc71*) gcc_version=gcc-7.1.0 ;;
Gcc72*) gcc_version=gcc-7.2.0 ;;
Gcc73*) gcc_version=gcc-7.3.0 ;;
Gcc74*) gcc_version=gcc-7.4.0 ;;
Gcc75*) gcc_version=gcc-7.5.0 ;;
Gcc81*) gcc_version=gcc-8.1.0 ;;
Gcc82*) gcc_version=gcc-8.2.0 ;;
Gcc83*) gcc_version=gcc-8.3.0 ;;
Gcc84*) gcc_version=gcc-8.4.0 ;;
Gcc91*) gcc_version=gcc-9.1.0 ;;
Gcc92*) gcc_version=gcc-9.2.0 ;;
Gcc101*) gcc_version=gcc-10.1.0 ;;
Gcc93*) gcc_version=gcc-9.3.0 ;;
Gcc92*) gcc_version=gcc-9.2.0 ;;
Gcc91*) gcc_version=gcc-9.1.0 ;;
Gcc84*) gcc_version=gcc-8.4.0 ;;
Gcc83*) gcc_version=gcc-8.3.0 ;;
Gcc82*) gcc_version=gcc-8.2.0 ;;
Gcc81*) gcc_version=gcc-8.1.0 ;;
Gcc75*) gcc_version=gcc-7.5.0 ;;
Gcc74*) gcc_version=gcc-7.4.0 ;;
Gcc73*) gcc_version=gcc-7.3.0 ;;
Gcc72*) gcc_version=gcc-7.2.0 ;;
Gcc71*) gcc_version=gcc-7.1.0 ;;
# Older GCC series that receive no further bugfixes
Gcc65*) gcc_version=gcc-6.5.0 ;;
Gcc64*) gcc_version=gcc-6.4.0 ;;
Gcc63*) gcc_version=gcc-6.3.0 ;;
Gcc62*) gcc_version=gcc-6.2.0 ;;
Gcc61*) gcc_version=gcc-6.1.0 ;;
Gcc55*) gcc_version=gcc-5.5.0 ;;
Gcc54*) gcc_version=gcc-5.4.0 ;;
Gcc53*) gcc_version=gcc-5.3.0 ;;
Gcc52*) gcc_version=gcc-5.2.0 ;;
Gcc51*) gcc_version=gcc-5.1.0 ;;
Gcc49*) gcc_version=gcc-4.9.4 ;;
Gcc48*) gcc_version=gcc-4.8.5 ;;
Clang) clang_version="$default_clang_version" ;;
Clang37*) clang_version=llvm-3.7.1 ;;
Clang38*) clang_version=llvm-3.8.1 ;;
Clang39*) clang_version=llvm-3.9.1 ;;
Clang40*) clang_version=llvm-4.0.1 ;;
Clang50*) clang_version=llvm-5.0.2 ;;
Clang60*) clang_version=llvm-6.0.1 ;;
Clang70*) clang_version=llvm-7.0.1 ;;
Clang71*) clang_version=llvm-7.1.0 ;;
Clang80*) clang_version=llvm-8.0.1 ;;
Clang90*) clang_version=llvm-9.0.1 ;;
Clang100*) clang_version=llvm-10.0.0 ;;
Clang90*) clang_version=llvm-9.0.1 ;;
Clang80*) clang_version=llvm-8.0.1 ;;
Clang71*) clang_version=llvm-7.1.0 ;;
Clang70*) clang_version=llvm-7.0.1 ;;
Clang60*) clang_version=llvm-6.0.1 ;;
Clang50*) clang_version=llvm-5.0.2 ;;
Clang40*) clang_version=llvm-4.0.1 ;;
Clang39*) clang_version=llvm-3.9.1 ;;
Clang38*) clang_version=llvm-3.8.1 ;;
Clang37*) clang_version=llvm-3.7.1 ;;
*)
/bin/cat << UNKNOWN_COMPILER 1>&2
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment