Add util function for CMake config changes.

- Add change_config_and_warn(), which basically does
  what it says.
- Fixed some indent issues.
- Added doc comment for create_dummy_source_file().

Change-Id: I748eec7ff63bd43af8c7a91be1e734b28f7d43d0
diff --git a/build/cmake/aom_configure.cmake b/build/cmake/aom_configure.cmake
index 26aa106..faa9557 100644
--- a/build/cmake/aom_configure.cmake
+++ b/build/cmake/aom_configure.cmake
@@ -243,52 +243,34 @@
   include(${wxWidgets_USE_FILE})
 
   if (NOT CONFIG_INSPECTION)
-    set(CONFIG_INSPECTION 1)
-    message(WARNING
-            "--- Enabled CONFIG_INSPECTION, required for CONFIG_ANALYZER.")
+    change_config_and_warn(CONFIG_INSPECTION 1 CONFIG_ANALYZER)
   endif ()
 endif ()
 
 if (CONFIG_VAR_TX_NO_TX_MODE AND NOT CONFIG_VAR_TX)
-   message(WARNING
-     "--- CONFIG_VAR_TX_NO_TX_MODE requires CONFIG_VAR_TX, disabling.")
-   set(CONFIG_VAR_TX_NO_TX_MODE 0)
+   change_config_and_warn(CONFIG_VAR_TX 1 CONFIG_VAR_TX_NO_TX_MODE)
 endif()
 
-if (CONFIG_DAALA_DCT4)
-  if (NOT CONFIG_DCT_ONLY)
-     message(WARNING
-       "--- Enabled CONFIG_DCT_ONLY, needed for CONFIG_DAALA_DCT4.")
-     set(CONFIG_DCT_ONLY 1)
-   endif()
+if (CONFIG_DAALA_DCT4 AND NOT CONFIG_DCT_ONLY)
+  change_config_and_warn(CONFIG_DCT_ONLY 1 CONFIG_DAALA_DCT4)
 endif()
 
 if (CONFIG_DAALA_DCT4 OR CONFIG_DAALA_DCT8 OR CONFIG_DAALA_DCT16)
   if (HAVE_MMX)
-     message(WARNING
-       "--- Disabled HAVE_MMX, incompatible with CONFIG_DAALA_DCTx.")
-     set(HAVE_MMX 0)
+    change_config_and_warn(HAVE_MMX 0 CONFIG_DAALA_DCTx)
   endif()
   if (CONFIG_RECT_TX)
-     message(WARNING
-       "--- Disabled CONFIG_RECT_TX, incompatible with  CONFIG_DAALA_DCTx.")
-     set(CONFIG_RECT_TX 0)
+    change_config_and_warn(CONFIG_RECT_TX 0 CONFIG_DAALA_DCTx)
   endif()
   if (CONFIG_VAR_TX)
-     message(WARNING
-       "--- Disabled CONFIG_VAR_TX, incompatible with CONFIG_DAALA_DCTx.")
-     set(CONFIG_VAR_TX 0)
+     change_config_and_warn(CONFIG_VAR_TX 0 CONFIG_DAALA_DCTx)
   endif()
   if (CONFIG_LGT)
-     message(WARNING
-       "--- Disabled CONFIG_LGT, incompatible with CONFIG_DAALA_DCTx.")
-     set(CONFIG_LGT 0)
-   endif()
+    change_config_and_warn(CONFIG_LGT 0 CONFIG_DAALA_DCTx)
+  endif()
   if (NOT CONFIG_LOWBITDEPTH)
-     message(WARNING
-       "--- Enabled CONFIG_LOWBITDEPTH, needed for CONFIG_DAALA_DCTx.")
-     set(CONFIG_LOWBITDEPTH 1)
-   endif()
+    change_config_and_warn(CONFIG_LOWBITDEPTH 1 CONFIG_DAALA_DCTx)
+  endif()
 endif()
 
 if (CONFIG_GCOV)
diff --git a/build/cmake/util.cmake b/build/cmake/util.cmake
index 62841a6..7d2b6c0 100644
--- a/build/cmake/util.cmake
+++ b/build/cmake/util.cmake
@@ -11,9 +11,12 @@
 if (NOT AOM_BUILD_CMAKE_UTIL_CMAKE_)
 set(AOM_BUILD_CMAKE_UTIL_CMAKE_ 1)
 
+# Creates dummy source file in $AOM_CONFIG_DIR named $basename.$extension and
+# returns the full path to the dummy source file via the $out_file_path
+# parameter.
 function (create_dummy_source_file basename extension out_file_path)
   set(dummy_source_file "${AOM_CONFIG_DIR}/${basename}.${extension}")
-   file(WRITE "${dummy_source_file}"
+  file(WRITE "${dummy_source_file}"
        "// Generated file. DO NOT EDIT!\n"
        "// ${target_name} needs a ${extension} file to force link language, \n"
        "// or to silence a harmless CMake warning: Ignore me.\n"
@@ -26,5 +29,21 @@
   target_sources(${target_name} PRIVATE ${dummy_source_file})
 endfunction ()
 
+# Sets the value of the variable referenced by $feature to $value, and reports
+# the change to the user via call to message(WARNING ...). $cause is expected to
+# be a configuration variable that conflicts with $feature in some way.
+function (change_config_and_warn feature value cause)
+  set(${feature} ${value} PARENT_SCOPE)
+  if (${value} EQUAL 1)
+    set(verb "Enabled")
+    set(reason "required for")
+  else ()
+    set(verb "Disabled")
+    set(reason "incompatible with")
+  endif ()
+  set(warning_message "${verb} ${feature}, ${reason} ${cause}.")
+  message(WARNING "--- ${warning_message}")
+endfunction ()
+
 endif()  # AOM_BUILD_CMAKE_UTIL_CMAKE_