Преглед изворни кода

CompileFlags: add better selection which aCC version gets -AA +hpxstd98 flags

Rolf Eike Beer пре 11 година
родитељ
комит
185b4efe33
1 измењених фајлова са 6 додато и 2 уклоњено
  1. 6 2
      CompileFlags.cmake

+ 6 - 2
CompileFlags.cmake

@@ -54,8 +54,12 @@ if(CMAKE_SYSTEM MATCHES "OSF1-V.*")
 endif()
 
 if(CMAKE_SYSTEM_NAME MATCHES "HP-UX" AND CMAKE_CXX_COMPILER_ID MATCHES "HP")
-  # it is known that version 3.85 fails and 6.25 works without these flags
-  if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4)
+  # HP aCC since version 3.80 supports the flag +hpxstd98 to get ANSI C++98
+  # template support. It is known that version 6.25 doesn't need that flag.
+  # Versions prior to 3.80 will not be able to build CMake. Current assumption:
+  # it is needed for every version from 3.80 to 4 to get it working.
+  if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4 AND
+         NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.80)
     # use new C++ library and improved template support
     set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -AA +hpxstd98")
   endif()