From 8e0b05368f63bdec63501c4e472957956134a074 Mon Sep 17 00:00:00 2001 From: Mark Olesen Date: Mon, 8 Jun 2020 11:11:43 +0200 Subject: [PATCH] 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. --- doc/Requirements.md | 14 +-- etc/config.csh/compiler | 193 +++++++++++++++++++++------------------- etc/config.sh/compiler | 68 +++++++------- 3 files changed, 141 insertions(+), 134 deletions(-) diff --git a/doc/Requirements.md b/doc/Requirements.md index 5c1be59d94..9142a5dfe3 100644 --- a/doc/Requirements.md +++ b/doc/Requirements.md @@ -1,11 +1,11 @@ ## 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 | diff --git a/etc/config.csh/compiler b/etc/config.csh/compiler index 30d5d47bc9..c2ca6677ab 100644 --- a/etc/config.csh/compiler +++ b/etc/config.csh/compiler @@ -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 - breaksw - case Gcc51*: - set gcc_version=gcc-5.1.0 - breaksw - case Gcc52*: - set gcc_version=gcc-5.2.0 - breaksw - case Gcc53*: - set gcc_version=gcc-5.3.0 - breaksw - case Gcc54*: - set gcc_version=gcc-5.4.0 - breaksw - case Gcc55*: - set gcc_version=gcc-5.5.0 - breaksw - case Gcc61*: - set gcc_version=gcc-6.1.0 - breaksw - case Gcc62*: - set gcc_version=gcc-6.2.0 - breaksw - case Gcc63*: - set gcc_version=gcc-6.3.0 - breaksw - case Gcc64*: - set gcc_version=gcc-6.4.0 - breaksw - case Gcc65*: - set gcc_version=gcc-6.5.0 - breaksw - case Gcc71*: - set gcc_version=gcc-7.1.0 - breaksw - case Gcc72*: - set gcc_version=gcc-7.2.0 - breaksw - case Gcc73*: - set gcc_version=gcc-7.3.0 - breaksw - case Gcc74*: - set gcc_version=gcc-7.4.0 - breaksw - case Gcc75*: - set gcc_version=gcc-7.5.0 - breaksw - case Gcc81*: - set gcc_version=gcc-8.1.0 - breaksw - case Gcc82*: - set gcc_version=gcc-8.2.0 - breaksw - case Gcc83*: - set gcc_version=gcc-8.3.0 - breaksw - case Gcc84*: - set gcc_version=gcc-8.4.0 - breaksw - case Gcc91*: - set gcc_version=gcc-9.1.0 + case Gcc93*: + set gcc_version=gcc-9.3.0 breaksw case Gcc92*: set gcc_version=gcc-9.2.0 breaksw - case Gcc93*: - set gcc_version=gcc-9.3.0 + case Gcc91*: + set gcc_version=gcc-9.1.0 + breaksw + case Gcc84*: + set gcc_version=gcc-8.4.0 + breaksw + case Gcc83*: + set gcc_version=gcc-8.3.0 + breaksw + case Gcc82*: + set gcc_version=gcc-8.2.0 + breaksw + case Gcc81*: + set gcc_version=gcc-8.1.0 + breaksw + case Gcc75*: + set gcc_version=gcc-7.5.0 + breaksw + case Gcc74*: + set gcc_version=gcc-7.4.0 + breaksw + case Gcc73*: + set gcc_version=gcc-7.3.0 + breaksw + case Gcc72*: + set gcc_version=gcc-7.2.0 + breaksw + case Gcc71*: + set gcc_version=gcc-7.1.0 + breaksw + + # Older GCC series that receive no further bugfixes + case Gcc65*: + set gcc_version=gcc-6.5.0 + breaksw + case Gcc64*: + set gcc_version=gcc-6.4.0 + breaksw + case Gcc63*: + set gcc_version=gcc-6.3.0 + breaksw + case Gcc62*: + set gcc_version=gcc-6.2.0 + breaksw + case Gcc61*: + set gcc_version=gcc-6.1.0 + breaksw + case Gcc55*: + set gcc_version=gcc-5.5.0 + breaksw + case Gcc54*: + set gcc_version=gcc-5.4.0 + breaksw + case Gcc53*: + set gcc_version=gcc-5.3.0 + breaksw + case Gcc52*: + set gcc_version=gcc-5.2.0 + breaksw + case Gcc51*: + set gcc_version=gcc-5.1.0 + breaksw + 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 - breaksw - case Clang38*: - set clang_version=llvm-3.8.1 - breaksw - case Clang39*: - set clang_version=llvm-3.9.1 - breaksw - case Clang40*: - set clang_version=llvm-4.0.1 - breaksw - case Clang50*: - set clang_version=llvm-5.0.2 - breaksw - case Clang60*: - set clang_version=llvm-6.0.1 - breaksw - case Clang70*: - set clang_version=llvm-7.0.1 - breaksw - case Clang71*: - set clang_version=llvm-7.1.0 - breaksw - case Clang80*: - set clang_version=llvm-8.0.1 + case Clang100*: + set clang_version=llvm-10.0.0 breaksw case Clang90*: set clang_version=llvm-9.0.1 breaksw - case Clang100*: - set clang_version=llvm-10.0.0 + case Clang80*: + set clang_version=llvm-8.0.1 + breaksw + case Clang71*: + set clang_version=llvm-7.1.0 + breaksw + case Clang70*: + set clang_version=llvm-7.0.1 + breaksw + case Clang60*: + set clang_version=llvm-6.0.1 + breaksw + case Clang50*: + set clang_version=llvm-5.0.2 + breaksw + case Clang40*: + set clang_version=llvm-4.0.1 + breaksw + case Clang39*: + set clang_version=llvm-3.9.1 + breaksw + case Clang38*: + set clang_version=llvm-3.8.1 + breaksw + case Clang37*: + set clang_version=llvm-3.7.1 breaksw default: diff --git a/etc/config.sh/compiler b/etc/config.sh/compiler index ee2b1dcb04..784f849c2f 100644 --- a/etc/config.sh/compiler +++ b/etc/config.sh/compiler @@ -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