Просмотр исходного кода

BUG: Report proper error message when project does not build the first time. Also added hack to rebuild subproject several times for Xcode. The generator should be fixed and the hack removed.

Brad King 18 лет назад
Родитель
Сommit
6a145fb2be
1 измененных файлов с 28 добавлено и 1 удалено
  1. 28 1
      Tests/BuildDepends/CMakeLists.txt

+ 28 - 1
Tests/BuildDepends/CMakeLists.txt

@@ -13,6 +13,19 @@ try_compile(RESULT
   ${BuildDepends_SOURCE_DIR}/Project
   testRebuild
   OUTPUT_VARIABLE OUTPUT)
+IF("${CMAKE_GENERATOR}" MATCHES "Xcode")
+  try_compile(RESULT 
+    ${BuildDepends_BINARY_DIR}/Project
+    ${BuildDepends_SOURCE_DIR}/Project
+    testRebuild
+    OUTPUT_VARIABLE OUTPUT)
+  try_compile(RESULT 
+    ${BuildDepends_BINARY_DIR}/Project
+    ${BuildDepends_SOURCE_DIR}/Project
+    testRebuild
+    OUTPUT_VARIABLE OUTPUT)
+ENDIF("${CMAKE_GENERATOR}" MATCHES "Xcode")
+
 if(NOT RESULT)
   message(SEND_ERROR "Could not build test project: ${OUTPUT}")
 endif(NOT RESULT)
@@ -33,7 +46,7 @@ message("${out}")
 if("${out}" STREQUAL "foo ")
   message("Worked!")
 else("${out}" STREQUAL "foo ")
-  message(SEND_ERROR "Program did not rebuild with changed file: ${out}")
+  message(SEND_ERROR "Project did not initially build properly: ${out}")
 endif("${out}" STREQUAL "foo ")
 
 write_file(${BuildDepends_BINARY_DIR}/Project/foo.cxx
@@ -44,6 +57,20 @@ try_compile(RESULT
   testRebuild
   OUTPUT_VARIABLE OUTPUT)
 
+# Xcode is in serious need of help here
+IF("${CMAKE_GENERATOR}" MATCHES "Xcode")
+  try_compile(RESULT 
+    ${BuildDepends_BINARY_DIR}/Project
+    ${BuildDepends_SOURCE_DIR}/Project
+    testRebuild
+    OUTPUT_VARIABLE OUTPUT)
+  try_compile(RESULT 
+    ${BuildDepends_BINARY_DIR}/Project
+    ${BuildDepends_SOURCE_DIR}/Project
+    testRebuild
+    OUTPUT_VARIABLE OUTPUT)
+ENDIF("${CMAKE_GENERATOR}" MATCHES "Xcode")
+
 if(NOT RESULT)
   message(SEND_ERROR "Could not build test project: ${OUTPUT}")
 endif(NOT RESULT)