Set valid build information if gmx_detectcpu fails
authorRoland Schulz <roland@utk.edu>
Wed, 5 Sep 2012 10:57:56 +0000 (06:57 -0400)
committerRoland Schulz <roland@utk.edu>
Wed, 12 Sep 2012 01:58:16 +0000 (21:58 -0400)
If gmx_detectcpu failed the error message was written
into the build info which could cause a compiler error.

Change-Id: Id7e367595c14270dc8fa91daa97ce13a4c686057

cmake/gmxSetBuildInformation.cmake

index cfbf1c268684bd603599fa075a9b9f3574745230..639035335bb0ef55622a0212ed2a7fcd2f414f4f 100644 (file)
@@ -88,12 +88,36 @@ macro(gmx_set_build_information)
         string(STRIP "@OUTPUT_CPU_STEPPING@" OUTPUT_CPU_STEPPING)
         string(STRIP "@OUTPUT_CPU_FEATURES@" OUTPUT_CPU_FEATURES)
 
-        set(BUILD_CPU_VENDOR   "@OUTPUT_CPU_VENDOR@"   CACHE INTERNAL "Build CPU vendor")
-        set(BUILD_CPU_BRAND    "@OUTPUT_CPU_BRAND@"    CACHE INTERNAL "Build CPU brand")
-        set(BUILD_CPU_FAMILY   "@OUTPUT_CPU_FAMILY@"   CACHE INTERNAL "Build CPU family")
-        set(BUILD_CPU_MODEL    "@OUTPUT_CPU_MODEL@"    CACHE INTERNAL "Build CPU model")
-        set(BUILD_CPU_STEPPING "@OUTPUT_CPU_STEPPING@" CACHE INTERNAL "Build CPU stepping")
-        set(BUILD_CPU_FEATURES "@OUTPUT_CPU_FEATURES@" CACHE INTERNAL "Build CPU features")
+        if(GMX_DETECTCPU_RUN_VENDOR EQUAL 0)
+            set(BUILD_CPU_VENDOR   "@OUTPUT_CPU_VENDOR@"   CACHE INTERNAL "Build CPU vendor")
+        else()
+            set(BUILD_CPU_VENDOR   "Unknown, detect failed" CACHE INTERNAL "Build CPU vendor")
+        endif()
+        if(GMX_DETECTCPU_RUN_BRAND EQUAL 0)
+            set(BUILD_CPU_BRAND    "@OUTPUT_CPU_BRAND@"    CACHE INTERNAL "Build CPU brand")
+        else()
+            set(BUILD_CPU_BRAND    "Unknown, detect failed" CACHE INTERNAL "Build CPU brand")
+        endif()
+        if(GMX_DETECTCPU_RUN_FAMILY EQUAL 0)
+            set(BUILD_CPU_FAMILY   "@OUTPUT_CPU_FAMILY@"   CACHE INTERNAL "Build CPU family")
+        else()
+            set(BUILD_CPU_FAMILY   "0"                     CACHE INTERNAL "Build CPU family")
+        endif()
+        if(GMX_DETECTCPU_RUN_MODEL EQUAL 0)
+            set(BUILD_CPU_MODEL    "@OUTPUT_CPU_MODEL@"    CACHE INTERNAL "Build CPU model")
+        else()
+            set(BUILD_CPU_MODEL    "0"                     CACHE INTERNAL "Build CPU model")
+        endif()
+        if(GMX_DETECTCPU_RUN_STEPPING EQUAL 0)
+            set(BUILD_CPU_STEPPING "@OUTPUT_CPU_STEPPING@" CACHE INTERNAL "Build CPU stepping")
+        else()
+            set(BUILD_CPU_STEPPING "0"                     CACHE INTERNAL "Build CPU stepping")
+        endif()
+        if(GMX_DETECTCPU_RUN_FEATURES EQUAL 0)
+            set(BUILD_CPU_FEATURES "@OUTPUT_CPU_FEATURES@" CACHE INTERNAL "Build CPU features")
+        else()
+            set(BUILD_CPU_FEATURES ""                      CACHE INTERNAL "Build CPU features")
+        endif()
 
     else(NOT CMAKE_CROSSCOMPILING)