CrayClang-CXX.cmake 1.3 KB

1234567891011121314151617181920212223242526272829303132333435
  1. # Distributed under the OSI-approved BSD 3-Clause License. See accompanying
  2. # file Copyright.txt or https://cmake.org/licensing for details.
  3. include(Compiler/CrayClang)
  4. __compiler_cray_clang(CXX)
  5. set(CMAKE_CXX_COMPILE_OPTIONS_EXPLICIT_LANGUAGE -x c++)
  6. set(CMAKE_CXX_COMPILE_OPTIONS_VISIBILITY_INLINES_HIDDEN "-fvisibility-inlines-hidden")
  7. string(APPEND CMAKE_CXX_FLAGS_MINSIZEREL_INIT " -DNDEBUG")
  8. string(APPEND CMAKE_CXX_FLAGS_RELEASE_INIT " -DNDEBUG")
  9. set(CMAKE_CXX98_STANDARD_COMPILE_OPTION -std=c++98)
  10. set(CMAKE_CXX98_EXTENSION_COMPILE_OPTION -std=gnu++98)
  11. set(CMAKE_CXX98_STANDARD__HAS_FULL_SUPPORT ON)
  12. set(CMAKE_CXX11_STANDARD_COMPILE_OPTION -std=c++11)
  13. set(CMAKE_CXX11_EXTENSION_COMPILE_OPTION -std=gnu++11)
  14. set(CMAKE_CXX11_STANDARD__HAS_FULL_SUPPORT ON)
  15. set(CMAKE_CXX14_STANDARD_COMPILE_OPTION -std=c++14)
  16. set(CMAKE_CXX14_EXTENSION_COMPILE_OPTION -std=gnu++14)
  17. set(CMAKE_CXX14_STANDARD__HAS_FULL_SUPPORT ON)
  18. set(CMAKE_CXX17_STANDARD_COMPILE_OPTION -std=c++17)
  19. set(CMAKE_CXX17_EXTENSION_COMPILE_OPTION -std=gnu++17)
  20. set(CMAKE_CXX20_STANDARD_COMPILE_OPTION -std=c++20)
  21. set(CMAKE_CXX20_EXTENSION_COMPILE_OPTION -std=gnu++20)
  22. set(CMAKE_CXX23_STANDARD_COMPILE_OPTION -std=c++2b)
  23. set(CMAKE_CXX23_EXTENSION_COMPILE_OPTION -std=gnu++2b)
  24. __compiler_check_default_language_standard(CXX 15.0.0 14)