progdocs: Update Makefile.

In developer mode, use internal documentation as well.
This should produce no warnings. Fix yours!

In noisy mode, output all possible warnings of Doxygen.
This creates zillion of warnings. Double-check your current module!

Any warnings are in the file './doxygen.log'. Beside that, this change
avoids deprecated parameters because the configuration file for Doxygen
contains only those parameters which differ from the default. This
avoids the need to update the file on each run. Furthermore, it adds
AST_VECTOR to be expanded. Finally, the default name for that file is
Doxyfile. Therefore, let us use that!

ASTERISK-26991
ASTERISK-20259

Change-Id: I4129092a199d5e24c319a09cd088614b121015af
pull/24/head
Alexander Traud 3 years ago
parent f6df28ce87
commit f3b29c6aa8

@ -442,7 +442,7 @@ distclean: $(SUBDIRS_DIST_CLEAN) _clean
rm -f include/asterisk/autoconfig.h rm -f include/asterisk/autoconfig.h
rm -f include/asterisk/buildopts.h rm -f include/asterisk/buildopts.h
rm -rf doc/api rm -rf doc/api
rm -f doc/asterisk-ng-doxygen rm -f doc/Doxyfile
rm -f build_tools/menuselect-deps rm -f build_tools/menuselect-deps
datafiles: _all $(CORE_XMLDOC) datafiles: _all $(CORE_XMLDOC)
@ -891,29 +891,30 @@ webvmail:
@echo " +-------------------------------------------+" @echo " +-------------------------------------------+"
progdocs: progdocs:
# Note, Makefile conditionals must not be tabbed out. Wasted hours with that.
@cp doc/asterisk-ng-doxygen.in doc/asterisk-ng-doxygen
ifeq ($(DOXYGEN),:) ifeq ($(DOXYGEN),:)
@echo "Doxygen is not installed. Please install and re-run the configuration script." @echo "Doxygen is not installed. Please install and re-run the configuration script."
else else
@cp doc/Doxyfile.in doc/Doxyfile
ifeq ($(DOT),:) ifeq ($(DOT),:)
@echo "DOT is not installed. Doxygen will not produce any diagrams. Please install and re-run the configuration script." @echo "DOT is not installed. Doxygen will not produce any diagrams. Please install and re-run the configuration script."
else else
# Enable DOT @echo "HAVE_DOT = YES" >> doc/Doxyfile
@echo "HAVE_DOT = YES" >> doc/asterisk-ng-doxygen
endif endif
# Set Doxygen PROJECT_NUMBER variable ifneq ($(NOISY_BUILD),yes)
ifneq ($(ASTERISKVERSION),UNKNOWN__and_probably_unsupported) @echo "EXTRACT_ALL = YES" >> doc/Doxyfile
@echo "PROJECT_NUMBER = $(ASTERISKVERSION)" >> doc/asterisk-ng-doxygen endif
ifeq ($(AST_DEVMODE),yes)
@echo "INTERNAL_DOCS = YES" >> doc/Doxyfile
@echo "WARN_NO_PARAMDOC = YES" >> doc/Doxyfile
endif
ifeq ($(ASTERISKVERSION),UNKNOWN__and_probably_unsupported)
@echo "Asterisk Version is unknown, not configuring Doxygen PROJECT_NUMBER."
else else
echo "Asterisk Version is unknown, not configuring Doxygen PROJECT_NUMBER." @echo "PROJECT_NUMBER = $(ASTERISKVERSION)" >> doc/Doxyfile
endif endif
# Validate and auto-update local copy @echo "Generating C-API documentation. This will take a while."
@doxygen -u doc/asterisk-ng-doxygen @doxygen doc/Doxyfile
# Run Doxygen @echo "Generation complete. Any warnings are in ./doxygen.log."
@doxygen doc/asterisk-ng-doxygen
# Remove configuration backup file
@rm -f doc/asterisk-ng-doxygen.bak
endif endif
install-logrotate: install-logrotate:
@ -1154,6 +1155,7 @@ check-alembic: makeopts
.PHONY: uninstall-headers .PHONY: uninstall-headers
.PHONY: badshell .PHONY: badshell
.PHONY: installdirs .PHONY: installdirs
.PHONY: progdocs
.PHONY: validate-docs .PHONY: validate-docs
.PHONY: _clean .PHONY: _clean
.PHONY: ari-stubs .PHONY: ari-stubs

