[Cmake-commits] CMake branch, next, updated. v2.8.4-1071-g04bdc55

Brad King brad.king at kitware.com
Wed Mar 2 17:40:28 EST 2011


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, next has been updated
       via  04bdc55b0f632a7c7fa19be6505ff5f9be9c5a1d (commit)
       via  5f0a25955faaa40b65eba072bd4a87e40dd82297 (commit)
      from  1dbc97fc23766685424ecd52b0936007fe9a9030 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=04bdc55b0f632a7c7fa19be6505ff5f9be9c5a1d
commit 04bdc55b0f632a7c7fa19be6505ff5f9be9c5a1d
Merge: 1dbc97f 5f0a259
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Wed Mar 2 17:40:26 2011 -0500
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Wed Mar 2 17:40:26 2011 -0500

    Merge topic 'hp-compiler-info' into next
    
    5f0a259 Factor HP compiler flags into per-platform/per-compiler files


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5f0a25955faaa40b65eba072bd4a87e40dd82297
commit 5f0a25955faaa40b65eba072bd4a87e40dd82297
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Wed Mar 2 17:24:36 2011 -0500
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Wed Mar 2 17:24:36 2011 -0500

    Factor HP compiler flags into per-platform/per-compiler files
    
    Move HP flags out of Platform/HP-UX.cmake into platform-specific
    compiler information files "Platform/HP-UX-HP-<lang>.cmake".  Factor
    common values into "Platform/HP-UX-HP.cmake" and load it from the
    per-language files.

diff --git a/Modules/Platform/HP-UX-HP-C.cmake b/Modules/Platform/HP-UX-HP-C.cmake
new file mode 100644
index 0000000..d83e01b
--- /dev/null
+++ b/Modules/Platform/HP-UX-HP-C.cmake
@@ -0,0 +1,11 @@
+include(Platform/HP-UX-HP)
+__hpux_compiler_hp(C)
+
+set(CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS "-E -b +nodefaultrpath -L/usr/lib")
+
+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>")
+set(CMAKE_C_COMPILE_OBJECT "<CMAKE_C_COMPILER> <DEFINES> -Aa -Ae <FLAGS> -o <OBJECT>   -c <SOURCE>")
+
+# use ld directly to create shared libraries for hp cc
+set(CMAKE_C_CREATE_SHARED_LIBRARY "ld <CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS> <CMAKE_SHARED_LIBRARY_SONAME_C_FLAG><TARGET_SONAME> <LINK_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>")
diff --git a/Modules/Platform/HP-UX-HP-CXX.cmake b/Modules/Platform/HP-UX-HP-CXX.cmake
new file mode 100644
index 0000000..8f3c70c
--- /dev/null
+++ b/Modules/Platform/HP-UX-HP-CXX.cmake
@@ -0,0 +1,16 @@
+include(Platform/HP-UX-HP)
+__hpux_compiler_hp(CXX)
+
+set(CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS "+Z -Wl,-E,+nodefaultrpath -b -L/usr/lib")
+
+set(CMAKE_CXX_CREATE_PREPROCESSED_SOURCE "<CMAKE_CXX_COMPILER> <DEFINES> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>")
+set(CMAKE_CXX_CREATE_ASSEMBLY_SOURCE
+  "<CMAKE_CXX_COMPILER> <DEFINES> <FLAGS> -S <SOURCE>"
+  "mv `basename \"<SOURCE>\" | sed 's/\\.[^./]*$$//'`.s <ASSEMBLY_SOURCE>"
+  "rm -f `basename \"<SOURCE>\" | sed 's/\\.[^./]*$$//'`.o"
+  )
+
+set(CMAKE_CXX_FLAGS_DEBUG_INIT "-g")
+set(CMAKE_CXX_FLAGS_MINSIZEREL_INIT "+O3 -DNDEBUG")
+set(CMAKE_CXX_FLAGS_RELEASE_INIT "+O2 -DNDEBUG")
+set(CMAKE_CXX_FLAGS_RELWITHDEBINFO_INIT "-g")
diff --git a/Modules/Platform/HP-UX-HP-Fortran.cmake b/Modules/Platform/HP-UX-HP-Fortran.cmake
new file mode 100644
index 0000000..5a3ab19
--- /dev/null
+++ b/Modules/Platform/HP-UX-HP-Fortran.cmake
@@ -0,0 +1,7 @@
+include(Platform/HP-UX-HP)
+__hpux_compiler_hp(Fortran)
+
+set(CMAKE_SHARED_LIBRARY_CREATE_Fortran_FLAGS "-E -b -L/usr/lib")
+
+set(CMAKE_Fortran_CREATE_SHARED_LIBRARY
+  "ld <CMAKE_SHARED_LIBRARY_CREATE_Fortran_FLAGS> <CMAKE_SHARED_LIBRARY_SONAME_Fortran_FLAG><TARGET_SONAME> <LINK_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>")
diff --git a/Modules/Platform/HP-UX-HP.cmake b/Modules/Platform/HP-UX-HP.cmake
new file mode 100644
index 0000000..772edb4
--- /dev/null
+++ b/Modules/Platform/HP-UX-HP.cmake
@@ -0,0 +1,33 @@
+
+#=============================================================================
+# Copyright 2002-2011 Kitware, Inc.
+#
+# Distributed under the OSI-approved BSD License (the "License");
+# see accompanying file Copyright.txt for details.
+#
+# This software is distributed WITHOUT ANY WARRANTY; without even the
+# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+# See the License for more information.
+#=============================================================================
+# (To distribute this file outside of CMake, substitute the full
+#  License text for the above reference.)
+
+# This module is shared by multiple languages; use include blocker.
+if(__HPUX_COMPILER_HP)
+  return()
+endif()
+set(__HPUX_COMPILER_HP 1)
+set(_Wl_C "")
+set(_Wl_CXX "-Wl,")
+set(_Wl_Fortran "")
+
+macro(__hpux_compiler_hp lang)
+  set(CMAKE_SHARED_LIBRARY_${lang}_FLAGS "+Z")
+  set(CMAKE_SHARED_LIBRARY_LINK_${lang}_FLAGS "-Wl,+s,-E,+nodefaultrpath")
+  set(CMAKE_SHARED_LIBRARY_RUNTIME_${lang}_FLAG "${_Wl_${lang}}+b")
+  set(CMAKE_SHARED_LIBRARY_RUNTIME_${lang}_FLAG_SEP ":")
+  set(CMAKE_SHARED_LIBRARY_SONAME_${lang}_FLAG "${_Wl_${lang}}+h")
+  set(CMAKE_EXECUTABLE_RUNTIME_${lang}_FLAG "-Wl,+b")
+
+  set(CMAKE_${lang}_FLAGS_INIT "")
+endmacro()
diff --git a/Modules/Platform/HP-UX.cmake b/Modules/Platform/HP-UX.cmake
index 9d357c9..ab3dc22 100644
--- a/Modules/Platform/HP-UX.cmake
+++ b/Modules/Platform/HP-UX.cmake
@@ -15,57 +15,6 @@ SET(CMAKE_LINK_DEPENDENT_LIBRARY_DIRS 1)
 # specifying the file path.
 SET(CMAKE_PLATFORM_USES_PATH_WHEN_NO_SONAME 1)
 
