Merge lp:~unity-api-team/cmake-extras/fixes-for-michi into lp:cmake-extras

Proposed by Pete Woods
Status: Merged
Approved by: Pete Woods
Approved revision: 33
Merged at revision: 32
Proposed branch: lp:~unity-api-team/cmake-extras/fixes-for-michi
Merge into: lp:cmake-extras
Diff against target: 84 lines (+33/-6)
2 files modified
debian/changelog (+7/-0)
src/UseDoxygen.cmake (+26/-6)
To merge this branch: bzr merge lp:~unity-api-team/cmake-extras/fixes-for-michi
Reviewer Review Type Date Requested Status
Michi Henning Pending
CMake Extras Pending
Review via email: mp+275162@code.launchpad.net

Commit message

Don't assume anything about the doxygen examples directory.
Only build docs when input files have changed.

Description of the change

Don't assume anything about the doxygen examples directory.
Only build docs when input files have changed.

To post a comment you must log in.
33. By Pete Woods

Update changelog

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'debian/changelog'
2--- debian/changelog 2015-10-20 13:13:45 +0000
3+++ debian/changelog 2015-10-21 10:56:31 +0000
4@@ -1,3 +1,10 @@
5+cmake-extras (0.5-0ubuntu1) UNRELEASED; urgency=medium
6+
7+ * Don't assume anything about the doxygen examples directory. (LP: #1476487)
8+ * Only build docs when input files have changed. (LP: #1476488)
9+
10+ -- Pete Woods <pete.woods@canonical.com> Wed, 21 Oct 2015 11:54:21 +0100
11+
12 cmake-extras (0.4+15.10.20151020-0ubuntu1) wily; urgency=medium
13
14 [ Michi Henning ]
15
16=== modified file 'src/UseDoxygen.cmake'
17--- src/UseDoxygen.cmake 2015-06-19 09:04:54 +0000
18+++ src/UseDoxygen.cmake 2015-10-21 10:56:31 +0000
19@@ -77,10 +77,11 @@
20
21 cmake_parse_arguments(_ARG "${_options}" "${_oneValueArgs}" "${_multiValueArgs}" ${ARGN})
22
23- set(DOXYFILE_INPUT "\"${CMAKE_CURRENT_SOURCE_DIR}\"")
24+ set(INPUT "\"${CMAKE_CURRENT_SOURCE_DIR}\"")
25 if(_ARG_INPUT)
26- _doxygen_to_quoted_string(DOXYFILE_INPUT "${_ARG_INPUT}")
27+ set(INPUT "${_ARG_INPUT}")
28 endif()
29+ _doxygen_to_quoted_string(DOXYFILE_INPUT "${INPUT}")
30
31 set(DOXYFILE_FILE_PATTERNS "")
32 if(_ARG_FILE_PATTERNS)
33@@ -122,7 +123,7 @@
34 set(DOXYFILE_XML_OUTPUT "${_ARG_XML_OUTPUT}")
35 endif()
36
37- set(DOXYFILE_EXAMPLE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/examples")
38+ set(DOXYFILE_EXAMPLE_PATH "")
39 if(_ARG_EXAMPLE_PATH)
40 set(DOXYFILE_EXAMPLE_PATH "${_ARG_EXAMPLE_PATH}")
41 endif()
42@@ -249,20 +250,39 @@
43
44 configure_file("${_DOXYFILE_IN}" "${_DOXYFILE}" @ONLY)
45
46- add_custom_target(
47- ${TARGET_NAME}
48- ${_ALL}
49+ set(OUTPUT_FILE "${DOXYFILE_OUTPUT_DIRECTORY}/${DOXYFILE_HTML_OUTPUT}/index.html")
50+
51+ set(DEPENDENCIES "")
52+ foreach(_DIRECTORY ${INPUT})
53+ file(
54+ GLOB_RECURSE _TMP
55+ "${_DIRECTORY}/*"
56+ )
57+ list(APPEND DEPENDENCIES ${_TMP})
58+ endforeach()
59+
60+ add_custom_command(
61+ OUTPUT
62+ "${OUTPUT_FILE}"
63 COMMAND
64 "${DOXYGEN_EXECUTABLE}"
65 "${_DOXYFILE}"
66 DEPENDS
67 "${_DOXYFILE}"
68+ ${DEPENDENCIES}
69 COMMENT
70 "Writing documentation to ${DOXYFILE_OUTPUT_DIRECTORY}..."
71 WORKING_DIRECTORY
72 "${CMAKE_CURRENT_SOURCE_DIR}"
73 )
74
75+ add_custom_target(
76+ ${TARGET_NAME}
77+ ${_ALL}
78+ DEPENDS
79+ "${OUTPUT_FILE}"
80+ )
81+
82 if(_ARG_INSTALL)
83 install(
84 DIRECTORY

Subscribers

People subscribed via source and target branches

to all changes: