From a98d83161ec86c307cadb90943334d5290d4e0ff Mon Sep 17 00:00:00 2001 From: Joseph Hickey Date: Thu, 20 May 2021 14:40:55 -0400 Subject: [PATCH] Fix #1561, use OSAL script to generate API guide Instead of including the OSAL API guide templates and pages in the CFE repo, invoke the build script now provided in the OSAL repo itself. --- cmake/Makefile.sample | 1 - cmake/mission_build.cmake | 23 ++++------- cmake/osal-common.doxyfile.in | 78 ----------------------------------- cmake/osalguide.doxyfile.in | 18 -------- 4 files changed, 8 insertions(+), 112 deletions(-) delete mode 100644 cmake/osal-common.doxyfile.in delete mode 100644 cmake/osalguide.doxyfile.in diff --git a/cmake/Makefile.sample b/cmake/Makefile.sample index 48eddce98..62e86b48d 100644 --- a/cmake/Makefile.sample +++ b/cmake/Makefile.sample @@ -153,7 +153,6 @@ usersguide: osalguide: $(MAKE) --no-print-directory -C "$(O)" osalguide - @/bin/echo -e "\n\nOsal Users Guide: \nfile://$(CURDIR)/$(O)/doc/osalguide/html/index.html\n" # Make all the commands that use the build tree depend on a flag file # that is used to indicate the prep step has been done. This way diff --git a/cmake/mission_build.cmake b/cmake/mission_build.cmake index 72954b59c..f024f864b 100644 --- a/cmake/mission_build.cmake +++ b/cmake/mission_build.cmake @@ -269,9 +269,6 @@ function(prepare) configure_file("${CFE_SOURCE_DIR}/cmake/cfe-common.doxyfile.in" "${CMAKE_BINARY_DIR}/doc/cfe-common.doxyfile") - configure_file("${CFE_SOURCE_DIR}/cmake/osal-common.doxyfile.in" - "${CMAKE_BINARY_DIR}/doc/osal-common.doxyfile") - configure_file("${CFE_SOURCE_DIR}/cmake/mission-detaildesign.doxyfile.in" "${CMAKE_BINARY_DIR}/doc/mission-detaildesign.doxyfile") @@ -298,18 +295,9 @@ function(prepare) string(REPLACE ";" " \\\n" MISSION_USERGUIDE_HEADERFILES "${MISSION_USERGUIDE_HEADERFILES}") - # OSAL API GUIDE include PUBLIC API - file(GLOB MISSION_OSAL_HEADERFILES - "${osal_MISSION_DIR}/src/os/inc/*.h" - "${CMAKE_BINARY_DIR}/doc/osconfig-example.h") - string(REPLACE ";" " \\\n" MISSION_OSAL_HEADERFILES "${MISSION_OSAL_HEADERFILES}") - configure_file("${CFE_SOURCE_DIR}/cmake/cfe-usersguide.doxyfile.in" "${CMAKE_BINARY_DIR}/doc/cfe-usersguide.doxyfile") - configure_file("${CFE_SOURCE_DIR}/cmake/osalguide.doxyfile.in" - "${CMAKE_BINARY_DIR}/doc/osalguide.doxyfile") - add_custom_target(mission-doc doxygen mission-detaildesign.doxyfile WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/doc") @@ -318,9 +306,14 @@ function(prepare) doxygen cfe-usersguide.doxyfile WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/doc") - add_custom_target(osalguide - doxygen osalguide.doxyfile - WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/doc") + # OSAL API GUIDE include PUBLIC API + set(OSAL_API_INCLUDE_DIRECTORIES + "${osal_MISSION_DIR}/src/os/inc" + "${CMAKE_BINARY_DIR}/doc" + ) + add_subdirectory(${osal_MISSION_DIR}/doc/src ${CMAKE_BINARY_DIR}/doc/osalguide) + add_custom_target(osalguide) + add_dependencies(osalguide osal-apiguide) # Pull in any application-specific mission-scope configuration # This may include user configuration files such as cfe_mission_cfg.h, diff --git a/cmake/osal-common.doxyfile.in b/cmake/osal-common.doxyfile.in deleted file mode 100644 index c52f671fa..000000000 --- a/cmake/osal-common.doxyfile.in +++ /dev/null @@ -1,78 +0,0 @@ -#--------------------------------------------------------------------------- -# Project related configuration options, shared for all cFE doxygen outputs -#--------------------------------------------------------------------------- -@INCLUDE_PATH = @MISSION_SOURCE_DIR@ -OUTPUT_DIRECTORY = . -ABBREVIATE_BRIEF = "The $name class " \ - "The $name widget " \ - "The $name file " \ - is \ - provides \ - specifies \ - contains \ - represents \ - a \ - an \ - the -TAB_SIZE = 8 -OPTIMIZE_OUTPUT_FOR_C = YES -#--------------------------------------------------------------------------- -# Build related configuration options -#--------------------------------------------------------------------------- -EXTRACT_ALL = YES -EXTRACT_PRIVATE = YES -EXTRACT_STATIC = YES -CASE_SENSE_NAMES = NO -GENERATE_TODOLIST = NO -#--------------------------------------------------------------------------- -# configuration options related to warning and progress messages -#--------------------------------------------------------------------------- -WARN_NO_PARAMDOC = YES -WARN_LOGFILE = @CMAKE_BINARY_DIR@/doc/warnings.log -#--------------------------------------------------------------------------- -# configuration options related to the input files -#--------------------------------------------------------------------------- -STRIP_FROM_PATH = @MISSION_SOURCE_DIR@ - -# Always include a standard set of CFE documentation in the input set -# This is applicable to both users guide and detail design outputs -INPUT += @MISSION_SOURCE_DIR@/cfe/docs/src/cfs_versions.dox -INPUT += @MISSION_SOURCE_DIR@/cfe/docs/src/osal_fs.dox -INPUT += @MISSION_SOURCE_DIR@/cfe/docs/src/osal_timer.dox - -FILE_PATTERNS = *.c *.cpp *.cc *.C *.h *.hh *.hpp *.H *.dox *.md -RECURSIVE = YES -EXAMPLE_PATTERNS = * -#--------------------------------------------------------------------------- -# configuration options related to source browsing -#--------------------------------------------------------------------------- -SOURCE_BROWSER = YES -REFERENCED_BY_RELATION = YES -REFERENCES_RELATION = YES -#--------------------------------------------------------------------------- -# configuration options related to the LaTeX output -#--------------------------------------------------------------------------- -GENERATE_LATEX = NO -LATEX_CMD_NAME = latex -COMPACT_LATEX = YES -PAPER_TYPE = letter -#--------------------------------------------------------------------------- -# configuration options related to the RTF output -#--------------------------------------------------------------------------- -COMPACT_RTF = YES -#--------------------------------------------------------------------------- -# Configuration options related to the dot tool -#--------------------------------------------------------------------------- -CLASS_DIAGRAMS = NO -HAVE_DOT = YES -CLASS_GRAPH = NO -COLLABORATION_GRAPH = NO -INCLUDE_GRAPH = NO -INCLUDED_BY_GRAPH = NO -CALL_GRAPH = YES -GRAPHICAL_HIERARCHY = NO -MAX_DOT_GRAPH_DEPTH = 1000 -#--------------------------------------------------------------------------- -# Configuration::additions related to the search engine -#--------------------------------------------------------------------------- -SEARCHENGINE = NO diff --git a/cmake/osalguide.doxyfile.in b/cmake/osalguide.doxyfile.in deleted file mode 100644 index 431d8cd73..000000000 --- a/cmake/osalguide.doxyfile.in +++ /dev/null @@ -1,18 +0,0 @@ -#--------------------------------------------------------------------------- -# Doxygen Configuration options to generate the "OSAL API Guide" -#--------------------------------------------------------------------------- - -# Start with the main page so document ordering is established -INPUT += @MISSION_SOURCE_DIR@/cfe/docs/src/osalmain.dox - -# Common definitions, some of which are extended or overridden here. -@INCLUDE = @MISSION_BINARY_DIR@/doc/osal-common.doxyfile -PROJECT_NAME = "OSAL User's Guide" -OUTPUT_DIRECTORY = osalguide -GENERATE_LATEX = YES - -#PREDEFINED -PREDEFINED += @OSALGUIDE_PREDEFINED@ - -# Bring in the cFE header files for the documentation of the various API calls -INPUT += @MISSION_OSAL_HEADERFILES@