-# fortran
-IF(CMAKE_COMPILER_IS_GNUG77)
-ELSE(CMAKE_COMPILER_IS_GNUG77)
-  # use ld directly to create shared libraries for hp cc
-  SET(CMAKE_Fortran_CREATE_SHARED_LIBRARY
-      "ld <CMAKE_SHARED_LIBRARY_CREATE_Fortran_FLAGS> <CMAKE_SHARED_LIBRARY_SONAME_Fortran_FLAG><TARGET_SONAME> <LINK_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>")
-  SET(CMAKE_SHARED_LIBRARY_Fortran_FLAGS "+Z")            # -pic 
-  SET(CMAKE_SHARED_LIBRARY_CREATE_Fortran_FLAGS "-E -b -L/usr/lib")       # -shared
-  SET(CMAKE_SHARED_LIBRARY_LINK_Fortran_FLAGS "-Wl,+s,-E,+nodefaultrpath")  # +s, flag for exe link to use shared lib
-  SET(CMAKE_SHARED_LIBRARY_RUNTIME_Fortran_FLAG "+b")       # -rpath
-  SET(CMAKE_SHARED_LIBRARY_RUNTIME_Fortran_FLAG_SEP ":")   # : or empty
-  SET(CMAKE_SHARED_LIBRARY_SONAME_Fortran_FLAG "+h")
-  SET(CMAKE_EXECUTABLE_RUNTIME_Fortran_FLAG "-Wl,+b")       # -rpath
-ENDIF(CMAKE_COMPILER_IS_GNUG77)
-
-# C compiler
-IF(CMAKE_COMPILER_IS_GNUCC)
-ELSE(CMAKE_COMPILER_IS_GNUCC)
-  # hp cc
-  # use ld directly to create shared libraries for hp cc
-  SET(CMAKE_C_CREATE_SHARED_LIBRARY
-      "ld <CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS> <CMAKE_SHARED_LIBRARY_SONAME_C_FLAG><TARGET_SONAME> <LINK_FLAGS> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>")
-  SET(CMAKE_SHARED_LIBRARY_C_FLAGS "+Z")            # -pic 
-  SET(CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS "-E -b +nodefaultrpath -L/usr/lib")       # -shared
-  SET(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS "-Wl,+s,-E,+nodefaultrpath")  # +s, flag for exe link to use shared lib
-  SET(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG "+b")       # -rpath
-  SET(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG_SEP ":")   # : or empty
-  SET(CMAKE_SHARED_LIBRARY_SONAME_C_FLAG "+h")
-  SET(CMAKE_EXECUTABLE_RUNTIME_C_FLAG "-Wl,+b")       # -rpath
-  SET(CMAKE_C_FLAGS_INIT "")
-  SET(CMAKE_C_COMPILE_OBJECT
-    "<CMAKE_C_COMPILER> <DEFINES> -Aa -Ae <FLAGS> -o <OBJECT>   -c <SOURCE>")
-ENDIF(CMAKE_COMPILER_IS_GNUCC)
-
-# CXX compiler
-IF(CMAKE_COMPILER_IS_GNUCXX) 
-ELSE(CMAKE_COMPILER_IS_GNUCXX)
-  # for hp aCC
-  SET(CMAKE_SHARED_LIBRARY_CXX_FLAGS "+Z")            # -pic 
-  SET(CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS "+Z -Wl,-E,+nodefaultrpath -b -L/usr/lib")       # -shared
-  SET(CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS "-Wl,+s,-E,+nodefaultrpath")  # +s, flag for exe link to use shared lib
-  SET(CMAKE_SHARED_LIBRARY_RUNTIME_CXX_FLAG "-Wl,+b")       # -rpath
-  SET(CMAKE_SHARED_LIBRARY_RUNTIME_CXX_FLAG_SEP ":")   # : or empty
-  SET(CMAKE_SHARED_LIBRARY_SONAME_CXX_FLAG "-Wl,+h")
-  SET(CMAKE_EXECUTABLE_RUNTIME_CXX_FLAG "-Wl,+b")       # -rpath
-  SET (CMAKE_CXX_FLAGS_INIT "")
-  SET (CMAKE_CXX_FLAGS_DEBUG_INIT "-g")
-  SET (CMAKE_CXX_FLAGS_MINSIZEREL_INIT "+O3 -DNDEBUG")
-  SET (CMAKE_CXX_FLAGS_RELEASE_INIT "+O2 -DNDEBUG")
-  SET (CMAKE_CXX_FLAGS_RELWITHDEBINFO_INIT "-g")
-ENDIF(CMAKE_COMPILER_IS_GNUCXX)
 # set flags for gcc support
 INCLUDE(Platform/UnixPaths)
 
