From f7533fc93f25cb20fc52ea281c889c0c0e3e7547 Mon Sep 17 00:00:00 2001 From: Matteo Cypriani Date: Tue, 4 Jun 2013 11:07:08 -0400 Subject: [PATCH] CMake: fix Doxygen garbage cleaning --- doc/CMakeLists.txt | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt index 1d8bb75..a3a9794 100644 --- a/doc/CMakeLists.txt +++ b/doc/CMakeLists.txt @@ -75,11 +75,16 @@ add_custom_command( WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" COMMENT "Generating Doxygen-based man pages") -add_custom_target(doc_doxygen true DEPENDS ${DOXYGEN_MANPAGES}) -add_dependencies(doc doc_doxygen) +# Target to clean the files generated by Doxygen that we don't want +# (so-called "directory references"). This cannot be done with CMake's +# file() commands because it has to be run every time the target is +# built, and you cannot use CMake functions in a custom target or +# command. +add_custom_target(clean_doxygen_garbage + COMMAND rm -f "${OUTPUT_DIRECTORY}/_*_owlps_libowlps*_.${SECTION}") -# Clean Doxygen garbage -file(GLOB DOXYGEN_GARBAGE "${OUTPUT_DIRECTORY}/_*_owlps_libowlps*_.${SECTION}") -if (DOXYGEN_GARBAGE) - file(REMOVE ${DOXYGEN_GARBAGE}) -endif() +# Set up the target +add_custom_target(doc_doxygen true DEPENDS ${DOXYGEN_MANPAGES}) + +# Add the target to the "doc" meta-target +add_dependencies(doc doc_doxygen clean_doxygen_garbage)