CONFIG: update c++ standard, some compiler rules (partially addresses #2209)

- migrate to c++14 for most compilers *except* gcc.
  There are still many systems in use with gcc-4.8.5, which does not
  support c++14.

- initial rules for nvidia compilers (pgi is will soon be defunct).
  Not fully tested...

CONFIG: provide fallback value for the user directory name

- in containers may have an unset USER env variable.
  Default to 'user' to prevent ugly looking directory names.
This commit is contained in:
Mark Olesen
2021-10-19 20:09:31 +02:00
parent 8eab653117
commit c2697f466d
31 changed files with 204 additions and 43 deletions

View File

@ -1,9 +1,12 @@
#------------------------------------------------------------------------------
# mingw is gcc, but new enough to support c++14
#------------------------------------------------------------------------------
include $(GENERAL_RULES)/Gcc/c++
c++ARCH = -m64 -pthread
# With gnu++11 (not c++11) to ensure __STRICT_ANSI__ is not defined
CC = x86_64-w64-mingw32-g++ -std=gnu++11
# With gnu++14 (not c++14) to ensure __STRICT_ANSI__ is not defined
CC = x86_64-w64-mingw32-g++ -std=gnu++14
include $(RULES)/c++$(WM_COMPILE_OPTION)
@ -34,3 +37,5 @@ LINKEXE = $(CC) $(c++FLAGS) \
-Wl,--strip-all \
-Wl,--force-exe-suffix \
$(FOAM_EXTRA_LDFLAGS)
#------------------------------------------------------------------------------