@@ -81,20 +30,6 @@ LIST(APPEND CMAKE_SYSTEM_LIBRARY_PATH /usr/lib/hpux64)
 LIST(APPEND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES
   /usr/lib/hpux32 /usr/lib/hpux64)
 
-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> <DEFINES> <FLAGS> -S <SOURCE>"
-    "mv `basename \"<SOURCE>\" | sed 's/\\.[^./]*$$//'`.s <ASSEMBLY_SOURCE>"
-    "rm -f `basename \"<SOURCE>\" | sed 's/\\.[^./]*$$//'`.o"
-    )
-ENDIF(NOT CMAKE_COMPILER_IS_GNUCXX)
-
 # Initialize C and CXX 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

-----------------------------------------------------------------------

Summary of changes:
 Modules/Platform/HP-UX-HP-C.cmake                  |   11 +++
 Modules/Platform/HP-UX-HP-CXX.cmake                |   16 +++++
 Modules/Platform/HP-UX-HP-Fortran.cmake            |    7 ++
 .../Platform/{HP-UX-GNU.cmake => HP-UX-HP.cmake}   |   20 ++++--
 Modules/Platform/HP-UX.cmake                       |   65 --------------------
 5 files changed, 47 insertions(+), 72 deletions(-)
 create mode 100644 Modules/Platform/HP-UX-HP-C.cmake
 create mode 100644 Modules/Platform/HP-UX-HP-CXX.cmake
 create mode 100644 Modules/Platform/HP-UX-HP-Fortran.cmake
 copy Modules/Platform/{HP-UX-GNU.cmake => HP-UX-HP.cmake} (64%)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list