summaryrefslogtreecommitdiff
path: root/Modules
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2017-06-08 15:58:26 -0400
committerBrad King <brad.king@kitware.com>2017-06-09 10:03:26 -0400
commit522c92d752753089f4bd50552955883a6f005570 (patch)
tree49b61d9e60a58b0195d34560cc4afa4809813d59 /Modules
parent893ee1b17c310f64c47cf1ebb9b9e5a839ea1940 (diff)
downloadcmake-522c92d752753089f4bd50552955883a6f005570.tar.gz
FindDoxygen: Create imported targets at most once in a given scope
The imported targets added by commit v3.9.0-rc1~55^2 (Improve Doxygen support, 2017-04-10) need to be guarded against duplicate creation on multiple inclusion.
Diffstat (limited to 'Modules')
-rw-r--r--Modules/FindDoxygen.cmake40
1 files changed, 24 insertions, 16 deletions
diff --git a/Modules/FindDoxygen.cmake b/Modules/FindDoxygen.cmake
index aff26fd472..0d9e161180 100644
--- a/Modules/FindDoxygen.cmake
+++ b/Modules/FindDoxygen.cmake
@@ -396,10 +396,12 @@ macro(_Doxygen_find_doxygen)
endif()
# Create an imported target for Doxygen
- add_executable(Doxygen::doxygen IMPORTED GLOBAL)
- set_target_properties(Doxygen::doxygen PROPERTIES
- IMPORTED_LOCATION "${DOXYGEN_EXECUTABLE}"
- )
+ if(NOT TARGET Doxygen::doxygen)
+ add_executable(Doxygen::doxygen IMPORTED GLOBAL)
+ set_target_properties(Doxygen::doxygen PROPERTIES
+ IMPORTED_LOCATION "${DOXYGEN_EXECUTABLE}"
+ )
+ endif()
endif()
endmacro()
@@ -429,10 +431,12 @@ macro(_Doxygen_find_dia)
endif()
# Create an imported target for component
- add_executable(Doxygen::dia IMPORTED GLOBAL)
- set_target_properties(Doxygen::dia PROPERTIES
- IMPORTED_LOCATION "${DOXYGEN_DIA_EXECUTABLE}"
- )
+ if(NOT TARGET Doxygen::dia)
+ add_executable(Doxygen::dia IMPORTED GLOBAL)
+ set_target_properties(Doxygen::dia PROPERTIES
+ IMPORTED_LOCATION "${DOXYGEN_DIA_EXECUTABLE}"
+ )
+ endif()
endif()
unset(_x86)
@@ -474,10 +478,12 @@ macro(_Doxygen_find_dot)
endif()
# Create an imported target for component
- add_executable(Doxygen::dot IMPORTED GLOBAL)
- set_target_properties(Doxygen::dot PROPERTIES
- IMPORTED_LOCATION "${DOXYGEN_DOT_EXECUTABLE}"
- )
+ if(NOT TARGET Doxygen::dot)
+ add_executable(Doxygen::dot IMPORTED GLOBAL)
+ set_target_properties(Doxygen::dot PROPERTIES
+ IMPORTED_LOCATION "${DOXYGEN_DOT_EXECUTABLE}"
+ )
+ endif()
endif()
unset(_Doxygen_GRAPHVIZ_BIN_DIRS)
@@ -510,10 +516,12 @@ macro(_Doxygen_find_mscgen)
endif()
# Create an imported target for component
- add_executable(Doxygen::mscgen IMPORTED GLOBAL)
- set_target_properties(Doxygen::mscgen PROPERTIES
- IMPORTED_LOCATION "${DOXYGEN_MSCGEN_EXECUTABLE}"
- )
+ if(NOT TARGET Doxygen::mscgen)
+ add_executable(Doxygen::mscgen IMPORTED GLOBAL)
+ set_target_properties(Doxygen::mscgen PROPERTIES
+ IMPORTED_LOCATION "${DOXYGEN_MSCGEN_EXECUTABLE}"
+ )
+ endif()
endif()
unset(_x86)