Doxygen document generation from cmake build

- Added support to generate doxygen documentation from cmake build.
- If doxygen is already installed on machine, it will generate 
documentation and promtps the path for documentation.

AMD-Internal: [CPUPL-3188]

Change-Id: I6047f62df63844aa71836fd481b4df246b793696
This commit is contained in:
Harsh Dave
2023-05-25 06:08:09 -05:00
parent 9c613c4c03
commit 655955dd3b
2 changed files with 81 additions and 66 deletions

View File

@@ -316,6 +316,21 @@ else()
set(rename_blis_model_type "BLIS_MODEL_TYPE")
endif()
find_package(Doxygen)
set(W_DIR "${CMAKE_CURRENT_SOURCE_DIR}/docs")
if(NOT (DOXYGEN_FOUND))
message(STATUS "Doxygen not found please install and try again.")
else()
execute_process(COMMAND doxygen Doxyfile
WORKING_DIRECTORY ${W_DIR}
COMMAND_ECHO STDOUT)
endif()
if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/docs/html/index.html)
message(STATUS "Documentation generated successfully, to view documentation open docs/html/index.html .")
else()
message(STATUS "Document generation failed.")
endif()
set(CMAKE_BUILD_TYPE ${CMAKE_CONFIGURATION_TYPES})
#print configurations

View File

@@ -63,14 +63,14 @@ PROJECT_BRIEF =
# pixels and the maximum width should not exceed 200 pixels. Doxygen will copy
# the logo to the output directory.
PROJECT_LOGO = ./docs/styling/AMD_Logo.png
PROJECT_LOGO = ./styling/AMD_Logo.png
# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path
# into which the generated documentation will be written. If a relative path is
# entered, it will be relative to the location where doxygen was started. If
# left blank the current directory will be used.
OUTPUT_DIRECTORY = ./docs
OUTPUT_DIRECTORY = ./
# If the CREATE_SUBDIRS tag is set to YES then doxygen will create up to 4096
# sub-directories (in 2 levels) under the output directory of each output format
@@ -919,7 +919,7 @@ WARN_LOGFILE =
# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING
# Note: If this tag is empty the current directory is searched.
INPUT = ./
INPUT = ../
# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
@@ -1019,63 +1019,63 @@ RECURSIVE = YES
# Note that relative paths are relative to the directory from which doxygen is
# run.
EXCLUDE = ./addon \
./aocl_dtl \
./bench \
./blastest \
./build \
./config \
./examples \
./include \
./gtestsuite \
./kernels \
./lib \
./mpi_test \
./ref_kernels \
./sandbox \
./test \
./testsuite \
./travis \
./vendor \
./windows \
./frame/0 \
./frame/1 \
./frame/1d \
./frame/1f \
./frame/1m \
./frame/2 \
./frame/3 \
./frame/base \
./frame/include \
./frame/ind \
./frame/thread \
./frame/util \
./bli_addon.h \
./bli_config.h \
./configure \
./CONTRIBUTING.md \
./INSTALL \
./LICENSE \
./Makefile \
./README.md \
./RELEASING \
./docs/Addons.md \
./docs/BLISObjectAPI.md \
./docs/BLISTypedAPI.md \
./docs/BuildSystem.md \
./docs/CodingConventions.md \
./docs/ConfigurationHowTo.md \
./docs/Doxyfile \
./docs/FAQ.md \
./docs/HardwareSupport.md \
./docs/KernelsHowTo.md \
./docs/MixedDatatypes.md \
./docs/Multithreading.md \
./docs/Performance.md \
./docs/PerformanceSmall.md \
./docs/ReleaseNotes.md \
./docs/Sandboxes.md \
./docs/Testsuite.md
EXCLUDE = ../addon \
../aocl_dtl \
../bench \
../blastest \
../build \
../config \
../examples \
../include \
../gtestsuite \
../kernels \
../lib \
../mpi_test \
../ref_kernels \
../sandbox \
../test \
../testsuite \
../travis \
../vendor \
../windows \
../frame/0 \
../frame/1 \
../frame/1d \
../frame/1f \
../frame/1m \
../frame/2 \
../frame/3 \
../frame/base \
../frame/include \
../frame/ind \
../frame/thread \
../frame/util \
../bli_addon.h \
../bli_config.h \
../configure \
../CONTRIBUTING.md \
../INSTALL \
../LICENSE \
../Makefile \
../README.md \
../RELEASING \
../docs/Addons.md \
../docs/BLISObjectAPI.md \
../docs/BLISTypedAPI.md \
../docs/BuildSystem.md \
../docs/CodingConventions.md \
../docs/ConfigurationHowTo.md \
../docs/Doxyfile \
../docs/FAQ.md \
../docs/HardwareSupport.md \
../docs/KernelsHowTo.md \
../docs/MixedDatatypes.md \
../docs/Multithreading.md \
../docs/Performance.md \
../docs/PerformanceSmall.md \
../docs/ReleaseNotes.md \
../docs/Sandboxes.md \
../docs/Testsuite.md
# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
# directories that are symbolic links (a Unix file system feature) are excluded
@@ -1388,7 +1388,7 @@ HTML_FILE_EXTENSION = .html
# of the possible markers and block names see the documentation.
# This tag requires that the tag GENERATE_HTML is set to YES.
HTML_HEADER = ./docs/styling/header.html
HTML_HEADER = ./styling/header.html
# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each
# generated HTML page. If the tag is left blank doxygen will generate a standard
@@ -1398,7 +1398,7 @@ HTML_HEADER = ./docs/styling/header.html
# that doxygen normally uses.
# This tag requires that the tag GENERATE_HTML is set to YES.
HTML_FOOTER = ./docs/styling/footer.html
HTML_FOOTER = ./styling/footer.html
# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style
# sheet that is used by each HTML page. It can be used to fine-tune the look of
@@ -1428,7 +1428,7 @@ HTML_STYLESHEET =
# documentation.
# This tag requires that the tag GENERATE_HTML is set to YES.
HTML_EXTRA_STYLESHEET = ./docs/styling/doxygen-awesome.css
HTML_EXTRA_STYLESHEET = ./styling/doxygen-awesome.css
# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
# other source files which should be copied to the HTML output directory. Note
@@ -1438,9 +1438,9 @@ HTML_EXTRA_STYLESHEET = ./docs/styling/doxygen-awesome.css
# files will be copied as-is; there are no commands or markers available.
# This tag requires that the tag GENERATE_HTML is set to YES.
HTML_EXTRA_FILES = ./docs/styling/AMD_Logo.png \
./docs/styling/doxygen-fragment-copy-button.js \
./docs/styling/doxygen-interactive-toc.js
HTML_EXTRA_FILES = ./styling/AMD_Logo.png \
./styling/doxygen-fragment-copy-button.js \
./styling/doxygen-interactive-toc.js
# The HTML_COLORSTYLE tag can be used to specify if the generated HTML output
# should be rendered with a dark or light theme.