@ -1,10 +0,0 @@
<HTML>
<HEAD>
<TITLE>Asterisk.org: Developer Documentation ($date)</TITLE>
<LINK HREF="doxygen.css" REL="stylesheet" TYPE="text/css">
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<div><font size="2" align="right">$datetime</font></div>
<h2>Asterisk developer's documentation</h2>
<hr/>

2
doc/.gitignore vendored

@ -2,4 +2,4 @@ core-en_US.xml
full-en_US.xml full-en_US.xml
rest-api rest-api
api api
asterisk-ng-doxygen Doxyfile

@ -0,0 +1,94 @@
PROJECT_NAME = "Asterisk - The Open Source Telephony Project"
OUTPUT_DIRECTORY = doc
CREATE_SUBDIRS = YES
ABBREVIATE_BRIEF =
FULL_PATH_NAMES = NO # why? Default: YES
ALIASES = "extref=\xrefitem extref \"ExtRef\" \"External references\"" \
"AsteriskTrunkWarning=\note The information contained on this page may be out of date. To make sure you get the most current information, please make sure that you are using the documentation generated from Asterisk trunk."
OPTIMIZE_OUTPUT_FOR_C = YES
EXTRACT_STATIC = YES
HIDE_SCOPE_NAMES = YES # why? Default: NO
SORT_BRIEF_DOCS = YES
MAX_INITIALIZER_LINES = 5 # why? Default: 30
QUIET = YES
WARN_LOGFILE = doxygen.log
FILE_PATTERNS = *.c \
*.h \
*.py
RECURSIVE = YES
EXCLUDE = doc/api \
menuselect \
res/pjproject \
addons/ooh323c/src \
third-party
EXCLUDE_SYMLINKS = YES
EXCLUDE_PATTERNS = *.o \
*.o.d \
.*
EXAMPLE_PATH = . \
doc \
configs \
contrib
IMAGE_PATH = images
SOURCE_BROWSER = YES
INLINE_SOURCES = YES
STRIP_CODE_COMMENTS = NO # why? default: YES
REFERENCED_BY_RELATION = YES
REFERENCES_RELATION = YES
HTML_OUTPUT = api
HTML_TIMESTAMP = YES
GENERATE_LATEX = NO
MACRO_EXPANSION = YES
EXPAND_ONLY_PREDEF = YES
INCLUDE_PATH = ./ \
include/ \
include/asterisk/
PREDEFINED = __GNUC__ \
__attribute__(x)=
EXPAND_AS_DEFINED = AST_INLINE_API \
AST_DECLARE_STRING_FIELDS \
AST_STRING_FIELD \
AST_THREADSTORAGE \
AST_THREADSTORAGE_CUSTOM \
AST_MODULE_INFO \
AST_MODULE_INFO_STANDARD \
__AST_MUTEX_DEFINE \
AST_MUTEX_DEFINE_STATIC \
AST_MUTEX_DEFINE_STATIC_NOTRACKING \
__AST_RWLOCK_DEFINE \
AST_RWLOCK_DEFINE_STATIC \
AST_LIST_HEAD \
AST_RWLIST_HEAD \
AST_LIST_HEAD_NOLOCK \
AST_LIST_HEAD_STATIC \
AST_RWLIST_HEAD_STATIC \
AST_LIST_HEAD_NOLOCK_STATIC \
AST_LIST_ENTRY \
AST_RWLIST_ENTRY \
__ASTOBJ_HASH \
ASTOBJ_COMPONENTS_NOLOCK_FULL \
ASTOBJ_COMPONENTS_NOLOCK \
ASTOBJ_COMPONENTS_FULL \
ASTOBJ_COMPONENTS \
AST_IVR_DECLARE_MENU \
AST_DECLARE_APP_ARGS \
AST_DEFINE_APP_ARGS_TYPE \
AST_APP_ARG \
BEGIN_OPTIONS \
END_OPTIONS \
AST_APP_OPTIONS \
AST_APP_OPTION \
AST_APP_OPTION_ARG \
AST_DLLIST_HEAD \
AST_DLLIST_HEAD_STATIC \
AST_DLLIST_HEAD_NOLOCK \
AST_DLLIST_HEAD_NOLOCK_STATIC \
AST_RWDLLIST_HEAD \
AST_RWDLLIST_HEAD_STATIC \
AST_DLLIST_ENTRY \
AST_RWDLLIST_ENTRY \
AST_CLI_DEFINE \
AST_OPTIONAL_API \
AST_OPTIONAL_API_ATTR \
AST_VECTOR
TEMPLATE_RELATIONS = YES # why? Default: NO

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save