diff options
author | Alex Turbov <i.zaufi@gmail.com> | 2017-04-10 09:37:35 (GMT) |
---|---|---|
committer | Alex Turbov <i.zaufi@gmail.com> | 2017-05-24 03:15:45 (GMT) |
commit | 59ffabfeece31db8026aaa715f3ab0dbfbf8bb7e (patch) | |
tree | 65f775818d96d8b8742e120c26307d33642e1f47 /Tests/FindDoxygen/DotComponentTestTest | |
parent | ae5f98a5e36da8cf3c75625ffb9a1d34aa2407cb (diff) | |
download | CMake-59ffabfeece31db8026aaa715f3ab0dbfbf8bb7e.zip CMake-59ffabfeece31db8026aaa715f3ab0dbfbf8bb7e.tar.gz CMake-59ffabfeece31db8026aaa715f3ab0dbfbf8bb7e.tar.bz2 |
Improve Doxygen support
Except Graphviz's `dot` Doxygen may use few other utilities like
`mscgen` (Message Sequence Chart) and `dia` (Diagram Editor).
Now this module allows to manage Doxygen settings from `CMakeLists.txt`
and forget about `Doxyfile`s. Also it provides a helper function
to add a target to generate documentation: `doxygen_add_docs`.
Implement code review notes:
- Introduce `COMPONENTS` to find: `dot`, `mscgen` and `dia`;
- Deprecate variables `DOXYGEN_SKIP_DOT`, `DOXYGEN_EXECUTABLE`,
`DOXYGEN_DOT_EXECUTABLE`, `DOXYGEN_DOT_FOUND` in favour of
`doxygen_add_docs ` usage instead;
- Properly handle paths to found tools in Windows;
- Prevent adding a custom target if Doxygen was not really found;
- Introduce exported (executable) targets for found components.
Co-Author: Craig Scott <craig.scott@crascit.com>
Diffstat (limited to 'Tests/FindDoxygen/DotComponentTestTest')
-rw-r--r-- | Tests/FindDoxygen/DotComponentTestTest/CMakeLists.txt | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/Tests/FindDoxygen/DotComponentTestTest/CMakeLists.txt b/Tests/FindDoxygen/DotComponentTestTest/CMakeLists.txt new file mode 100644 index 0000000..586f0ff --- /dev/null +++ b/Tests/FindDoxygen/DotComponentTestTest/CMakeLists.txt @@ -0,0 +1,18 @@ +cmake_minimum_required(VERSION 3.8) +project(TestFindDoxygenDot VERSION 1.0 LANGUAGES NONE) + +# Testing a new signature w/ components +find_package(Doxygen REQUIRED COMPONENTS dot) + +# No backwards compatibility expected when component form is used +if(TARGET Doxygen::doxygen) + if(DOXYGEN) + message(FATAL_ERROR "DOXYGEN unexpectedly defined with component form") + endif() +else() + message(FATAL_ERROR "Import target Doxygen::doxygen not defined") +endif() + +if(NOT TARGET Doxygen::dot) + message(FATAL_ERROR "Import target Doxygen::dot not defined") +endif() |