diff options
author | Brad King <brad.king@kitware.com> | 2009-08-21 14:32:26 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2009-08-21 14:32:26 (GMT) |
commit | 9ee0f9801a8b90e58f48e1b32b95624c9556251d (patch) | |
tree | 4571c22e1c1b9b72064222e7c0e3ac07ca02e0b0 | |
parent | 2ce6a7d0fbbd70c33592a98d204d8db7fad9a895 (diff) | |
download | CMake-9ee0f9801a8b90e58f48e1b32b95624c9556251d.zip CMake-9ee0f9801a8b90e58f48e1b32b95624c9556251d.tar.gz CMake-9ee0f9801a8b90e58f48e1b32b95624c9556251d.tar.bz2 |
Split SunPro compiler information files
This moves platform-independent SunPro compiler flags into separate
"Compiler/SunPro-<lang>.cmake" modules. Platform-specific flags are
left untouched.
-rw-r--r-- | Modules/Compiler/SunPro-C.cmake | 25 | ||||
-rw-r--r-- | Modules/Compiler/SunPro-CXX.cmake | 31 | ||||
-rw-r--r-- | Modules/Compiler/SunPro-Fortran.cmake | 15 | ||||
-rw-r--r-- | Modules/Platform/Linux-SunPro-C.cmake | 21 | ||||
-rw-r--r-- | Modules/Platform/Linux-SunPro-CXX.cmake | 21 | ||||
-rw-r--r-- | Modules/Platform/Linux-SunPro-Fortran.cmake | 14 | ||||
-rw-r--r-- | Modules/Platform/SunOS-SunPro-Fortran.cmake | 5 | ||||
-rw-r--r-- | Modules/Platform/SunOS.cmake | 50 |
8 files changed, 71 insertions, 111 deletions
diff --git a/Modules/Compiler/SunPro-C.cmake b/Modules/Compiler/SunPro-C.cmake index 2c60b89..4e7e50b 100644 --- a/Modules/Compiler/SunPro-C.cmake +++ b/Modules/Compiler/SunPro-C.cmake @@ -1 +1,26 @@ +SET(CMAKE_SHARED_LIBRARY_C_FLAGS "-KPIC") +SET(CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS "-G") +SET(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS "") +SET(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG "-R") +SET(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG_SEP ":") +SET(CMAKE_SHARED_LIBRARY_SONAME_C_FLAG "-h") + SET(CMAKE_C_VERBOSE_FLAG "-#") + +SET(CMAKE_C_FLAGS_INIT "") +SET(CMAKE_C_FLAGS_DEBUG_INIT "-g") +SET(CMAKE_C_FLAGS_MINSIZEREL_INIT "-xO2 -xspace -DNDEBUG") +SET(CMAKE_C_FLAGS_RELEASE_INIT "-xO3 -DNDEBUG") +SET(CMAKE_C_FLAGS_RELWITHDEBINFO_INIT "-g -xO2") + +# Initialize C link type selection flags. These flags are used when +# building a shared library, shared module, or executable that links +# to other libraries to select whether to use the static or shared +# versions of the libraries. +FOREACH(type SHARED_LIBRARY SHARED_MODULE EXE) + SET(CMAKE_${type}_LINK_STATIC_C_FLAGS "-Bstatic") + SET(CMAKE_${type}_LINK_DYNAMIC_C_FLAGS "-Bdynamic") +ENDFOREACH(type) + +SET(CMAKE_C_CREATE_PREPROCESSED_SOURCE "<CMAKE_C_COMPILER> <DEFINES> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>") +SET(CMAKE_C_CREATE_ASSEMBLY_SOURCE "<CMAKE_C_COMPILER> <DEFINES> <FLAGS> -S <SOURCE> -o <ASSEMBLY_SOURCE>") diff --git a/Modules/Compiler/SunPro-CXX.cmake b/Modules/Compiler/SunPro-CXX.cmake index f3c6b5f..c3f079d 100644 --- a/Modules/Compiler/SunPro-CXX.cmake +++ b/Modules/Compiler/SunPro-CXX.cmake @@ -1 +1,32 @@ +SET(CMAKE_SHARED_LIBRARY_CXX_FLAGS "-KPIC") +SET(CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS "-G") +SET(CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS "") +SET(CMAKE_SHARED_LIBRARY_RUNTIME_CXX_FLAG "-R") +SET(CMAKE_SHARED_LIBRARY_RUNTIME_CXX_FLAG_SEP ":") +SET(CMAKE_SHARED_LIBRARY_SONAME_CXX_FLAG "-h") + SET(CMAKE_CXX_VERBOSE_FLAG "-v") + +SET(CMAKE_CXX_FLAGS_INIT "") +SET(CMAKE_CXX_FLAGS_DEBUG_INIT "-g") +SET(CMAKE_CXX_FLAGS_MINSIZEREL_INIT "-xO2 -xspace -DNDEBUG") +SET(CMAKE_CXX_FLAGS_RELEASE_INIT "-xO3 -DNDEBUG") +SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO_INIT "-g -xO2") + +# Initialize C link type selection flags. These flags are used when +# building a shared library, shared module, or executable that links +# to other libraries to select whether to use the static or shared +# versions of the libraries. +FOREACH(type SHARED_LIBRARY SHARED_MODULE EXE) + SET(CMAKE_${type}_LINK_STATIC_CXX_FLAGS "-Bstatic") + SET(CMAKE_${type}_LINK_DYNAMIC_CXX_FLAGS "-Bdynamic") +ENDFOREACH(type) + +SET(CMAKE_CXX_CREATE_PREPROCESSED_SOURCE "<CMAKE_CXX_COMPILER> <DEFINES> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>") +SET(CMAKE_CXX_CREATE_ASSEMBLY_SOURCE "<CMAKE_CXX_COMPILER> <FLAGS> -S <SOURCE> -o <ASSEMBLY_SOURCE>") + +# Create archives with "CC -xar" in case user adds "-instances=extern" +# so that template instantiations are available to archive members. +SET(CMAKE_CXX_CREATE_STATIC_LIBRARY + "<CMAKE_CXX_COMPILER> -xar -o <TARGET> <OBJECTS> " + "<CMAKE_RANLIB> <TARGET> ") diff --git a/Modules/Compiler/SunPro-Fortran.cmake b/Modules/Compiler/SunPro-Fortran.cmake index 7f7c128..0933bf7 100644 --- a/Modules/Compiler/SunPro-Fortran.cmake +++ b/Modules/Compiler/SunPro-Fortran.cmake @@ -1 +1,16 @@ +SET(CMAKE_SHARED_LIBRARY_Fortran_FLAGS "-KPIC") +SET(CMAKE_SHARED_LIBRARY_CREATE_Fortran_FLAGS "-G") +SET(CMAKE_SHARED_LIBRARY_LINK_Fortran_FLAGS "") +SET(CMAKE_SHARED_LIBRARY_RUNTIME_Fortran_FLAG "-R") +SET(CMAKE_SHARED_LIBRARY_RUNTIME_Fortran_FLAG_SEP ":") +SET(CMAKE_SHARED_LIBRARY_SONAME_Fortran_FLAG "-h") +set(CMAKE_EXECUTABLE_RUNTIME_Fortran_FLAG "-R") + +SET(CMAKE_Fortran_FLAGS_INIT "") +SET(CMAKE_Fortran_FLAGS_DEBUG_INIT "-g") +SET(CMAKE_Fortran_FLAGS_MINSIZEREL_INIT "-xO2 -xspace -DNDEBUG") +SET(CMAKE_Fortran_FLAGS_RELEASE_INIT "-xO3 -DNDEBUG") +SET(CMAKE_Fortran_FLAGS_RELWITHDEBINFO_INIT "-g -xO2") +SET(CMAKE_Fortran_MODDIR_FLAG "-moddir=") +SET(CMAKE_Fortran_MODPATH_FLAG "-M") SET(CMAKE_Fortran_VERBOSE_FLAG "-v") diff --git a/Modules/Platform/Linux-SunPro-C.cmake b/Modules/Platform/Linux-SunPro-C.cmake index 529dfba..74aedd0 100644 --- a/Modules/Platform/Linux-SunPro-C.cmake +++ b/Modules/Platform/Linux-SunPro-C.cmake @@ -1,24 +1,3 @@ # Linux sun studio c options SET(CMAKE_DL_LIBS "dl") -SET(CMAKE_SHARED_LIBRARY_C_FLAGS "-KPIC") -SET(CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS "-G") -SET(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS "") -SET(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG "-R") -SET(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG_SEP ":") -SET(CMAKE_SHARED_LIBRARY_SONAME_C_FLAG "-h") SET(CMAKE_EXE_EXPORTS_C_FLAG "-Wl,--export-dynamic") - -SET(CMAKE_C_FLAGS_INIT "") -SET(CMAKE_C_FLAGS_DEBUG_INIT "-g") -SET(CMAKE_C_FLAGS_MINSIZEREL_INIT "-xO2 -xspace -DNDEBUG") -SET(CMAKE_C_FLAGS_RELEASE_INIT "-xO3 -DNDEBUG") -SET(CMAKE_C_FLAGS_RELWITHDEBINFO_INIT "-g -xO2") - -# Initialize C link type selection flags. These flags are used when -# building a shared library, shared module, or executable that links -# to other libraries to select whether to use the static or shared -# versions of the libraries. -FOREACH(type SHARED_LIBRARY SHARED_MODULE EXE) - SET(CMAKE_${type}_LINK_STATIC_C_FLAGS "-Bstatic") - SET(CMAKE_${type}_LINK_DYNAMIC_C_FLAGS "-Bdynamic") -ENDFOREACH(type) diff --git a/Modules/Platform/Linux-SunPro-CXX.cmake b/Modules/Platform/Linux-SunPro-CXX.cmake index 2f3d86a..6d9d8a5 100644 --- a/Modules/Platform/Linux-SunPro-CXX.cmake +++ b/Modules/Platform/Linux-SunPro-CXX.cmake @@ -1,25 +1,4 @@ # Linux sun studio c++ options SET(CMAKE_DL_LIBS "dl") -SET(CMAKE_SHARED_LIBRARY_CXX_FLAGS "-KPIC") -SET(CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS "-G") -SET(CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS "") -SET(CMAKE_SHARED_LIBRARY_RUNTIME_CXX_FLAG "-R") -SET(CMAKE_SHARED_LIBRARY_RUNTIME_CXX_FLAG_SEP ":") SET(CMAKE_SHARED_LIBRARY_RPATH_LINK_CXX_FLAG "-rpath-link ") -SET(CMAKE_SHARED_LIBRARY_SONAME_CXX_FLAG "-h") SET(CMAKE_EXE_EXPORTS_CXX_FLAG "--export-dynamic") - -SET(CMAKE_CXX_FLAGS_INIT "") -SET(CMAKE_CXX_FLAGS_DEBUG_INIT "-g") -SET(CMAKE_CXX_FLAGS_MINSIZEREL_INIT "-xO2 -xspace -DNDEBUG") -SET(CMAKE_CXX_FLAGS_RELEASE_INIT "-xO3 -DNDEBUG") -SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO_INIT "-g -xO2") - -# Initialize C link type selection flags. These flags are used when -# building a shared library, shared module, or executable that links -# to other libraries to select whether to use the static or shared -# versions of the libraries. -FOREACH(type SHARED_LIBRARY SHARED_MODULE EXE) - SET(CMAKE_${type}_LINK_STATIC_CXX_FLAGS "-Bstatic") - SET(CMAKE_${type}_LINK_DYNAMIC_CXX_FLAGS "-Bdynamic") -ENDFOREACH(type) diff --git a/Modules/Platform/Linux-SunPro-Fortran.cmake b/Modules/Platform/Linux-SunPro-Fortran.cmake index 6994839..2355aad 100644 --- a/Modules/Platform/Linux-SunPro-Fortran.cmake +++ b/Modules/Platform/Linux-SunPro-Fortran.cmake @@ -1,16 +1,2 @@ # Linux sun studio fortran options SET(CMAKE_DL_LIBS "dl") -SET(CMAKE_SHARED_LIBRARY_Fortran_FLAGS "-KPIC") -SET(CMAKE_SHARED_LIBRARY_CREATE_Fortran_FLAGS "-G") -SET(CMAKE_SHARED_LIBRARY_LINK_Fortran_FLAGS "") -SET(CMAKE_SHARED_LIBRARY_RUNTIME_Fortran_FLAG "-R") -SET(CMAKE_SHARED_LIBRARY_RUNTIME_Fortran_FLAG_SEP ":") -SET(CMAKE_SHARED_LIBRARY_SONAME_Fortran_FLAG "-h") - -SET(CMAKE_Fortran_FLAGS_INIT "") -SET(CMAKE_Fortran_FLAGS_DEBUG_INIT "-g") -SET(CMAKE_Fortran_FLAGS_MINSIZEREL_INIT "-xO2 -xspace -DNDEBUG") -SET(CMAKE_Fortran_FLAGS_RELEASE_INIT "-xO3 -DNDEBUG") -SET(CMAKE_Fortran_FLAGS_RELWITHDEBINFO_INIT "-g -xO2") -SET(CMAKE_Fortran_MODDIR_FLAG "-moddir=") -SET(CMAKE_Fortran_MODPATH_FLAG "-M") diff --git a/Modules/Platform/SunOS-SunPro-Fortran.cmake b/Modules/Platform/SunOS-SunPro-Fortran.cmake deleted file mode 100644 index 1006bf2..0000000 --- a/Modules/Platform/SunOS-SunPro-Fortran.cmake +++ /dev/null @@ -1,5 +0,0 @@ -set(CMAKE_Fortran_MODDIR_FLAG "-moddir=") -set(CMAKE_Fortran_MODPATH_FLAG "-M") -set(CMAKE_EXECUTABLE_RUNTIME_Fortran_FLAG "-R") -set(CMAKE_SHARED_LIBRARY_Fortran_FLAGS "-KPIC") - diff --git a/Modules/Platform/SunOS.cmake b/Modules/Platform/SunOS.cmake index cccd0d4..7d25577 100644 --- a/Modules/Platform/SunOS.cmake +++ b/Modules/Platform/SunOS.cmake @@ -3,33 +3,15 @@ IF(CMAKE_SYSTEM MATCHES "SunOS-4.*") SET(CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS "-shared -Wl,-r") SET(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG "-Wl,-R") SET(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG_SEP ":") - SET(CMAKE_SHARED_LIBRARY_SONAME_C_FLAG "-h") - SET(CMAKE_SHARED_LIBRARY_SONAME_CXX_FLAG "-h") ENDIF(CMAKE_SYSTEM MATCHES "SunOS-4.*") IF(CMAKE_SYSTEM MATCHES "SunOS-5.*") - SET(CMAKE_SHARED_LIBRARY_C_FLAGS "-KPIC") - SET(CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS "-G") - SET(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG "-R") - SET(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG_SEP ":") - SET(CMAKE_SHARED_LIBRARY_SONAME_C_FLAG "-h") - SET(CMAKE_SHARED_LIBRARY_SONAME_CXX_FLAG "-h") - SET(CMAKE_SHARED_LIBRARY_CXX_FLAGS "-KPIC") - SET(CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS "-G") - SET(CMAKE_SHARED_LIBRARY_RUNTIME_CXX_FLAG "-R") - SET(CMAKE_SHARED_LIBRARY_RUNTIME_CXX_FLAG_SEP ":") IF(CMAKE_COMPILER_IS_GNUCC) SET(CMAKE_SHARED_LIBRARY_C_FLAGS "-fPIC") SET(CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS "-shared") SET(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG "-Wl,-R") SET(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG_SEP ":") SET(CMAKE_SHARED_LIBRARY_SONAME_C_FLAG "-Wl,-h") - ELSE(CMAKE_COMPILER_IS_GNUCC) - SET (CMAKE_C_FLAGS_INIT "") - SET (CMAKE_C_FLAGS_DEBUG_INIT "-g") - SET (CMAKE_C_FLAGS_MINSIZEREL_INIT "-xO3 -DNDEBUG") - SET (CMAKE_C_FLAGS_RELEASE_INIT "-xO2 -DNDEBUG") - SET (CMAKE_C_FLAGS_RELWITHDEBINFO_INIT "-xO2") ENDIF(CMAKE_COMPILER_IS_GNUCC) IF(CMAKE_COMPILER_IS_GNUCXX) SET(CMAKE_SHARED_LIBRARY_CXX_FLAGS "-fPIC") @@ -37,12 +19,6 @@ IF(CMAKE_SYSTEM MATCHES "SunOS-5.*") SET(CMAKE_SHARED_LIBRARY_RUNTIME_CXX_FLAG "-Wl,-R") SET(CMAKE_SHARED_LIBRARY_RUNTIME_CXX_FLAG_SEP ":") SET(CMAKE_SHARED_LIBRARY_SONAME_CXX_FLAG "-Wl,-h") - ELSE(CMAKE_COMPILER_IS_GNUCXX) - SET (CMAKE_CXX_FLAGS_INIT "") - SET (CMAKE_CXX_FLAGS_DEBUG_INIT "-g") - SET (CMAKE_CXX_FLAGS_MINSIZEREL_INIT "-xO3 -DNDEBUG") - SET (CMAKE_CXX_FLAGS_RELEASE_INIT "-xO2 -DNDEBUG") - SET (CMAKE_CXX_FLAGS_RELWITHDEBINFO_INIT "-xO2") ENDIF(CMAKE_COMPILER_IS_GNUCXX) ENDIF(CMAKE_SYSTEM MATCHES "SunOS-5.*") @@ -53,12 +29,6 @@ IF(CMAKE_COMPILER_IS_GNUCXX) ELSE(CMAKE_COMPILER_IS_GNUCC) # Take default rule from CMakeDefaultMakeRuleVariables.cmake. ENDIF(CMAKE_COMPILER_IS_GNUCC) -ELSE(CMAKE_COMPILER_IS_GNUCXX) - IF(CMAKE_CXX_COMPILER) - SET(CMAKE_CXX_CREATE_STATIC_LIBRARY - "<CMAKE_CXX_COMPILER> -xar -o <TARGET> <OBJECTS> " - "<CMAKE_RANLIB> <TARGET> ") - ENDIF(CMAKE_CXX_COMPILER) ENDIF(CMAKE_COMPILER_IS_GNUCXX) INCLUDE(Platform/UnixPaths) @@ -68,16 +38,6 @@ IF("${CMAKE_C_COMPILER_ID} ${CMAKE_CXX_COMPILER_ID}" MATCHES SunPro) /opt/SUNWspro/lib /opt/SUNWspro/prod/lib /usr/ccs/lib) ENDIF("${CMAKE_C_COMPILER_ID} ${CMAKE_CXX_COMPILER_ID}" MATCHES SunPro) -IF(NOT CMAKE_COMPILER_IS_GNUCC) - SET (CMAKE_C_CREATE_PREPROCESSED_SOURCE "<CMAKE_C_COMPILER> <DEFINES> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>") - SET (CMAKE_C_CREATE_ASSEMBLY_SOURCE "<CMAKE_C_COMPILER> <DEFINES> <FLAGS> -S <SOURCE> -o <ASSEMBLY_SOURCE>") -ENDIF(NOT CMAKE_COMPILER_IS_GNUCC) - -IF(NOT CMAKE_COMPILER_IS_GNUCXX) - SET (CMAKE_CXX_CREATE_PREPROCESSED_SOURCE "<CMAKE_CXX_COMPILER> <DEFINES> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>") - SET (CMAKE_CXX_CREATE_ASSEMBLY_SOURCE "<CMAKE_CXX_COMPILER> <FLAGS> -S <SOURCE> -o <ASSEMBLY_SOURCE>") -ENDIF(NOT CMAKE_COMPILER_IS_GNUCXX) - # Initialize C link type selection flags. These flags are used when # building a shared library, shared module, or executable that links # to other libraries to select whether to use the static or shared @@ -87,22 +47,12 @@ IF(CMAKE_COMPILER_IS_GNUCC) SET(CMAKE_${type}_LINK_STATIC_C_FLAGS "-Wl,-Bstatic") SET(CMAKE_${type}_LINK_DYNAMIC_C_FLAGS "-Wl,-Bdynamic") ENDFOREACH(type) -ELSE(CMAKE_COMPILER_IS_GNUCC) - FOREACH(type SHARED_LIBRARY SHARED_MODULE EXE) - SET(CMAKE_${type}_LINK_STATIC_C_FLAGS "-Bstatic") - SET(CMAKE_${type}_LINK_DYNAMIC_C_FLAGS "-Bdynamic") - ENDFOREACH(type) ENDIF(CMAKE_COMPILER_IS_GNUCC) IF(CMAKE_COMPILER_IS_GNUCXX) FOREACH(type SHARED_LIBRARY SHARED_MODULE EXE) SET(CMAKE_${type}_LINK_STATIC_CXX_FLAGS "-Wl,-Bstatic") SET(CMAKE_${type}_LINK_DYNAMIC_CXX_FLAGS "-Wl,-Bdynamic") ENDFOREACH(type) -ELSE(CMAKE_COMPILER_IS_GNUCXX) - FOREACH(type SHARED_LIBRARY SHARED_MODULE EXE) - SET(CMAKE_${type}_LINK_STATIC_CXX_FLAGS "-Bstatic") - SET(CMAKE_${type}_LINK_DYNAMIC_CXX_FLAGS "-Bdynamic") - ENDFOREACH(type) ENDIF(CMAKE_COMPILER_IS_GNUCXX) # The Sun linker needs to find transitive shared library dependencies |