[Cmake-commits] CMake branch, next, updated. v2.8.9-646-gd238d84

Brad King brad.king at kitware.com
Wed Sep 19 14:17:42 EDT 2012


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  d238d844f5c522b7d0446e1f25349f07ad6eaa05 (commit)
       via  ada9efd3afb710a982f28f46196d5ec53ade199b (commit)
       via  6e34aea93c71e3ac1667f93357695551e2ced09d (commit)
      from  0593a329f390f4bf4322bc5de184923fdc52d834 (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=d238d844f5c522b7d0446e1f25349f07ad6eaa05
commit d238d844f5c522b7d0446e1f25349f07ad6eaa05
Merge: 0593a32 ada9efd
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Wed Sep 19 14:17:34 2012 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Wed Sep 19 14:17:34 2012 -0400

    Merge topic 'clang-PIE' into next
    
    ada9efd Clang: All versions know about -fPIE (#13550)
    6e34aea Clang: Split Compiler/Clang* modules out from GNU (#13550)


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ada9efd3afb710a982f28f46196d5ec53ade199b
commit ada9efd3afb710a982f28f46196d5ec53ade199b
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Wed Sep 19 14:04:23 2012 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Wed Sep 19 14:08:45 2012 -0400

    Clang: All versions know about -fPIE (#13550)
    
    The GNU compiler information file tests for GNU >= 3.4 because earlier
    versions do not have the flag.  The version number test is not valid for
    Clang compiler versions, but we know Clang supports the flag.

diff --git a/Modules/Compiler/Clang.cmake b/Modules/Compiler/Clang.cmake
index f7be864..75a971d 100644
--- a/Modules/Compiler/Clang.cmake
+++ b/Modules/Compiler/Clang.cmake
@@ -22,4 +22,5 @@ include(Compiler/GNU)
 
 macro(__compiler_clang lang)
   __compiler_gnu(${lang})
+  set(CMAKE_${lang}_COMPILE_OPTIONS_PIE "-fPIE")
 endmacro()

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6e34aea93c71e3ac1667f93357695551e2ced09d
commit 6e34aea93c71e3ac1667f93357695551e2ced09d
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Wed Sep 19 14:04:13 2012 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Wed Sep 19 14:06:28 2012 -0400

    Clang: Split Compiler/Clang* modules out from GNU (#13550)
    
    While Clang presents an almost identical interface to GNU there will be
    some differences.  Split the compiler information modules to allow
    separate rules for Clang.  Start by loading the GNU rules but leave a
    place to add Clang-specific information.

diff --git a/Modules/Compiler/Clang-ASM.cmake b/Modules/Compiler/Clang-ASM.cmake
index a908b60..16c9c15 100644
--- a/Modules/Compiler/Clang-ASM.cmake
+++ b/Modules/Compiler/Clang-ASM.cmake
@@ -1 +1,5 @@
-include(Compiler/GNU-ASM)
+include(Compiler/Clang)
+
+set(CMAKE_ASM_SOURCE_FILE_EXTENSIONS s;S;asm)
+
+__compiler_clang(ASM)
diff --git a/Modules/Compiler/Clang-C.cmake b/Modules/Compiler/Clang-C.cmake
index f7baf68..98fcd0b 100644
--- a/Modules/Compiler/Clang-C.cmake
+++ b/Modules/Compiler/Clang-C.cmake
@@ -1 +1,2 @@
-include(Compiler/GNU-C)
+include(Compiler/Clang)
+__compiler_clang(C)
diff --git a/Modules/Compiler/Clang-CXX.cmake b/Modules/Compiler/Clang-CXX.cmake
index d3c403a..486e2af 100644
--- a/Modules/Compiler/Clang-CXX.cmake
+++ b/Modules/Compiler/Clang-CXX.cmake
@@ -1 +1,2 @@
-include(Compiler/GNU-CXX)
+include(Compiler/Clang)
+__compiler_clang(CXX)
diff --git a/Modules/Compiler/Clang.cmake b/Modules/Compiler/Clang.cmake
new file mode 100644
index 0000000..f7be864
--- /dev/null
+++ b/Modules/Compiler/Clang.cmake
@@ -0,0 +1,25 @@
+
+#=============================================================================
+# Copyright 2002-2012 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(__COMPILER_CLANG)
+  return()
+endif()
+set(__COMPILER_CLANG 1)
+
+include(Compiler/GNU)
+
+macro(__compiler_clang lang)
+  __compiler_gnu(${lang})
+endmacro()

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

Summary of changes:
 Modules/Compiler/Clang-ASM.cmake                   |    6 +++++-
 Modules/Compiler/Clang-C.cmake                     |    3 ++-
 Modules/Compiler/Clang-CXX.cmake                   |    3 ++-
 .../Linux-GNU.cmake => Compiler/Clang.cmake}       |   15 ++++++++-------
 4 files changed, 17 insertions(+), 10 deletions(-)
 copy Modules/{Platform/Linux-GNU.cmake => Compiler/Clang.cmake} (69%)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list