1# Distributed under the OSI-approved BSD 3-Clause License. See accompanying 2# file Copyright.txt or https://cmake.org/licensing for details. 3 4include(Compiler/SunPro) 5 6set(CMAKE_CXX_VERBOSE_FLAG "-v") 7 8set(CMAKE_CXX_COMPILE_OPTIONS_PIC -KPIC) 9set(CMAKE_CXX_COMPILE_OPTIONS_PIE "") 10set(_CMAKE_CXX_PIE_MAY_BE_SUPPORTED_BY_LINKER NO) 11set(CMAKE_CXX_LINK_OPTIONS_PIE "") 12set(CMAKE_CXX_LINK_OPTIONS_NO_PIE "") 13set(CMAKE_SHARED_LIBRARY_CXX_FLAGS "-KPIC") 14set(CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS "-G") 15set(CMAKE_SHARED_LIBRARY_RUNTIME_CXX_FLAG "-R") 16set(CMAKE_SHARED_LIBRARY_RUNTIME_CXX_FLAG_SEP ":") 17set(CMAKE_SHARED_LIBRARY_SONAME_CXX_FLAG "-h") 18 19string(APPEND CMAKE_CXX_FLAGS_INIT " ") 20string(APPEND CMAKE_CXX_FLAGS_DEBUG_INIT " -g") 21string(APPEND CMAKE_CXX_FLAGS_MINSIZEREL_INIT " -xO2 -xspace -DNDEBUG") 22string(APPEND CMAKE_CXX_FLAGS_RELEASE_INIT " -xO3 -DNDEBUG") 23string(APPEND CMAKE_CXX_FLAGS_RELWITHDEBINFO_INIT " -g -xO2 -DNDEBUG") 24 25set(CMAKE_DEPFILE_FLAGS_CXX "-xMD -xMF <DEP_FILE>") 26 27# Initialize C link type selection flags. These flags are used when 28# building a shared library, shared module, or executable that links 29# to other libraries to select whether to use the static or shared 30# versions of the libraries. 31foreach(type SHARED_LIBRARY SHARED_MODULE EXE) 32 set(CMAKE_${type}_LINK_STATIC_CXX_FLAGS "-Bstatic") 33 set(CMAKE_${type}_LINK_DYNAMIC_CXX_FLAGS "-Bdynamic") 34endforeach() 35 36set(CMAKE_CXX_LINKER_WRAPPER_FLAG "-Qoption" "ld" " ") 37set(CMAKE_CXX_LINKER_WRAPPER_FLAG_SEP ",") 38 39set(CMAKE_CXX_CREATE_PREPROCESSED_SOURCE "<CMAKE_CXX_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>") 40set(CMAKE_CXX_CREATE_ASSEMBLY_SOURCE "<CMAKE_CXX_COMPILER> <INCLUDES> <FLAGS> -S <SOURCE> -o <ASSEMBLY_SOURCE>") 41 42# Create archives with "CC -xar" in case user adds "-instances=extern" 43# so that template instantiations are available to archive members. 44set(CMAKE_CXX_CREATE_STATIC_LIBRARY 45 "<CMAKE_CXX_COMPILER> -xar -o <TARGET> <OBJECTS> " 46 "<CMAKE_RANLIB> <TARGET> ") 47 48if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.13) 49 set(CMAKE_CXX98_STANDARD_COMPILE_OPTION "-std=c++03") 50 set(CMAKE_CXX98_EXTENSION_COMPILE_OPTION "-std=c++03") 51 set(CMAKE_CXX98_STANDARD__HAS_FULL_SUPPORT ON) 52 set(CMAKE_CXX11_STANDARD_COMPILE_OPTION "-std=c++11") 53 set(CMAKE_CXX11_EXTENSION_COMPILE_OPTION "-std=c++11") 54 set(CMAKE_CXX_LINK_WITH_STANDARD_COMPILE_OPTION 1) 55 56 if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.14) 57 set(CMAKE_CXX14_STANDARD_COMPILE_OPTION "-std=c++14") 58 set(CMAKE_CXX14_EXTENSION_COMPILE_OPTION "-std=c++14") 59 endif() 60else() 61 set(CMAKE_CXX98_STANDARD_COMPILE_OPTION "-library=stlport4") 62 set(CMAKE_CXX98_EXTENSION_COMPILE_OPTION "-library=stlport4") 63 set(CMAKE_CXX_LINK_WITH_STANDARD_COMPILE_OPTION 1) 64endif() 65 66__compiler_check_default_language_standard(CXX 1 98) 67