From 3769bb7dbf4d3cb85c341cd48cfc5fea903f5380 Mon Sep 17 00:00:00 2001 From: "Jonathan R. Madsen" Date: Wed, 13 Sep 2023 19:14:23 -0500 Subject: [PATCH] Minor documentation workflow updates (#53) * Document rocprofiler version defines - write doxygen for preprocessor defines - make ROCPROFILER_SOVERSION number similar to ROCPROFILER_VERSION - remove ROCPROFILER_COMPILER_STRING * Update rocprofiler.dox.in - reformatted - include rocprofiler/version.h in doxygen - tweaked dot settings, e.g. made dot SVGs non-interactive * Update scripts/update-docs.sh - configure with cmake ROCPROFILER_INTERNAL_BUILD_DOCS=ON which just generates version.h and exits * Update CMakeLists.txt - support ROCPROFILER_INTERNAL_BUILD_DOCS=ON option for generating version.h and exiting --- CMakeLists.txt | 8 + source/docs/rocprofiler.dox.in | 625 +++++++++++++----------- source/include/rocprofiler/version.h.in | 54 +- source/scripts/update-docs.sh | 6 + 4 files changed, 417 insertions(+), 276 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 56d311b870..6212b92083 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -70,6 +70,14 @@ set(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake ${PROJECT_SOURCE_DIR}/cmake/Mo include(GNUInstallDirs) # install directories set(CMAKE_INSTALL_LIBDIR "lib") # rocm doesn't use lib64 +set(ROCPROFILER_INTERNAL_BUILD_DOCS + OFF + CACHE INTERNAL "Generates rocprofiler/version.h and exits (no build targets)") +if(ROCPROFILER_INTERNAL_BUILD_DOCS) + add_subdirectory(source/include) + return() +endif() + include(rocprofiler_utilities) # various functions/macros include(rocprofiler_interfaces) # interface libraries include(rocprofiler_compilers) # compiler identification diff --git a/source/docs/rocprofiler.dox.in b/source/docs/rocprofiler.dox.in index 2d5c3c2b59..7a9b0d25cd 100644 --- a/source/docs/rocprofiler.dox.in +++ b/source/docs/rocprofiler.dox.in @@ -1,309 +1,388 @@ # Doxyfile 1.9.8 -DOXYFILE_ENCODING = UTF-8 -PROJECT_NAME = rocprofiler -PROJECT_NUMBER = @ROCPROFILER_VERSION@ -PROJECT_BRIEF = "ROCm Profiling API and tools" -PROJECT_LOGO = -OUTPUT_DIRECTORY = _doxygen -CREATE_SUBDIRS = NO -ALLOW_UNICODE_NAMES = YES -OUTPUT_LANGUAGE = English -BRIEF_MEMBER_DESC = YES -REPEAT_BRIEF = YES -ABBREVIATE_BRIEF = -ALWAYS_DETAILED_SEC = YES -INLINE_INHERITED_MEMB = YES -FULL_PATH_NAMES = YES -STRIP_FROM_PATH = @SOURCE_DIR@/source/include @SOURCE_DIR@/source/lib -STRIP_FROM_INC_PATH = @SOURCE_DIR@/source/include @SOURCE_DIR@/source/lib -SHORT_NAMES = NO -JAVADOC_AUTOBRIEF = NO -JAVADOC_BANNER = NO -QT_AUTOBRIEF = NO +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- +DOXYFILE_ENCODING = UTF-8 +PROJECT_NAME = rocprofiler +PROJECT_NUMBER = @ROCPROFILER_VERSION@ +PROJECT_BRIEF = "ROCm Profiling API and tools" +PROJECT_LOGO = +OUTPUT_DIRECTORY = _doxygen +CREATE_SUBDIRS = NO +CREATE_SUBDIRS_LEVEL = 8 +ALLOW_UNICODE_NAMES = YES +OUTPUT_LANGUAGE = English +BRIEF_MEMBER_DESC = YES +REPEAT_BRIEF = YES +ABBREVIATE_BRIEF = +ALWAYS_DETAILED_SEC = YES +INLINE_INHERITED_MEMB = YES +FULL_PATH_NAMES = YES +STRIP_FROM_PATH = @SOURCE_DIR@/source/include \ + @SOURCE_DIR@/build-docs/source/include +STRIP_FROM_INC_PATH = @SOURCE_DIR@/source/include \ + @SOURCE_DIR@/build-docs/source/include +SHORT_NAMES = NO +JAVADOC_AUTOBRIEF = NO +JAVADOC_BANNER = NO +QT_AUTOBRIEF = NO MULTILINE_CPP_IS_BRIEF = YES -PYTHON_DOCSTRING = YES -INHERIT_DOCS = YES -SEPARATE_MEMBER_PAGES = NO -TAB_SIZE = 4 -ALIASES = -OPTIMIZE_OUTPUT_FOR_C = YES -OPTIMIZE_OUTPUT_JAVA = NO -OPTIMIZE_FOR_FORTRAN = NO -OPTIMIZE_OUTPUT_VHDL = NO -OPTIMIZE_OUTPUT_SLICE = NO -EXTENSION_MAPPING = hpp=C++ cpp=C++ hh=C++ cc=C++ h=C c=C py=Python -MARKDOWN_SUPPORT = YES -TOC_INCLUDE_HEADINGS = 2 -MARKDOWN_ID_STYLE = DOXYGEN -AUTOLINK_SUPPORT = YES -BUILTIN_STL_SUPPORT = YES -CPP_CLI_SUPPORT = NO -SIP_SUPPORT = NO -IDL_PROPERTY_SUPPORT = YES -DISTRIBUTE_GROUP_DOC = NO +PYTHON_DOCSTRING = YES +INHERIT_DOCS = YES +SEPARATE_MEMBER_PAGES = NO +TAB_SIZE = 4 +ALIASES = +OPTIMIZE_OUTPUT_FOR_C = YES +OPTIMIZE_OUTPUT_JAVA = NO +OPTIMIZE_FOR_FORTRAN = NO +OPTIMIZE_OUTPUT_VHDL = NO +OPTIMIZE_OUTPUT_SLICE = NO +EXTENSION_MAPPING = hpp=C++ \ + cpp=C++ \ + hh=C++ \ + cc=C++ \ + h=C \ + c=C \ + py=Python +MARKDOWN_SUPPORT = YES +TOC_INCLUDE_HEADINGS = 2 +MARKDOWN_ID_STYLE = DOXYGEN +AUTOLINK_SUPPORT = YES +BUILTIN_STL_SUPPORT = YES +CPP_CLI_SUPPORT = NO +SIP_SUPPORT = NO +IDL_PROPERTY_SUPPORT = YES +DISTRIBUTE_GROUP_DOC = NO GROUP_NESTED_COMPOUNDS = YES -SUBGROUPING = YES +SUBGROUPING = YES INLINE_GROUPED_CLASSES = NO -INLINE_SIMPLE_STRUCTS = YES -TYPEDEF_HIDES_STRUCT = YES -LOOKUP_CACHE_SIZE = 5 -NUM_PROC_THREADS = 0 -TIMESTAMP = NO +INLINE_SIMPLE_STRUCTS = YES +TYPEDEF_HIDES_STRUCT = YES +LOOKUP_CACHE_SIZE = 5 +NUM_PROC_THREADS = 0 +TIMESTAMP = NO #--------------------------------------------------------------------------- -EXTRACT_ALL = YES -EXTRACT_PRIVATE = NO -EXTRACT_PRIV_VIRTUAL = NO -EXTRACT_PACKAGE = NO -EXTRACT_STATIC = NO -EXTRACT_LOCAL_CLASSES = YES -EXTRACT_LOCAL_METHODS = NO -EXTRACT_ANON_NSPACES = NO +# Build related configuration options +#--------------------------------------------------------------------------- +EXTRACT_ALL = YES +EXTRACT_PRIVATE = NO +EXTRACT_PRIV_VIRTUAL = NO +EXTRACT_PACKAGE = NO +EXTRACT_STATIC = NO +EXTRACT_LOCAL_CLASSES = YES +EXTRACT_LOCAL_METHODS = NO +EXTRACT_ANON_NSPACES = NO RESOLVE_UNNAMED_PARAMS = YES -HIDE_UNDOC_MEMBERS = NO -HIDE_UNDOC_CLASSES = YES -HIDE_FRIEND_COMPOUNDS = NO -HIDE_IN_BODY_DOCS = NO -INTERNAL_DOCS = NO -CASE_SENSE_NAMES = NO -HIDE_SCOPE_NAMES = NO +HIDE_UNDOC_MEMBERS = NO +HIDE_UNDOC_CLASSES = YES +HIDE_FRIEND_COMPOUNDS = NO +HIDE_IN_BODY_DOCS = NO +INTERNAL_DOCS = NO +CASE_SENSE_NAMES = NO +HIDE_SCOPE_NAMES = NO HIDE_COMPOUND_REFERENCE= NO -SHOW_HEADERFILE = YES -SHOW_INCLUDE_FILES = YES -SHOW_GROUPED_MEMB_INC = NO -FORCE_LOCAL_INCLUDES = YES -INLINE_INFO = YES -SORT_MEMBER_DOCS = YES -SORT_BRIEF_DOCS = NO +SHOW_HEADERFILE = YES +SHOW_INCLUDE_FILES = YES +SHOW_GROUPED_MEMB_INC = NO +FORCE_LOCAL_INCLUDES = YES +INLINE_INFO = YES +SORT_MEMBER_DOCS = YES +SORT_BRIEF_DOCS = NO SORT_MEMBERS_CTORS_1ST = YES -SORT_GROUP_NAMES = NO -SORT_BY_SCOPE_NAME = NO -STRICT_PROTO_MATCHING = NO -GENERATE_TODOLIST = NO -GENERATE_TESTLIST = NO -GENERATE_BUGLIST = NO +SORT_GROUP_NAMES = NO +SORT_BY_SCOPE_NAME = NO +STRICT_PROTO_MATCHING = NO +GENERATE_TODOLIST = NO +GENERATE_TESTLIST = NO +GENERATE_BUGLIST = NO GENERATE_DEPRECATEDLIST= NO -ENABLED_SECTIONS = -MAX_INITIALIZER_LINES = 30 -SHOW_USED_FILES = YES -SHOW_FILES = YES -SHOW_NAMESPACES = YES -FILE_VERSION_FILTER = -LAYOUT_FILE = -CITE_BIB_FILES = +ENABLED_SECTIONS = +MAX_INITIALIZER_LINES = 30 +SHOW_USED_FILES = YES +SHOW_FILES = YES +SHOW_NAMESPACES = YES +FILE_VERSION_FILTER = +LAYOUT_FILE = +CITE_BIB_FILES = #--------------------------------------------------------------------------- -QUIET = NO -WARNINGS = YES -WARN_IF_UNDOCUMENTED = YES -WARN_IF_DOC_ERROR = YES +# Configuration options related to warning and progress messages +#--------------------------------------------------------------------------- +QUIET = NO +WARNINGS = YES +WARN_IF_UNDOCUMENTED = YES +WARN_IF_DOC_ERROR = YES WARN_IF_INCOMPLETE_DOC = YES -WARN_NO_PARAMDOC = YES +WARN_NO_PARAMDOC = YES WARN_IF_UNDOC_ENUM_VAL = NO -WARN_AS_ERROR = YES -WARN_FORMAT = "---> WARNING! $file:$line: $text" -WARN_LINE_FORMAT = "at line $line of file $file" -# WARN_LOGFILE = doxy/warnings.log +WARN_AS_ERROR = YES +WARN_FORMAT = "---> WARNING! $file:$line: $text" +WARN_LINE_FORMAT = "at line $line of file $file" +WARN_LOGFILE = #--------------------------------------------------------------------------- -INPUT = @SOURCE_DIR@/README.md @SOURCE_DIR@/source/include/rocprofiler -INPUT_ENCODING = UTF-8 -INPUT_FILE_ENCODING = -FILE_PATTERNS = *.h *.hh *.hpp *.c *.cc *.cxx *.cpp *.c++ *.icc *.tcc conf.py -RECURSIVE = YES -EXCLUDE = -EXCLUDE_SYMLINKS = YES -EXCLUDE_PATTERNS = */.git/* @SOURCE_DIR@/samples/* @SOURCE_DIR@/**/tests/* @SOURCE_DIR@/source/include/rocprofiler/defines.h @SOURCE_DIR@/source/include/rocprofiler/config.h -EXCLUDE_SYMBOLS = "std::*" "ROCPROFILER_ATTRIBUTE" "ROCPROFILER_API" "ROCPROFILER_NONNULL" -EXAMPLE_PATH = @SOURCE_DIR@/samples -EXAMPLE_PATTERNS = *.h *.hh *.hpp *.c *.cc *.cpp conf.py *.txt -EXAMPLE_RECURSIVE = YES -IMAGE_PATH = -INPUT_FILTER = -FILTER_PATTERNS = -FILTER_SOURCE_FILES = NO +# Configuration options related to the input files +#--------------------------------------------------------------------------- +INPUT = @SOURCE_DIR@/README.md \ + @SOURCE_DIR@/source/include/rocprofiler \ + @SOURCE_DIR@/build-docs/source/include/rocprofiler/version.h +INPUT_ENCODING = UTF-8 +INPUT_FILE_ENCODING = +FILE_PATTERNS = *.h \ + *.hh \ + *.hpp \ + *.c \ + *.cc \ + *.cxx \ + *.cpp \ + *.c++ \ + *.icc \ + *.tcc \ + conf.py +RECURSIVE = YES +EXCLUDE = +EXCLUDE_SYMLINKS = YES +EXCLUDE_PATTERNS = */.git/* \ + @SOURCE_DIR@/samples/* \ + @SOURCE_DIR@/**/tests/* \ + @SOURCE_DIR@/source/include/rocprofiler/defines.h \ + @SOURCE_DIR@/source/include/rocprofiler/config.h +EXCLUDE_SYMBOLS = "std::*" \ + "ROCPROFILER_ATTRIBUTE" \ + "ROCPROFILER_API" \ + "ROCPROFILER_NONNULL" +EXAMPLE_PATH = @SOURCE_DIR@/samples +EXAMPLE_PATTERNS = *.h \ + *.hh \ + *.hpp \ + *.c \ + *.cc \ + *.cpp \ + conf.py \ + *.txt +EXAMPLE_RECURSIVE = YES +IMAGE_PATH = +INPUT_FILTER = +FILTER_PATTERNS = +FILTER_SOURCE_FILES = NO FILTER_SOURCE_PATTERNS = USE_MDFILE_AS_MAINPAGE = @SOURCE_DIR@/README.md -FORTRAN_COMMENT_AFTER = 72 +FORTRAN_COMMENT_AFTER = 72 #--------------------------------------------------------------------------- -SOURCE_BROWSER = YES -INLINE_SOURCES = YES -STRIP_CODE_COMMENTS = NO +# Configuration options related to source browsing +#--------------------------------------------------------------------------- +SOURCE_BROWSER = YES +INLINE_SOURCES = YES +STRIP_CODE_COMMENTS = NO REFERENCED_BY_RELATION = YES -REFERENCES_RELATION = YES +REFERENCES_RELATION = YES REFERENCES_LINK_SOURCE = YES -SOURCE_TOOLTIPS = YES -USE_HTAGS = NO -VERBATIM_HEADERS = YES +SOURCE_TOOLTIPS = YES +USE_HTAGS = NO +VERBATIM_HEADERS = YES #--------------------------------------------------------------------------- -ALPHABETICAL_INDEX = YES -IGNORE_PREFIX = +# Configuration options related to the alphabetical class index #--------------------------------------------------------------------------- -GENERATE_HTML = YES -HTML_OUTPUT = html -HTML_FILE_EXTENSION = .html -HTML_HEADER = -HTML_FOOTER = -HTML_STYLESHEET = -HTML_EXTRA_STYLESHEET = ../../external/doxygen-awesome-css/doxygen-awesome.css -HTML_EXTRA_FILES = -HTML_COLORSTYLE = LIGHT -HTML_COLORSTYLE_HUE = 220 -HTML_COLORSTYLE_SAT = 100 -HTML_COLORSTYLE_GAMMA = 80 -HTML_DYNAMIC_MENUS = YES -HTML_DYNAMIC_SECTIONS = YES -HTML_CODE_FOLDING = YES +ALPHABETICAL_INDEX = YES +IGNORE_PREFIX = +#--------------------------------------------------------------------------- +# Configuration options related to the HTML output +#--------------------------------------------------------------------------- +GENERATE_HTML = YES +HTML_OUTPUT = html +HTML_FILE_EXTENSION = .html +HTML_HEADER = +HTML_FOOTER = +HTML_STYLESHEET = +HTML_EXTRA_STYLESHEET = ../../external/doxygen-awesome-css/doxygen-awesome.css +HTML_EXTRA_FILES = +HTML_COLORSTYLE = LIGHT +HTML_COLORSTYLE_HUE = 220 +HTML_COLORSTYLE_SAT = 100 +HTML_COLORSTYLE_GAMMA = 80 +HTML_DYNAMIC_MENUS = YES +HTML_DYNAMIC_SECTIONS = YES +HTML_CODE_FOLDING = YES HTML_INDEX_NUM_ENTRIES = 1000 -GENERATE_DOCSET = NO -DOCSET_FEEDNAME = "Doxygen generated docs" -DOCSET_FEEDURL = -DOCSET_BUNDLE_ID = org.doxygen.rocprofiler -DOCSET_PUBLISHER_ID = org.doxygen.amd -DOCSET_PUBLISHER_NAME = "AMD ROCm Developer Tools" -GENERATE_HTMLHELP = NO -CHM_FILE = -HHC_LOCATION = -GENERATE_CHI = NO -CHM_INDEX_ENCODING = -BINARY_TOC = NO -TOC_EXPAND = YES -SITEMAP_URL = -GENERATE_QHP = NO -QCH_FILE = -QHP_NAMESPACE = -QHP_VIRTUAL_FOLDER = doxy -QHP_CUST_FILTER_NAME = -QHP_CUST_FILTER_ATTRS = -QHP_SECT_FILTER_ATTRS = -QHG_LOCATION = -GENERATE_ECLIPSEHELP = NO -ECLIPSE_DOC_ID = org.doxygen.rocprofiler -DISABLE_INDEX = NO -GENERATE_TREEVIEW = YES -FULL_SIDEBAR = NO -ENUM_VALUES_PER_LINE = 1 -TREEVIEW_WIDTH = 300 -EXT_LINKS_IN_WINDOW = YES -OBFUSCATE_EMAILS = YES -HTML_FORMULA_FORMAT = png -FORMULA_FONTSIZE = 12 -FORMULA_MACROFILE = -USE_MATHJAX = NO -MATHJAX_VERSION = MathJax_2 -MATHJAX_FORMAT = HTML-CSS -MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest -MATHJAX_EXTENSIONS = -MATHJAX_CODEFILE = -SEARCHENGINE = NO -SERVER_BASED_SEARCH = NO -EXTERNAL_SEARCH = NO -SEARCHENGINE_URL = -SEARCHDATA_FILE = searchdata.xml -EXTERNAL_SEARCH_ID = -EXTRA_SEARCH_MAPPINGS = +GENERATE_DOCSET = NO +DOCSET_FEEDNAME = "Doxygen generated docs" +DOCSET_FEEDURL = +DOCSET_BUNDLE_ID = org.doxygen.rocprofiler +DOCSET_PUBLISHER_ID = org.doxygen.amd +DOCSET_PUBLISHER_NAME = "AMD ROCm Developer Tools" +GENERATE_HTMLHELP = NO +CHM_FILE = +HHC_LOCATION = +GENERATE_CHI = NO +CHM_INDEX_ENCODING = +BINARY_TOC = NO +TOC_EXPAND = YES +SITEMAP_URL = +GENERATE_QHP = NO +QCH_FILE = +QHP_NAMESPACE = +QHP_VIRTUAL_FOLDER = doxy +QHP_CUST_FILTER_NAME = +QHP_CUST_FILTER_ATTRS = +QHP_SECT_FILTER_ATTRS = +QHG_LOCATION = +GENERATE_ECLIPSEHELP = NO +ECLIPSE_DOC_ID = org.doxygen.rocprofiler +DISABLE_INDEX = NO +GENERATE_TREEVIEW = YES +FULL_SIDEBAR = NO +ENUM_VALUES_PER_LINE = 1 +TREEVIEW_WIDTH = 300 +EXT_LINKS_IN_WINDOW = YES +OBFUSCATE_EMAILS = YES +HTML_FORMULA_FORMAT = png +FORMULA_FONTSIZE = 12 +FORMULA_MACROFILE = +USE_MATHJAX = NO +MATHJAX_VERSION = MathJax_2 +MATHJAX_FORMAT = HTML-CSS +MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest +MATHJAX_EXTENSIONS = +MATHJAX_CODEFILE = +SEARCHENGINE = NO +SERVER_BASED_SEARCH = NO +EXTERNAL_SEARCH = NO +SEARCHENGINE_URL = +SEARCHDATA_FILE = searchdata.xml +EXTERNAL_SEARCH_ID = +EXTRA_SEARCH_MAPPINGS = #--------------------------------------------------------------------------- -GENERATE_LATEX = NO -LATEX_OUTPUT = latex -LATEX_CMD_NAME = latex -MAKEINDEX_CMD_NAME = makeindex -LATEX_MAKEINDEX_CMD = makeindex -COMPACT_LATEX = NO -PAPER_TYPE = -EXTRA_PACKAGES = float -LATEX_HEADER = -LATEX_FOOTER = +# Configuration options related to the LaTeX output +#--------------------------------------------------------------------------- +GENERATE_LATEX = NO +LATEX_OUTPUT = latex +LATEX_CMD_NAME = latex +MAKEINDEX_CMD_NAME = makeindex +LATEX_MAKEINDEX_CMD = makeindex +COMPACT_LATEX = NO +PAPER_TYPE = +EXTRA_PACKAGES = float +LATEX_HEADER = +LATEX_FOOTER = LATEX_EXTRA_STYLESHEET = -LATEX_EXTRA_FILES = -PDF_HYPERLINKS = YES -USE_PDFLATEX = YES -LATEX_BATCHMODE = YES -LATEX_HIDE_INDICES = NO -LATEX_BIB_STYLE = plain -LATEX_EMOJI_DIRECTORY = +LATEX_EXTRA_FILES = +PDF_HYPERLINKS = YES +USE_PDFLATEX = YES +LATEX_BATCHMODE = YES +LATEX_HIDE_INDICES = NO +LATEX_BIB_STYLE = plain +LATEX_EMOJI_DIRECTORY = #--------------------------------------------------------------------------- -GENERATE_RTF = NO -RTF_OUTPUT = rtf -COMPACT_RTF = NO -RTF_HYPERLINKS = NO -RTF_STYLESHEET_FILE = -RTF_EXTENSIONS_FILE = +# Configuration options related to the RTF output #--------------------------------------------------------------------------- -GENERATE_MAN = NO -MAN_OUTPUT = man -MAN_EXTENSION = .3 -MAN_SUBDIR = -MAN_LINKS = YES +GENERATE_RTF = NO +RTF_OUTPUT = rtf +COMPACT_RTF = NO +RTF_HYPERLINKS = NO +RTF_STYLESHEET_FILE = +RTF_EXTENSIONS_FILE = #--------------------------------------------------------------------------- -GENERATE_XML = NO -XML_OUTPUT = xml -XML_PROGRAMLISTING = YES +# Configuration options related to the man page output +#--------------------------------------------------------------------------- +GENERATE_MAN = NO +MAN_OUTPUT = man +MAN_EXTENSION = .3 +MAN_SUBDIR = +MAN_LINKS = YES +#--------------------------------------------------------------------------- +# Configuration options related to the XML output +#--------------------------------------------------------------------------- +GENERATE_XML = NO +XML_OUTPUT = xml +XML_PROGRAMLISTING = YES XML_NS_MEMB_FILE_SCOPE = YES #--------------------------------------------------------------------------- -GENERATE_DOCBOOK = NO -DOCBOOK_OUTPUT = docbook +# Configuration options related to the DOCBOOK output #--------------------------------------------------------------------------- -GENERATE_AUTOGEN_DEF = NO +GENERATE_DOCBOOK = NO +DOCBOOK_OUTPUT = docbook #--------------------------------------------------------------------------- -GENERATE_SQLITE3 = NO -SQLITE3_OUTPUT = sqlite3 -SQLITE3_RECREATE_DB = YES +# Configuration options for the AutoGen Definitions output #--------------------------------------------------------------------------- -GENERATE_PERLMOD = NO -PERLMOD_LATEX = NO -PERLMOD_PRETTY = YES +GENERATE_AUTOGEN_DEF = NO +#--------------------------------------------------------------------------- +# Configuration options related to Sqlite3 output +#--------------------------------------------------------------------------- +GENERATE_SQLITE3 = NO +SQLITE3_OUTPUT = sqlite3 +SQLITE3_RECREATE_DB = YES +#--------------------------------------------------------------------------- +# Configuration options related to the Perl module output +#--------------------------------------------------------------------------- +GENERATE_PERLMOD = NO +PERLMOD_LATEX = NO +PERLMOD_PRETTY = YES PERLMOD_MAKEVAR_PREFIX = #--------------------------------------------------------------------------- -ENABLE_PREPROCESSING = YES -MACRO_EXPANSION = YES -EXPAND_ONLY_PREDEF = NO -SEARCH_INCLUDES = NO -INCLUDE_PATH = @SOURCE_DIR@/source/include -INCLUDE_FILE_PATTERNS = *.h -PREDEFINED = "ROCPROFILER_API=" "ROCPROFILER_EXPORT=" "ROCPROFILER_IMPORT=" "ROCPROFILER_NONNULL(...)=" "__attribute__(x)=" "__declspec(x)=" "size_t=unsigned long" "uintptr_t=unsigned long" "DOXYGEN_SHOULD_SKIP_THIS=1" -EXPAND_AS_DEFINED = -SKIP_FUNCTION_MACROS = NO +# Configuration options related to the preprocessor #--------------------------------------------------------------------------- -TAGFILES = -GENERATE_TAGFILE = _doxygen/tagfile.xml -ALLEXTERNALS = NO -EXTERNAL_GROUPS = YES -EXTERNAL_PAGES = YES +ENABLE_PREPROCESSING = YES +MACRO_EXPANSION = YES +EXPAND_ONLY_PREDEF = NO +SEARCH_INCLUDES = NO +INCLUDE_PATH = @SOURCE_DIR@/source/include +INCLUDE_FILE_PATTERNS = *.h +PREDEFINED = "ROCPROFILER_API=" \ + "ROCPROFILER_EXPORT=" \ + "ROCPROFILER_IMPORT=" \ + "ROCPROFILER_NONNULL(...)=" \ + "__attribute__(x)=" \ + "__declspec(x)=" \ + "size_t=unsigned long" \ + "uintptr_t=unsigned long" \ + "DOXYGEN_SHOULD_SKIP_THIS=1" +EXPAND_AS_DEFINED = +SKIP_FUNCTION_MACROS = NO #--------------------------------------------------------------------------- -HIDE_UNDOC_RELATIONS = NO -HAVE_DOT = YES -DOT_NUM_THREADS = 0 -DOT_COMMON_ATTR = "fontname=Helvetica,fontsize=12" -DOT_EDGE_ATTR = "labelfontname=Helvetica,labelfontsize=12" -DOT_NODE_ATTR = "shape=box,height=0.2,width=0.4" -DOT_FONTPATH = -CLASS_GRAPH = NO -COLLABORATION_GRAPH = YES -GROUP_GRAPHS = YES -UML_LOOK = YES -UML_LIMIT_NUM_FIELDS = 10 -DOT_UML_DETAILS = NO -DOT_WRAP_THRESHOLD = 17 -TEMPLATE_RELATIONS = YES -INCLUDE_GRAPH = YES -INCLUDED_BY_GRAPH = YES -CALL_GRAPH = NO -CALLER_GRAPH = NO -GRAPHICAL_HIERARCHY = YES -DIRECTORY_GRAPH = YES -DIR_GRAPH_MAX_DEPTH = 1 -DOT_IMAGE_FORMAT = svg -INTERACTIVE_SVG = YES -DOT_PATH = @DOT_EXECUTABLE@ -DOTFILE_DIRS = -DIA_PATH = -DIAFILE_DIRS = -PLANTUML_JAR_PATH = -PLANTUML_CFG_FILE = -PLANTUML_INCLUDE_PATH = -DOT_GRAPH_MAX_NODES = 50 -MAX_DOT_GRAPH_DEPTH = 0 -DOT_MULTI_TARGETS = YES -GENERATE_LEGEND = YES -# -DOT_CLEANUP = YES -MSCGEN_TOOL = -MSCFILE_DIRS = +# Configuration options related to external references +#--------------------------------------------------------------------------- +TAGFILES = +GENERATE_TAGFILE = _doxygen/tagfile.xml +ALLEXTERNALS = NO +EXTERNAL_GROUPS = YES +EXTERNAL_PAGES = YES +#--------------------------------------------------------------------------- +# Configuration options related to diagram generator tools +#--------------------------------------------------------------------------- +HIDE_UNDOC_RELATIONS = NO +HAVE_DOT = YES +DOT_NUM_THREADS = 0 +DOT_COMMON_ATTR = "fontname=Helvetica,fontsize=12" +DOT_EDGE_ATTR = "labelfontname=Helvetica,labelfontsize=12" +DOT_NODE_ATTR = "shape=box,height=0.2,width=0.4" +DOT_FONTPATH = +CLASS_GRAPH = YES +COLLABORATION_GRAPH = YES +GROUP_GRAPHS = YES +UML_LOOK = YES +UML_LIMIT_NUM_FIELDS = 10 +DOT_UML_DETAILS = YES +DOT_WRAP_THRESHOLD = 17 +TEMPLATE_RELATIONS = YES +INCLUDE_GRAPH = YES +INCLUDED_BY_GRAPH = YES +CALL_GRAPH = YES +CALLER_GRAPH = YES +GRAPHICAL_HIERARCHY = YES +DIRECTORY_GRAPH = YES +DIR_GRAPH_MAX_DEPTH = 1 +DOT_IMAGE_FORMAT = svg +INTERACTIVE_SVG = NO +DOT_PATH = @DOT_EXECUTABLE@ +DOTFILE_DIRS = +DIA_PATH = +DIAFILE_DIRS = +PLANTUML_JAR_PATH = +PLANTUML_CFG_FILE = +PLANTUML_INCLUDE_PATH = +DOT_GRAPH_MAX_NODES = 50 +MAX_DOT_GRAPH_DEPTH = 0 +DOT_MULTI_TARGETS = YES +GENERATE_LEGEND = YES +DOT_CLEANUP = YES +MSCGEN_TOOL = +MSCFILE_DIRS = diff --git a/source/include/rocprofiler/version.h.in b/source/include/rocprofiler/version.h.in index 76f4cf2683..5e190c7fb1 100644 --- a/source/include/rocprofiler/version.h.in +++ b/source/include/rocprofiler/version.h.in @@ -32,14 +32,64 @@ * @brief The minor version of the interface as a macro so it can be used * by the preprocessor. * @addtogroup VERSIONING_GROUP + * + * @def ROCPROFILER_VERSION_PATCH + * @brief The patch version of the interface as a macro so it can be used + * by the preprocessor. + * @addtogroup VERSIONING_GROUP + * + * @def ROCPROFILER_VERSION + * @brief Numerically increasing version number encoding major, minor, and patch via + computing `((10000 * ) + (100 * ) + )`. + * @addtogroup VERSIONING_GROUP + * + * @def ROCPROFILER_SOVERSION + * @brief Shared object versioning value whose value is at least `(10000 * )`. + * @addtogroup VERSIONING_GROUP + * + * @def ROCPROFILER_VERSION_STRING + * @brief Version string in form: `..`. + * @addtogroup VERSIONING_GROUP + * + * @def ROCPROFILER_GIT_DESCRIBE + * @brief String encoding of `git describe --tags` when rocprofiler was built. + * @addtogroup VERSIONING_GROUP + * + * @def ROCPROFILER_GIT_REVISION + * @brief String encoding of `git rev-parse HEAD` when rocprofiler was built. + * @addtogroup VERSIONING_GROUP + * + * @def ROCPROFILER_LIBRARY_ARCH + * @brief Architecture triplet of rocprofiler build. + * @addtogroup VERSIONING_GROUP + * + * @def ROCPROFILER_SYSTEM_NAME + * @brief Target operating system for rocprofiler build, e.g. Linux. + * @addtogroup VERSIONING_GROUP + * + * @def ROCPROFILER_SYSTEM_PROCESSOR + * @brief Target architecture for rocprofiler build. + * @addtogroup VERSIONING_GROUP + * + * @def ROCPROFILER_SYSTEM_VERSION + * @brief Version of the operating system which built rocprofiler + * @addtogroup VERSIONING_GROUP + * + * @def ROCPROFILER_COMPILER_ID + * @brief C++ compiler identifier which built rocprofiler, e.g., GNU + * @addtogroup VERSIONING_GROUP + * + * @def ROCPROFILER_COMPILER_VERSION + * @brief C++ compiler version which built rocprofiler + * @addtogroup VERSIONING_GROUP */ // clang-format off #define ROCPROFILER_VERSION_MAJOR @PROJECT_VERSION_MAJOR@ #define ROCPROFILER_VERSION_MINOR @PROJECT_VERSION_MINOR@ #define ROCPROFILER_VERSION_PATCH @PROJECT_VERSION_PATCH@ +#define ROCPROFILER_SOVERSION (10000 * @PROJECT_VERSION_MAJOR@) #define ROCPROFILER_VERSION_STRING "@FULL_VERSION_STRING@" -#define ROCPROFILER_SOVERSION "@PROJECT_VERSION_MAJOR@" #define ROCPROFILER_GIT_DESCRIBE "@ROCPROFILER_GIT_DESCRIBE@" #define ROCPROFILER_GIT_REVISION "@ROCPROFILER_GIT_REVISION@" @@ -57,8 +107,6 @@ #define ROCPROFILER_HSA_RUNTIME_VERSION_MINOR @HSA_RUNTIME_VERSION_MINOR@ // clang-format on -#define ROCPROFILER_COMPILER_STRING ROCPROFILER_COMPILER_ID " v" ROCPROFILER_COMPILER_VERSION - #define ROCPROFILER_VERSION \ ((10000 * ROCPROFILER_VERSION_MAJOR) + (100 * ROCPROFILER_VERSION_MINOR) + \ ROCPROFILER_VERSION_PATCH) diff --git a/source/scripts/update-docs.sh b/source/scripts/update-docs.sh index c2d817adfc..090742c273 100755 --- a/source/scripts/update-docs.sh +++ b/source/scripts/update-docs.sh @@ -11,6 +11,12 @@ SOURCE_DIR=$(cd ${WORK_DIR}/../.. &> /dev/null && pwd) message "Working directory is ${WORK_DIR}" message "Source directory is ${SOURCE_DIR}" +message "Changing directory to ${SOURCE_DIR}" +cd ${SOURCE_DIR} + +message "Configurating cmake..." +cmake -B build-docs ${SOURCE_DIR} -DROCPROFILER_INTERNAL_BUILD_DOCS=ON + message "Changing directory to ${WORK_DIR}" cd ${WORK_DIR}