[cmake-commits] hoffman committed FindDoxygen.cmake 1.9 1.10

cmake-commits at cmake.org cmake-commits at cmake.org
Mon Oct 16 10:47:20 EDT 2006


Update of /cvsroot/CMake/CMake/Modules
In directory public:/mounts/ram/cvs-serv27109

Modified Files:
	FindDoxygen.cmake 
Log Message:
BUG: fix for bug# 3310 


Index: FindDoxygen.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/FindDoxygen.cmake,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -d -r1.9 -r1.10
--- FindDoxygen.cmake	4 Oct 2006 20:31:00 -0000	1.9
+++ FindDoxygen.cmake	16 Oct 2006 14:47:18 -0000	1.10
@@ -4,6 +4,20 @@
 # it contains the doxygen executable in the bundle. In the versions I've 
 # seen, it is located in Resources, but in general, more often binaries are 
 # located in MacOS.
+
+# The official Doxygen.app that is distributed for OS X uses non-standard 
+# conventions. Instead of the command-line "doxygen" tool being placed in
+# Doxygen.app/Contents/MacOS, "Doxywizard" is placed there instead and 
+# "doxygen" is actually placed in Contents/Resources. This is most likely
+# to accomodate people who double-click on the Doxygen.app package and expect
+# to see something happen. However, the CMake backend gets horribly confused
+# by this. Once CMake sees the bundle, it indiscrimately uses Doxywizard
+# as the executable to use. The only work-around I have found is to disable
+# the app-bundle feature for only this command.
+# Save the old setting
+SET(TEMP_DOXYGEN_SAVE_CMAKE_FIND_APPBUNDLE ${CMAKE_FIND_APPBUNDLE})
+# Disable the App-bundle detection feature
+SET(CMAKE_FIND_APPBUNDLE "NEVER")
 IF (NOT DOXYGEN_FIND_QUIETLY)
   MESSAGE(STATUS "Looking for doxygen...")
 ENDIF (NOT DOXYGEN_FIND_QUIETLY)
@@ -70,6 +84,9 @@
   DOC "Path to the Graphviz Dot tool"
 )
 
+# Restore the old app-bundle setting setting
+SET(CMAKE_FIND_APPBUNDLE ${TEMP_DOXYGEN_SAVE_CMAKE_FIND_APPBUNDLE})
+
 MARK_AS_ADVANCED(
   DOXYGEN_FOUND,
   DOXYGEN_EXECUTABLE,



More information about the Cmake-commits mailing list