Skip to content

Commit 0250bc3

Browse files
authored
Merge pull request #498 from SCOREC/apw/update-doxygen
Update doxygen configuration files
2 parents f56e41f + acb7b75 commit 0250bc3

File tree

3 files changed

+1450
-851
lines changed

3 files changed

+1450
-851
lines changed

CMakeLists.txt

Lines changed: 41 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -100,29 +100,6 @@ add_custom_target(check
100100
COMMAND ${CMAKE_CTEST_COMMAND} -L SMOKE_TEST
101101
COMMENT "running a smoke test on the installed binaries")
102102

103-
# Set options for doxygen documentation
104-
find_package(Doxygen)
105-
if(DOXYGEN_FOUND)
106-
configure_file(
107-
${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in
108-
${CMAKE_CURRENT_BINARY_DIR}/Doxyfile @ONLY
109-
)
110-
add_custom_target(doc
111-
${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile
112-
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
113-
COMMENT "Generating API documentation with Doxygen" VERBATIM
114-
)
115-
configure_file(
116-
${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile_internal.in
117-
${CMAKE_CURRENT_BINARY_DIR}/Doxyfile_internal @ONLY
118-
)
119-
add_custom_target(docInternal
120-
${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile_internal
121-
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
122-
COMMENT "Generating Internal API documentation with Doxygen" VERBATIM
123-
)
124-
endif()
125-
126103
set(Trilinos_PREFIX "" CACHE STRING "Trilinos installation directory")
127104

128105
option(SKIP_SIMMETRIX_VERSION_CHECK "enable at your own risk; it may result in undefined behavior" OFF)
@@ -145,11 +122,22 @@ if(ENABLE_FPP)
145122
endif()
146123

147124
macro(scorec_export_library target)
148-
bob_export_target(${target})
149-
install(FILES ${HEADERS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}")
150-
target_include_directories(${target} INTERFACE
151-
"$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>"
152-
)
125+
bob_export_target(${target})
126+
install(FILES ${HEADERS} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}")
127+
target_include_directories(${target} INTERFACE
128+
"$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>"
129+
)
130+
# Collect HEADERS for Doxygen
131+
list(TRANSFORM HEADERS
132+
PREPEND "${CMAKE_CURRENT_SOURCE_DIR}/"
133+
OUTPUT_VARIABLE ${target}_HEADERS
134+
)
135+
list(APPEND DOXYGEN_INPUTS ${${target}_HEADERS})
136+
if(NOT "${CMAKE_CURRENT_SOURCE_DIR}" STREQUAL "${CMAKE_SOURCE_DIR}")
137+
set(DOXYGEN_INPUTS "${DOXYGEN_INPUTS}" PARENT_SCOPE)
138+
list(APPEND DOXYGEN_INTERNAL_INPUTS "${CMAKE_CURRENT_SOURCE_DIR}")
139+
set(DOXYGEN_INTERNAL_INPUTS "${DOXYGEN_INTERNAL_INPUTS}" PARENT_SCOPE)
140+
endif()
153141
endmacro(scorec_export_library)
154142

155143
if(ENABLE_SIMMETRIX)
@@ -226,4 +214,29 @@ if(PUMI_PYTHON_INTERFACE)
226214
add_subdirectory(python_wrappers)
227215
endif()
228216

217+
# Set options for doxygen documentation
218+
find_package(Doxygen)
219+
if(DOXYGEN_FOUND)
220+
list(JOIN DOXYGEN_INPUTS " \\\n" DOXYGEN_INPUT)
221+
configure_file(
222+
${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in
223+
${CMAKE_CURRENT_BINARY_DIR}/Doxyfile @ONLY
224+
)
225+
add_custom_target(doc
226+
${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile
227+
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
228+
COMMENT "Generating API documentation with Doxygen" VERBATIM
229+
)
230+
list(JOIN DOXYGEN_INTERNAL_INPUTS " \\\n" DOXYGEN_INTERNAL_INPUT)
231+
configure_file(
232+
${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile_internal.in
233+
${CMAKE_CURRENT_BINARY_DIR}/Doxyfile_internal @ONLY
234+
)
235+
add_custom_target(docInternal
236+
${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile_internal
237+
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
238+
COMMENT "Generating Internal API documentation with Doxygen" VERBATIM
239+
)
240+
endif()
241+
229242
bob_end_package()

0 commit comments

Comments
 (0)