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  940f2eed910256414c5e5f047a6d4da30acb6440 (commit)
       via  afae7a95a06bf1cbec47b3b4471e5f11a41065cb (commit)
      from  d7a3890af969b23f58530e326506c008971639d8 (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=940f2eed910256414c5e5f047a6d4da30acb6440
commit 940f2eed910256414c5e5f047a6d4da30acb6440
Merge: d7a3890 afae7a9
Author:     Stephen Kelly <steve...@gmail.com>
AuthorDate: Tue Aug 16 20:37:36 2011 -0400
Commit:     CMake Topic Stage <kwro...@kitware.com>
CommitDate: Tue Aug 16 20:37:36 2011 -0400

    Merge topic 'generate_export_header' into next
    
    afae7a9 Start testing expected values for compiler flags.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=afae7a95a06bf1cbec47b3b4471e5f11a41065cb
commit afae7a95a06bf1cbec47b3b4471e5f11a41065cb
Author:     Stephen Kelly <steve...@gmail.com>
AuthorDate: Wed Aug 17 02:34:23 2011 +0200
Commit:     Stephen Kelly <steve...@gmail.com>
CommitDate: Wed Aug 17 02:36:22 2011 +0200

    Start testing expected values for compiler flags.
    
    Should help catch unhandled flag warnings so far not handled by
    check_cxx_compiler_flag FAIL_REGEXen.

diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
index eececb0..aad908c 100644
--- a/Tests/CMakeLists.txt
+++ b/Tests/CMakeLists.txt
@@ -223,6 +223,8 @@ IF(BUILD_TESTING)
 
   ADD_TEST_MACRO(Module.GenerateExportHeader GenerateExportHeader)
 
+  ADD_TEST_MACRO(Module.CheckCXXCompilerFlag CheckCXXCompilerFlag)
+
   ADD_TEST(LinkFlags-prepare
     ${CMAKE_CTEST_COMMAND} -C \${CTEST_CONFIGURATION_TYPE}
     --build-and-test
diff --git a/Tests/Module/CheckCXXCompilerFlag/CMakeLists.txt 
b/Tests/Module/CheckCXXCompilerFlag/CMakeLists.txt
new file mode 100644
index 0000000..70bafb6
--- /dev/null
+++ b/Tests/Module/CheckCXXCompilerFlag/CMakeLists.txt
@@ -0,0 +1,63 @@
+cmake_minimum_required(VERSION 2.8)
+project(CheckCXXCompilerFlag)
+
+macro(TEST_FAIL value msg)
+  if (${value})
+    message (SEND_ERROR "Test fail:" ${msg} ${Out} )
+  endif ()
+endmacro()
+
+macro(TEST_PASS value msg)
+  if (NOT ${value})
+    message (SEND_ERROR "Test fail:" ${msg} ${Out} )
+  endif ()
+endmacro()
+
+if(CMAKE_COMPILER_IS_GNUCXX)
+  exec_program(${CMAKE_C_COMPILER} ARGS --version OUTPUT_VARIABLE     
_gcc_version_info)
+  string (REGEX MATCH "[345]\\.[0-9]\\.[0-9]" _gcc_version 
"${_gcc_version_info}")
+  # gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the
+  # patch level, handle this here:
+  if(NOT _gcc_version)
+    string (REGEX REPLACE ".*\\(GCC\\).* ([34]\\.[0-9]) .*" "\\1.0" 
_gcc_version "${_gcc_version_info}")
+  endif()
+endif()
+
+if(CMAKE_COMPILER_ID MATCHES Clang)
+  exec_program(${CMAKE_CXX_COMPILER} ARGS --version OUTPUT_VARIABLE     
_clang_version_info)
+  string (REGEX MATCH "version [345]\\.[0-9]" _clang_version 
"${_clang_version_info}")
+endif()
+
+message("Platform:\n  WIN32: ${WIN32}\n  UNIX: ${UNIX}\n  APPLE: ${APPLE}\n  
MINGW: ${MINGW}\n  CYGWIN: ${CYGWIN}\n"
+  "  MSVC: ${MSVC}\n  MSVC60: ${MSVC60}\n  MSVC70: ${MSVC70}\n  MSVC71: 
${MSVC71}\n  MSVC80: ${MSVC80}\n  MSVC90: ${MSVC90}\n  MSVC10: ${MSVC10}\n"
+  "  GCC: ${_gcc_version}\n"
+  "  Clang: ${_clang_version}\n"
+)
+
+include(CheckCXXCompilerFlag)
+
+check_cxx_compiler_flag(-fvisibility=hidden HAS_HIDDEN_VISIBILITY)
+
+message("HAS_HIDDEN_VISIBILITY: ${HAS_HIDDEN_VISIBILITY}\n\nCOMPILE 
OUTPUT:\n${OUTPUT}")
+
+if(CMAKE_COMPILER_IS_GNUCXX)
+  test_pass(HAS_HIDDEN_VISIBILITY "GCC should support hidden visibility, but 
does not.")
+else()
+  message("Unhandled Platform")
+endif()
+
+#
+# This is a no-op executable... If this test is going to fail, it fails during
+# the configure step while cmake is configuring this CMakeLists.txt file...
+#
+
+file(WRITE
+  "${CMAKE_CURRENT_BINARY_DIR}/main.cxx"
+  "int main() { return 0; }
+"
+)
+
+add_executable(
+  CheckCXXCompilerFlag
+  "${CMAKE_CURRENT_BINARY_DIR}/main.cxx"
+)

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

Summary of changes:
 Tests/CMakeLists.txt                             |    2 +
 Tests/Module/CheckCXXCompilerFlag/CMakeLists.txt |   63 ++++++++++++++++++++++
 2 files changed, 65 insertions(+), 0 deletions(-)
 create mode 100644 Tests/Module/CheckCXXCompilerFlag/CMakeLists.txt


hooks/post-receive
-- 
CMake
_______________________________________________
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-commits

Reply via email to