Browse Source

FindDoxygen: Improve search for Graphviz "dot" on Windows

As of Graphviz 2.31, their installer provides no PATH or registry
modifications.  Glob possible install paths instead.

Inspired-by: Lars Bilke <[email protected]>
Brad King 11 years ago
parent
commit
7980eab8d5
1 changed files with 8 additions and 2 deletions
  1. 8 2
      Modules/FindDoxygen.cmake

+ 8 - 2
Modules/FindDoxygen.cmake

@@ -101,12 +101,18 @@ FIND_PACKAGE_HANDLE_STANDARD_ARGS(Doxygen REQUIRED_VARS DOXYGEN_EXECUTABLE VERSI
 # Find Dot...
 #
 
+set(_x86 "(x86)")
+file(GLOB _Doxygen_GRAPHVIZ_BIN_DIRS
+  "$ENV{ProgramFiles}/Graphviz*/bin"
+  "$ENV{ProgramFiles${_x86}}/Graphviz*/bin"
+  )
+unset(_x86)
+
 if(NOT DOXYGEN_SKIP_DOT)
   find_program(DOXYGEN_DOT_EXECUTABLE
     NAMES dot
     PATHS
-      "$ENV{ProgramFiles}/Graphviz 2.21/bin"
-      "C:/Program Files/Graphviz 2.21/bin"
+      ${_Doxygen_GRAPHVIZ_BIN_DIRS}
       "$ENV{ProgramFiles}/ATT/Graphviz/bin"
       "C:/Program Files/ATT/Graphviz/bin"
       [HKEY_LOCAL_MACHINE\\SOFTWARE\\ATT\\Graphviz;InstallPath]/bin