[Cmake-commits] CMake branch, next, updated. v3.0.0-rc4-2798-gdbcd7c1

Brad King brad.king at kitware.com
Tue May 6 13:39:13 EDT 2014


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  dbcd7c1e1f939de572585fbe374bfbf986ccc38c (commit)
       via  17c31b8bd4aa56d924b94cf41b9c4a6a90d23264 (commit)
      from  312e35bc896e40e7dc6613cfc485bd61741d5e93 (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=dbcd7c1e1f939de572585fbe374bfbf986ccc38c
commit dbcd7c1e1f939de572585fbe374bfbf986ccc38c
Merge: 312e35b 17c31b8
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Tue May 6 13:39:12 2014 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Tue May 6 13:39:12 2014 -0400

    Merge topic 'dont-rewrite-moc-parameter-file' into next
    
    17c31b8b Qt4: Extend the Qt4Targets test to cover dir and target moc parameters.


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=17c31b8bd4aa56d924b94cf41b9c4a6a90d23264
commit 17c31b8bd4aa56d924b94cf41b9c4a6a90d23264
Author:     Stephen Kelly <steveire at gmail.com>
AuthorDate: Wed Apr 30 08:35:51 2014 +0200
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Tue May 6 13:39:45 2014 -0400

    Qt4: Extend the Qt4Targets test to cover dir and target moc parameters.

diff --git a/Tests/Qt4Targets/CMakeLists.txt b/Tests/Qt4Targets/CMakeLists.txt
index 7430084..ae0a02b 100644
--- a/Tests/Qt4Targets/CMakeLists.txt
+++ b/Tests/Qt4Targets/CMakeLists.txt
@@ -37,29 +37,44 @@ set_property(TARGET Qt4WrapMacroTest PROPERTY AUTOMOC OFF)
 target_include_directories(Qt4WrapMacroTest PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/interface")
 target_link_libraries(Qt4WrapMacroTest Qt4::QtGui)
 
-set(timeformat "%Y%j%H%M%S")
-try_compile(RESULT
-  "${CMAKE_CURRENT_BINARY_DIR}/IncrementalMocBuild"
-  "${CMAKE_CURRENT_SOURCE_DIR}/IncrementalMoc"
-  IncrementalMoc
-  CMAKE_FLAGS -DADD_DEF=0 "-DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}")
-file(TIMESTAMP "${CMAKE_CURRENT_BINARY_DIR}/IncrementalMocBuild/moc_foo.cpp" tsvar_before "${timeformat}")
-if (NOT tsvar_before)
-  message(SEND_ERROR "Unable to read timestamp from moc file from first build!")
-endif()
+macro(test_incremental def)
+  set(timeformat "%Y%j%H%M%S")
+  try_compile(RESULT
+    "${CMAKE_CURRENT_BINARY_DIR}/IncrementalMocBuild_${def}"
+    "${CMAKE_CURRENT_SOURCE_DIR}/IncrementalMoc"
+    IncrementalMoc
+    CMAKE_FLAGS -D${def}=0 "-DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}"
+    OUTPUT_VARIABLE output
+    )
+  file(TIMESTAMP "${CMAKE_CURRENT_BINARY_DIR}/IncrementalMocBuild_${def}/moc_foo.cpp" tsvar_before "${timeformat}")
+  if (NOT tsvar_before)
+    message(SEND_ERROR
+      "Unable to read timestamp from moc file from first build with -D${def}!\n"
+      "try_compile output:\n${output}"
+      )
+  endif()
 
-execute_process(COMMAND "${CMAKE_COMMAND}" -E sleep 2) # Ensure that the timestamp will change.
+  execute_process(COMMAND "${CMAKE_COMMAND}" -E sleep 2) # Ensure that the timestamp will change.
 
-try_compile(RESULT
-  "${CMAKE_CURRENT_BINARY_DIR}/IncrementalMocBuild"
-  "${CMAKE_CURRENT_SOURCE_DIR}/IncrementalMoc"
-  IncrementalMoc
-  CMAKE_FLAGS -DADD_DEF=1 "-DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}")
-file(TIMESTAMP "${CMAKE_CURRENT_BINARY_DIR}/IncrementalMocBuild/moc_foo.cpp" tsvar_after "${timeformat}")
-if (NOT tsvar_after)
-  message(SEND_ERROR "Unable to read timestamp from moc file from second build!")
-endif()
+  try_compile(RESULT
+    "${CMAKE_CURRENT_BINARY_DIR}/IncrementalMocBuild_${def}"
+    "${CMAKE_CURRENT_SOURCE_DIR}/IncrementalMoc"
+    IncrementalMoc
+    CMAKE_FLAGS -D${def}=1 "-DQT_QMAKE_EXECUTABLE:FILEPATH=${QT_QMAKE_EXECUTABLE}"
+    OUTPUT_VARIABLE output
+    )
+  file(TIMESTAMP "${CMAKE_CURRENT_BINARY_DIR}/IncrementalMocBuild_${def}/moc_foo.cpp" tsvar_after "${timeformat}")
+  if (NOT tsvar_after)
+    message(SEND_ERROR
+      "Unable to read timestamp from moc file from second build!\n"
+      "try_compile output:\n${output}"
+      )
+  endif()
 
-if (NOT tsvar_after GREATER tsvar_before)
-  message(SEND_ERROR "Rebuild did not re-create moc file. Before: ${tsvar_before}. After: ${tsvar_after}")
-endif()
+  if (NOT tsvar_after GREATER tsvar_before)
+    message(SEND_ERROR "Rebuild did not re-create moc file with -D${def}. Before: ${tsvar_before}. After: ${tsvar_after}")
+  endif()
+endmacro()
+
+test_incremental(ADD_TARGET_DEF)
+test_incremental(ADD_DIR_DEF)
diff --git a/Tests/Qt4Targets/IncrementalMoc/CMakeLists.txt b/Tests/Qt4Targets/IncrementalMoc/CMakeLists.txt
index 4ba0ced..65e2b64 100644
--- a/Tests/Qt4Targets/IncrementalMoc/CMakeLists.txt
+++ b/Tests/Qt4Targets/IncrementalMoc/CMakeLists.txt
@@ -4,10 +4,18 @@ project(IncrementalMoc)
 
 find_package(Qt4 REQUIRED)
 
-qt4_generate_moc(foo.h moc_foo.cpp)
+if (ADD_TARGET_DEF)
+  set(target_args TARGET testlib)
+endif()
+
+if (ADD_DIR_DEF)
+  add_definitions(-DNEW_DEF)
+endif()
+
+qt4_generate_moc(foo.h moc_foo.cpp ${target_args})
 
 add_library(testlib foo.cpp moc_foo.cpp)
 target_link_libraries(testlib Qt4::QtCore)
-if (ADD_DEF)
+if (ADD_TARGET_DEF)
   target_compile_definitions(testlib PRIVATE NEW_DEF)
 endif()

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

Summary of changes:


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list