Commit f1d6ab7c authored by dimitri's avatar dimitri

Release-1.8.3.1-20130209

parent 0c3ef4a7
DOXYGEN Version 1.8.3.1
DOXYGEN Version 1.8.3.1-20130209
Please read the installation section of the manual
(http://www.doxygen.org/install.html) for instructions.
--------
Dimitri van Heesch (20 January 2013)
Dimitri van Heesch (09 February 2013)
DOXYGEN Version 1.8.3.1
DOXYGEN Version 1.8.3.1_20130209
Please read INSTALL for compilation instructions.
......@@ -26,4 +26,4 @@ forum.
Enjoy,
Dimitri van Heesch (dimitri@stack.nl) (20 January 2013)
Dimitri van Heesch (dimitri@stack.nl) (09 February 2013)
......@@ -3,7 +3,7 @@
* $Id$
*
*
* Copyright (C) 1997-2006 by Dimitri van Heesch.
* Copyright (C) 1997-2013 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
......
......@@ -3,7 +3,7 @@
* $Id$
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
* Copyright (C) 1997-2013 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
......
......@@ -3,7 +3,7 @@
* $Id$
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
* Copyright (C) 1997-2013 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
......
......@@ -3,7 +3,7 @@
* $Id$
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
* Copyright (C) 1997-2013 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
......
......@@ -3,7 +3,7 @@
* $Id$
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
* Copyright (C) 1997-2013 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
......
......@@ -3,7 +3,7 @@
* $Id$
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
* Copyright (C) 1997-2013 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
......
......@@ -3,7 +3,7 @@
* $Id$
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
* Copyright (C) 1997-2013 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
......
......@@ -3,7 +3,7 @@
* $Id$
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
* Copyright (C) 1997-2013 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
......
......@@ -3,7 +3,7 @@
* $Id$
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
* Copyright (C) 1997-2013 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
......
......@@ -3,7 +3,7 @@
* $Id$
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
* Copyright (C) 1997-2013 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
......
......@@ -3,7 +3,7 @@
* $Id$
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
* Copyright (C) 1997-2013 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
......
......@@ -3,7 +3,7 @@
* $Id$
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
* Copyright (C) 1997-2013 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
......
......@@ -3,7 +3,7 @@
* $Id$
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
* Copyright (C) 1997-2013 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
......
......@@ -3,7 +3,7 @@
* $Id$
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
* Copyright (C) 1997-2013 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
......
......@@ -3,7 +3,7 @@
* $Id$
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
* Copyright (C) 1997-2013 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
......
......@@ -3,7 +3,7 @@
* $Id$
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
* Copyright (C) 1997-2013 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
......
......@@ -3,7 +3,7 @@
* $Id$
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
* Copyright (C) 1997-2013 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
......
......@@ -3,7 +3,7 @@
* $Id$
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
* Copyright (C) 1997-2013 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
......
......@@ -3,7 +3,7 @@
* $Id$
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
* Copyright (C) 1997-2013 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
......
......@@ -6,12 +6,12 @@ distclean: clean
$(RM) -rf Makefile doxyapp.pro Makefile.doxyapp
tmake:
$(ENV) $(PERL) $(TMAKE) doxyapp.pro >Makefile.doxyapp
$(ENV) $(PERL) "$(TMAKE)" doxyapp.pro >Makefile.doxyapp
strip:
strip doxyapp
Makefile.doxyapp: doxyapp.pro
$(ENV) $(PERL) $(TMAKE) doxyapp.pro >Makefile.doxyapp
$(ENV) $(PERL) "$(TMAKE)" doxyapp.pro >Makefile.doxyapp
install:
......@@ -8,17 +8,17 @@ distclean: clean
$(RM) -rf Makefile doxyindexer.pro Makefile.doxyindexer
tmake:
$(ENV) $(PERL) $(TMAKE) doxysearch.pro >Makefile.doxysearch
$(ENV) $(PERL) $(TMAKE) doxyindexer.pro >Makefile.doxyindexer
$(ENV) $(PERL) "$(TMAKE)" doxysearch.pro >Makefile.doxysearch
$(ENV) $(PERL) "$(TMAKE)" doxyindexer.pro >Makefile.doxyindexer
strip:
strip doxysearch
Makefile.doxysearch: doxysearch.pro
$(ENV) $(PERL) $(TMAKE) doxysearch.pro >Makefile.doxysearch
$(ENV) $(PERL) "$(TMAKE)" doxysearch.pro >Makefile.doxysearch
Makefile.doxyindexer: doxyindexer.pro
$(ENV) $(PERL) $(TMAKE) doxyindexer.pro >Makefile.doxyindexer
$(ENV) $(PERL) "$(TMAKE)" doxyindexer.pro >Makefile.doxyindexer
install:
$(INSTTOOL) -d $(INSTALL)/bin
......
......@@ -2,7 +2,7 @@ TEMPLATE = app.t
CONFIG = console warn_on static release
HEADERS =
SOURCES = doxyindexer.cpp
LIBS += -lxapian -lqtools -L../../lib
LIBS += -L../../lib -lxapian -lqtools
DESTDIR =
OBJECTS_DIR = ../../objects
TARGET = ../../bin/doxyindexer
......
......@@ -2,7 +2,7 @@
#
# $Id$
#
# Copyright (C) 1997-2012 by Dimitri van Heesch.
# Copyright (C) 1997-2013 by Dimitri van Heesch.
#
# Permission to use, copy, modify, and distribute this software and its
# documentation under the terms of the GNU General Public License is hereby
......@@ -20,7 +20,7 @@ doxygen_version_minor=8
doxygen_version_revision=3.1
#NOTE: Setting version_mmn to "NO" will omit mmn info from the package.
doxygen_version_mmn=NO
doxygen_version_mmn=20130209
bin_dirs=`echo $PATH | sed -e "s/:/ /g"`
......@@ -40,6 +40,7 @@ f_flex=NO
f_bison=NO
f_search=NO
f_langs=nl,sv,cz,fr,id,it,de,jp,je,es,fi,ru,hr,pl,pt,hu,kr,ke,ro,si,cn,no,mk,br,dk,sk,ua,gr,tw,sr,ca,lt,za,ar,fa,sc,vi,tr,eo,am
f_sqlite3=NO
while test -n "$1"; do
case $1 in
......@@ -97,6 +98,9 @@ while test -n "$1"; do
--with-doxysearch | -with-doxysearch)
f_search=YES
;;
--with-sqlite3 | -with-sqlite3)
f_sqlite3=YES
;;
-h | -help | --help)
f_help=y
;;
......@@ -114,7 +118,7 @@ if test "$f_help" = y; then
Usage: $0 [--help] [--shared] [--static] [--release] [--debug]
[--perl name] [--flex name] [--bison name] [--make name]
[--dot name] [--platform target] [--prefix dir] [--docdir dir]
[--install name] [--english-only] [--enable-langs list]
[--install name] [--english-only] [--enable-langs list] [--with-sqlite3]
[--with-doxywizard] [--with-doxysearch] [--with-doxyapp]
Options:
......@@ -147,6 +151,7 @@ Options:
--english-only Include support for English only.
--enable-langs list Include support for output languages listed in list.
[default: $f_langs]
--with-sqlite3 Add support for sqlite3 output [experimental]
--with-doxywizard Build the GUI frontend for doxygen. This
requires Qt version 4.
--with-doxysearch Build external search tools (doxysearch and doxyindexer)
......@@ -400,6 +405,41 @@ else
echo "using $f_dot"
fi
# - check for sqlite3 ---------------------------------------------------------
if test "$f_sqlite3" = YES; then
echo -n " Checking for sqlite3 ... "
sqlite3_hdr_dir="/usr/include /usr/local/include /opt/local/include"
sqlite3_lib_dir="/usr/lib /usr/local/lib /opt/local/lib"
sqlite3_lib_name="libsqlite3.so libsqlite3.dylib libsqlite3.a"
sqlite3_hdr=NO
sqlite3_lib=NO
sqlite3_link=
for j in $sqlite3_hdr_dir; do
if test -f "$j/sqlite3.h"; then
sqlite3_hdr="$j/sqlite3.h"
break
fi
done
for i in $sqlite3_lib_dir; do
if test "$sqlite3_lib" = NO; then
for j in $sqlite3_lib_name; do
if test -f "$i/$j"; then
sqlite3_lib="$i/$j"
sqlite3_link="-L $i -lsqlite3"
break
fi
done
fi
done
if test "$sqlite3_hdr" = NO -o "$sqlite3_lib" = NO; then
echo "not found!";
else
echo "using header $sqlite3_hdr and library $sqlite3_lib...";
fi
fi
# - check for perl ------------------------------------------------------------
echo -n " Checking for perl... "
......@@ -502,7 +542,7 @@ configPWD=`pwd`
cat > .makeconfig <<EOF
DOXYGEN = $configPWD
TMAKEPATH = $configPWD/tmake/lib/$f_platform
ENV = env TMAKEPATH=\$(TMAKEPATH)
ENV = env TMAKEPATH="\$(TMAKEPATH)"
TMAKE = $configPWD/tmake/bin/tmake
MAKE = $f_make
PERL = $f_perl
......@@ -522,6 +562,7 @@ HAVE_DOT = $f_dot
EOF
fi
if test "$f_platform" = "m68k-atari-mint-g++"; then
cat >> .makeconfig <<EOF
TMAKE += -unix
......@@ -698,7 +739,7 @@ EOF
#if test "$f_thread" = YES; then
# realopts="$realopts thread"
#fi
cat $SRC .tmakeconfig | sed -e "s/\$extraopts/$realopts/g" >> $DST
cat $SRC .tmakeconfig | sed -e "s/\$extraopts/$realopts/g" -e "s;%%SQLITE3_LIBS%%;$sqlite3_link;g" >> $DST
echo " Created $DST from $SRC..."
done
......@@ -707,7 +748,7 @@ done
if test -f "src/lang_cfg.h"; then
chmod u+w src/lang_cfg.h # make sure file can be overwritten
fi
echo -n " Generating src/lang_cfg.h..."
echo " Generating src/lang_cfg.h..."
echo $f_langs | $f_perl -e '@l=split(/,/,<STDIN>);
chomp @l;
@allowed=(split(/,/,"NL,SV,CZ,FR,ID,IT,DE,JP,JE,ES,FI,RU,HR,PL,PT,HU,KR,KE,RO,SI,CN,NO,MK,BR,DK,SK,UA,GR,TW,SR,CA,LT,ZA,AR,FA,SC,VI,TR,EO,AM"));
......@@ -720,4 +761,17 @@ echo $f_langs | $f_perl -e '@l=split(/,/,<STDIN>);
if ($r!=1) { die "ERROR: Invalid language $elem was selected!\n"; }
print "#define LANG_$elem\n";
};' > ./src/lang_cfg.h
if test -f "src/config.h"; then
chmod u+w src/config.h
fi
echo " Generating src/settings.h..."
echo "#ifndef SETTINGS_H" > src/settings.h
echo "#define SETTINGS_H" >> src/settings.h
if test "$f_sqlite3" != NO; then
echo "#define USE_SQLITE3 1" >> src/settings.h
else
echo "#define USE_SQLITE3 0" >> src/settings.h
fi
echo "#endif" >> src/settings.h
echo
......@@ -65,6 +65,7 @@ documentation:
\refitem cmddeprecated \\deprecated
\refitem cmddetails \\details
\refitem cmddir \\dir
\refitem cmddocbookonly \\docbookonly
\refitem cmddontinclude \\dontinclude
\refitem cmddot \\dot
\refitem cmddotfile \\dotfile
......@@ -74,6 +75,7 @@ documentation:
\refitem cmdem \\em
\refitem cmdendcode \\endcode
\refitem cmdendcond \\endcond
\refitem cmdenddocbookonly \\enddocbookonly
\refitem cmdenddot \\enddot
\refitem cmdendhtmlonly \\endhtmlonly
\refitem cmdendif \\endif
......@@ -2275,6 +2277,14 @@ only copy the brief description, not the detailed documentation.
Works in a similar way as \ref cmdcopydoc "\\copydoc" but will
only copy the detailed documentation, not the brief description.
<hr>
\section cmddocbookonly \\docbookonly
\addindex \\docbookonly
Starts a block of text that will be verbatim included in the
generated docbook documentation only. The block ends with a
\ref cmdenddocbookonly "\\enddocbookonly" command.
<hr>
\section cmddot \\dot
......@@ -2440,6 +2450,14 @@ class Receiver
Ends a block of code.
\sa section \ref cmdcode "\\code"
<hr>
\section cmdenddocbookonly \\enddocbookonly
\addindex \\enddocbookonly
Ends a block of text that was started with a \\docbookonly command.
\sa section \ref cmddocbookonly "\\docbookonly".
<hr>
\section cmdenddot \\enddot
......
......@@ -82,6 +82,7 @@ followed by the descriptions of the tags grouped by category.
\refitem cfg_directory_graph DIRECTORY_GRAPH
\refitem cfg_disable_index DISABLE_INDEX
\refitem cfg_distribute_group_doc DISTRIBUTE_GROUP_DOC
\refitem cfg_docbook_output DOCBOOK_OUTPUT
\refitem cfg_docset_bundle_id DOCSET_BUNDLE_ID
\refitem cfg_docset_feedname DOCSET_FEEDNAME
\refitem cfg_docset_publisher_id DOCSET_PUBLISHER_ID
......@@ -114,6 +115,7 @@ followed by the descriptions of the tags grouped by category.
\refitem cfg_ext_links_in_window EXT_LINKS_IN_WINDOW
\refitem cfg_extension_mapping EXTENSION_MAPPING
\refitem cfg_external_groups EXTERNAL_GROUPS
\refitem cfg_external_pages EXTERNAL_PAGES
\refitem cfg_external_search EXTERNAL_SEARCH
\refitem cfg_external_search_id EXTERNAL_SEARCH_ID
\refitem cfg_extra_packages EXTRA_PACKAGES
......@@ -137,6 +139,7 @@ followed by the descriptions of the tags grouped by category.
\refitem cfg_generate_buglist GENERATE_BUGLIST
\refitem cfg_generate_chi GENERATE_CHI
\refitem cfg_generate_deprecatedlist GENERATE_DEPRECIATEDLIST
\refitem cfg_generate_docbook GENERATE_DOCBOOK
\refitem cfg_generate_docset GENERATE_DOCSET
\refitem cfg_generate_eclipsehelp GENERATE_ECLIPSEHELP
\refitem cfg_generate_html GENERATE_HTML
......@@ -187,6 +190,7 @@ followed by the descriptions of the tags grouped by category.
\refitem cfg_inline_grouped_classes INLINE_GROUPED_CLASSES
\refitem cfg_inline_info INLINE_INFO
\refitem cfg_inline_inherited_memb INLINE_INHERITED_MEMB
\refitem cfg_inline_simple_structs INLINE_SIMPLE_STRUCTS
\refitem cfg_inline_sources INLINE_SOURCES
\refitem cfg_input INPUT
\refitem cfg_input_encoding INPUT_ENCODING
......@@ -197,6 +201,7 @@ followed by the descriptions of the tags grouped by category.
\refitem cfg_latex_batchmode LATEX_BATCHMODE
\refitem cfg_latex_bib_style LATEX_BIB_STYLE
\refitem cfg_latex_cmd_name LATEX_CMD_NAME
\refitem cfg_latex_extra_files LATEX_EXTRA_FILES
\refitem cfg_latex_footer LATEX_FOOTER
\refitem cfg_latex_header LATEX_HEADER
\refitem cfg_latex_hide_indices LATEX_HIDE_INDICES
......@@ -369,8 +374,8 @@ followed by the descriptions of the tags grouped by category.
The default language is English, other supported languages are:
Afrikaans, Arabic, Brazilian, Catalan, Chinese, Croatian, Czech, Danish, Dutch,
Finnish, French, German, Greek, Hungarian, Italian, Japanese, Korean,
Lithuanian, Norwegian, Persian, Polish, Portuguese, Romanian, Russian, Serbian,
Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, and Ukrainian.
Latvian, Lithuanian, Norwegian, Persian, Polish, Portuguese, Romanian, Russian,
Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, and Ukrainian.
\anchor cfg_brief_member_desc
<dt>\c BRIEF_MEMBER_DESC <dd>
......@@ -650,6 +655,16 @@ unions are shown inside the group in which they are included
or section (for LaTeX and RTF). Note that this feature does not work in
combination with \ref cfg_separate_member_pages "SEPARATE_MEMBER_PAGES".
\anchor cfg_inline_simple_structs
<dt>\c INLINE_SIMPLE_STRUCTS <dd>
\addindex INLINE_SIMPLE_STRUCTS
When the \c INLINE_SIMPLE_STRUCTS tag is set to \c YES, structs, classes, and
unions with only public data fields or simple typedef fields will be shown
inline in the documentation of the scope in which they are defined (i.e. file,
namespace, or group documentation), provided this scope is documented. If set
to NO (the default), structs, classes, and unions are shown on a separate
page (for HTML and Man pages) or section (for LaTeX and RTF).
\anchor cfg_typedef_hides_struct
<dt>\c TYPEDEF_HIDES_STRUCT <dd>
\addindex TYPEDEF_HIDES_STRUCT
......@@ -2069,7 +2084,15 @@ EXTRA_PACKAGES = times
the generated latex document. The footer should contain everything after
the last chapter. If it is left blank doxygen will generate a
standard footer. Notice: only use this tag if you know what you are doing!
\anchor cfg_latex_extra_files
<dt>\c LATEX_EXTRA_FILES <dd>
\addindex LATEX_EXTRA_FILES
The \c LATEX_EXTRA_FILES tag can be used to specify one or more extra images
or other source files which should be copied to the LaTeX output directory.
Note that the files will be copied as-is; there are no commands or markers
available.
\anchor cfg_pdf_hyperlinks
<dt>\c PDF_HYPERLINKS <dd>
\addindex PDF_HYPERLINKS
......@@ -2254,6 +2277,24 @@ EXTRA_PACKAGES = times
</dl>
\section docbook_output Docbook related options
\anchor cfg_generate_docbook
<dl>
<dt>\c GENERATE_DOCBOOK <dd>
\addindex GENERATE_DOCBOOK
If the \c GENERATE_DOCBOOK tag is set to \c YES Doxygen will generate Docbook files
that can be used to generate PDF.
\anchor cfg_docbook_output
<dt>\c DOCBOOK_OUTPUT <dd>
\addindex DOCBOOK_OUTPUT
The \c DOCBOOK_OUTPUT tag is used to specify where the Docbook pages will be put.
If a relative path is entered the value of \ref cfg_output_directory "OUTPUT_DIRECTORY" will be put in
front of it. If left blank docbook will be used as the default path.
</dl>
\section autogen_output AUTOGEN_DEF related options
\anchor cfg_generate_autogen_def
<dl>
......@@ -2418,6 +2459,13 @@ EXTRA_PACKAGES = times
If the \c EXTERNAL_GROUPS tag is set to \c YES all external groups will be listed
in the modules index. If set to \c NO, only the current project's groups will
be listed.
\anchor cfg_external_pages
<dt>\c EXTERNAL_PAGES <dd>
\addindex EXTERNAL_PAGES
If the \c EXTERNAL_PAGES tag is set to \c YES all external pages will be listed
in the related pages index. If set to \c NO, only the current project's
pages will be listed.
\anchor cfg_perl_path
<dt>\c PERL_PATH <dd>
......
......@@ -28,7 +28,7 @@ are supported (sorted alphabetically):
Afrikaans, Arabic, Armenian, Brazilian Portuguese, Catalan, Chinese,
Chinese Traditional, Croatian, Czech, Danish, Dutch, English,
Esperanto, Finnish, French, German, Greek, Hungarian, Indonesian,
Italian, Japanese (+En), Korean (+En), Lithuanian, Macedonian,
Italian, Japanese (+En), Korean (+En), Latvian, Lithuanian, Macedonian,
Norwegian, Persian, Polish, Portuguese, Romanian, Russian, Serbian,
SerbianCyrilic, Slovak, Slovene, Spanish, Swedish, Turkish, Ukrainian,
and Vietnamese..
......
......@@ -96,6 +96,9 @@ Kim Taedong: fly1004 at gmail dot com
SooYoung Jung: jung5000 at gmail dot com
Richard Kim: [unreachable] ryk at dspwiz dot com
TranslatorLatvian
Lauris: lauris at nix.lv
TranslatorLithuanian
Tomas Simonaitis: [unreachable] haden at homelan dot lt
Mindaugas Radzius: [unreachable] mindaugasradzius at takas dot lt
......
......@@ -8,9 +8,9 @@ distclean: clean
$(RM) -f Makefile.libmd5 libmd5.pro Makefile
tmake:
$(ENV) $(PERL) $(TMAKE) libmd5.pro >Makefile.libmd5
$(ENV) $(PERL) "$(TMAKE)" libmd5.pro >Makefile.libmd5
Makefile.libmd5: libmd5.pro
$(ENV) $(PERL) $(TMAKE) libmd5.pro >Makefile.libmd5
$(ENV) $(PERL) "$(TMAKE)" libmd5.pro >Makefile.libmd5
install:
# Doxyfile 1.8.3
# Doxyfile 1.8.3.1
#---------------------------------------------------------------------------
# Project related configuration options
......@@ -87,7 +87,7 @@ CITE_BIB_FILES =
#---------------------------------------------------------------------------
# configuration options related to warning and progress messages
#---------------------------------------------------------------------------
QUIET = YES
QUIET = NO
WARNINGS = YES
WARN_IF_UNDOCUMENTED = YES
WARN_IF_DOC_ERROR = YES
......@@ -186,8 +186,9 @@ MATHJAX_EXTENSIONS =
SEARCHENGINE = YES
SERVER_BASED_SEARCH = NO
EXTERNAL_SEARCH = NO
SEARCHENGINE_URL =
SEARCHENGINE_URL =
SEARCHDATA_FILE = searchdata.xml
EXTERNAL_SEARCH_ID =
EXTRA_SEARCH_MAPPINGS =
#---------------------------------------------------------------------------
# configuration options related to the LaTeX output
......@@ -201,6 +202,7 @@ PAPER_TYPE = a4wide
EXTRA_PACKAGES =
LATEX_HEADER =
LATEX_FOOTER =
LATEX_EXTRA_FILES =
PDF_HYPERLINKS = YES
USE_PDFLATEX = YES
LATEX_BATCHMODE = NO
......@@ -232,6 +234,11 @@ XML_SCHEMA =
XML_DTD =
XML_PROGRAMLISTING = YES
#---------------------------------------------------------------------------
# configuration options related to the DOCBOOK output
#---------------------------------------------------------------------------
GENERATE_DOCBOOK = YES
DOCBOOK_OUTPUT = docbook
#---------------------------------------------------------------------------
# configuration options for the AutoGen Definitions output
#---------------------------------------------------------------------------
GENERATE_AUTOGEN_DEF = NO
......@@ -261,6 +268,7 @@ TAGFILES =
GENERATE_TAGFILE = ../qtools_docs/qtools.tag
ALLEXTERNALS = NO
EXTERNAL_GROUPS = YES
EXTERNAL_PAGES = YES
PERL_PATH = /usr/bin/perl
#---------------------------------------------------------------------------
# Configuration options related to the dot tool
......@@ -268,7 +276,7 @@ PERL_PATH = /usr/bin/perl
CLASS_DIAGRAMS = NO
MSCGEN_PATH =
HIDE_UNDOC_RELATIONS = YES
HAVE_DOT = NO
HAVE_DOT = YES
DOT_NUM_THREADS = 0
DOT_FONTNAME =
DOT_FONTSIZE = 10
......
......@@ -17,10 +17,10 @@ all: Makefile.qtools Makefile
$(MAKE) -f Makefile.qtools $@
Makefile.qtools: qtools.pro
$(ENV) $(PERL) $(TMAKE) qtools.pro >Makefile.qtools
$(ENV) $(PERL) "$(TMAKE)" qtools.pro >Makefile.qtools
tmake:
$(ENV) $(PERL) $(TMAKE) qtools.pro >Makefile.qtools
$(ENV) $(PERL) "$(TMAKE)" qtools.pro >Makefile.qtools
clean: Makefile.qtools
$(MAKE) -f Makefile.qtools clean
......
......@@ -52,7 +52,7 @@
#include <dos.h>
#elif defined(_OS_OS2_)
#include <os2.h>
#elif defined(_OS_UNIX_)
#elif defined(_OS_UNIX_) || defined(_OS_MAC_)
#include <sys/time.h>
#include <unistd.h>
#undef gettimeofday
......@@ -893,7 +893,7 @@ bool QTime::currentTime( QTime *ct )
t.second*1000 + t.hsecond*10;
return (t.hour== 0 && t.minute == 0);
#elif defined(_OS_UNIX_)
#elif defined(_OS_UNIX_) || defined(_OS_MAC_)
struct timeval tv;
gettimeofday( &tv, 0 );
......
......@@ -20,18 +20,18 @@ all: Makefile.libdoxygen Makefile.libdoxycfg Makefile.doxygen Makefile
$(MAKE) -f Makefile.doxygen PERL=$(PERL) $@
Makefile.libdoxygen: libdoxygen.pro libdoxygen.t
$(ENV) $(PERL) $(TMAKE) libdoxygen.pro >Makefile.libdoxygen
$(ENV) $(PERL) "$(TMAKE)" libdoxygen.pro >Makefile.libdoxygen
Makefile.libdoxycfg: libdoxycfg.pro libdoxycfg.t
$(ENV) $(PERL) $(TMAKE) libdoxycfg.pro >Makefile.libdoxycfg
$(ENV) $(PERL) "$(TMAKE)" libdoxycfg.pro >Makefile.libdoxycfg
Makefile.doxygen: doxygen.pro
$(ENV) $(PERL) $(TMAKE) doxygen.pro >Makefile.doxygen
$(ENV) $(PERL) "$(TMAKE)" doxygen.pro >Makefile.doxygen
tmake:
$(ENV) $(PERL) $(TMAKE) libdoxygen.pro >Makefile.libdoxygen
$(ENV) $(PERL) $(TMAKE) libdoxycfg.pro >Makefile.libdoxycfg
$(ENV) $(PERL) $(TMAKE) doxygen.pro >Makefile.doxygen
$(ENV) $(PERL) "$(TMAKE)" libdoxygen.pro >Makefile.libdoxygen
$(ENV) $(PERL) "$(TMAKE)" libdoxycfg.pro >Makefile.libdoxycfg
$(ENV) $(PERL) "$(TMAKE)" doxygen.pro >Makefile.doxygen
# clean objects
clean: Makefile.libdoxygen Makefile.libdoxycfg Makefile.doxygen
......
......@@ -277,11 +277,11 @@ ClassDefImpl::~ClassDefImpl()
// constructs a new class definition
ClassDef::ClassDef(
const char *defFileName,int defLine,
const char *defFileName,int defLine,int defColumn,
const char *nm,CompoundType ct,
const char *lref,const char *fName,
bool isSymbol,bool isJavaEnum)
: Definition(defFileName,defLine,removeRedundantWhiteSpace(nm),0,0,isSymbol)
: Definition(defFileName,defLine,defColumn,removeRedundantWhiteSpace(nm),0,0,isSymbol)
{
visited=FALSE;
setReference(lref);
......@@ -535,6 +535,7 @@ void ClassDef::internalInsertMember(MemberDef *md,
break;
case Public:
addMemberToList(MemberListType_pubTypes,md,TRUE);
isSimple=QCString(md->typeString()).find(")(")==-1;
break;
case Private:
addMemberToList(MemberListType_priTypes,md,TRUE);
......@@ -3491,7 +3492,7 @@ Definition *ClassDef::findInnerCompound(const char *name)
//}
ClassDef *ClassDef::insertTemplateInstance(const QCString &fileName,
int startLine, const QCString &templSpec,bool &freshInstance)
int startLine, int startColumn, const QCString &templSpec,bool &freshInstance)
{
freshInstance = FALSE;
if (m_impl->templateInstances==0)
......@@ -3503,7 +3504,7 @@ ClassDef *ClassDef::insertTemplateInstance(const QCString &fileName,
{
Debug::print(Debug::Classes,0," New template instance class `%s'`%s'\n",name().data(),templSpec.data());
templateClass = new ClassDef(
fileName,startLine,localName()+templSpec,ClassDef::Class);
fileName,startLine,startColumn,localName()+templSpec,ClassDef::Class);
templateClass->setTemplateMaster(this);
templateClass->setOuterScope(getOuterScope());
templateClass->setHidden(isHidden());
......@@ -3524,7 +3525,7 @@ ClassDef *ClassDef::getVariableInstance(const char *templSpec)
if (templateClass==0)
{
Debug::print(Debug::Classes,0," New template variable instance class `%s'`%s'\n",qPrint(name()),qPrint(templSpec));
templateClass = new ClassDef("<code>",1,name()+templSpec,
templateClass = new ClassDef("<code>",1,1,name()+templSpec,
ClassDef::Class,0,0,FALSE);
templateClass->addMembersToTemplateInstance( this, templSpec );
templateClass->setTemplateMaster(this);
......
......@@ -69,6 +69,8 @@ class ClassDef : public Definition
* found.
* \param startLine line number where the definition of this compound
* starts.
* \param startColumn column number where the definition of this compound
* starts.
* \param name the name of this compound (including scope)
* \param ct the kind of Compound
* \param ref the tag file from which this compound is extracted
......@@ -82,7 +84,7 @@ class ClassDef : public Definition
* I didn't add this to CompoundType to avoid having
* to adapt all translators.
*/
ClassDef(const char *fileName,int startLine,
ClassDef(const char *fileName,int startLine,int startColumn,
const char *name,CompoundType ct,
const char *ref=0,const char *fName=0,
bool isSymbol=TRUE,bool isJavaEnum=FALSE);
......@@ -310,7 +312,7 @@ class ClassDef : public Definition
void setProtection(Protection p);
void setGroupDefForAllMembers(GroupDef *g,Grouping::GroupPri_t pri,const QCString &fileName,int startLine,bool hasDocs);
void addInnerCompound(Definition *d);
ClassDef *insertTemplateInstance(const QCString &fileName,int startLine,
ClassDef *insertTemplateInstance(const QCString &fileName,int startLine,int startColumn,
const QCString &templSpec,bool &freshInstance);
void addUsedClass(ClassDef *cd,const char *accessName,Protection prot);
void addUsedByClass(ClassDef *cd,const char *accessName,Protection prot);
......
......@@ -129,6 +129,8 @@ CommandMap cmdMap[] =
{ "rtfonly", CMD_RTFONLY },
{ "endrtfonly", CMD_ENDRTFONLY },
{ "vhdlflow", CMD_VHDLFLOW },
{ "docbookonly", CMD_DBONLY },
{ "enddocbookonly",CMD_ENDDBONLY },
{ 0, 0 },
};
......
......@@ -118,7 +118,9 @@ enum CommandType
CMD_RTFONLY = 88,
CMD_ENDRTFONLY = 89,
CMD_PIPE = 90,
CMD_VHDLFLOW = 91
CMD_VHDLFLOW = 91,
CMD_DBONLY = 92,
CMD_ENDDBONLY = 93
};
enum HtmlTagType
......
This diff is collapsed.
......@@ -443,7 +443,7 @@ void replaceComment(int offset);
g_lastCommentContext = YY_START;
BEGIN(Verbatim);
}
<CComment,ReadLine>[\\@]("verbatim"|"latexonly"|"htmlonly"|"xmlonly"|"rtfonly"|"manonly")/[^a-z_A-Z0-9] { /* start of a verbatim block */
<CComment,ReadLine>[\\@]("verbatim"|"latexonly"|"htmlonly"|"xmlonly"|"docbookonly"|"rtfonly"|"manonly")/[^a-z_A-Z0-9] { /* start of a verbatim block */
copyToOutput(yytext,(int)yyleng);
g_blockName=&yytext[1];
g_lastCommentContext = YY_START;
......@@ -452,7 +452,7 @@ void replaceComment(int offset);
<Scan>. { /* any ather character */
copyToOutput(yytext,(int)yyleng);
}
<Verbatim>[\\@]("endverbatim"|"endlatexonly"|"endhtmlonly"|"endxmlonly"|"endrtfonly"|"endmanonly"|"f$"|"f]"|"f}") { /* end of verbatim block */
<Verbatim>[\\@]("endverbatim"|"endlatexonly"|"endhtmlonly"|"endxmlonly"|"docbookonly"|"endrtfonly"|"endmanonly"|"f$"|"f]"|"f}") { /* end of verbatim block */
copyToOutput(yytext,(int)yyleng);
if (yytext[1]=='f') // end of formula
{
......
......@@ -180,6 +180,7 @@ static DocCmdMap docCmdMap[] =
{ "latexonly", &handleFormatBlock, FALSE },
{ "htmlonly", &handleFormatBlock, FALSE },
{ "xmlonly", &handleFormatBlock, FALSE },
{ "docbookonly", &handleFormatBlock, FALSE },
{ "rtfonly", &handleFormatBlock, FALSE },
{ "manonly", &handleFormatBlock, FALSE },
{ "dot", &handleFormatBlock, TRUE },
......@@ -314,6 +315,7 @@ class DocCmdMapper
DocCmdMapper *DocCmdMapper::s_instance=0;
bool inInternalDocs = FALSE;
#define YY_NEVER_INTERACTIVE 1
......@@ -1018,9 +1020,11 @@ RCSTAG "$"{ID}":"[^\n$]+"$"
BEGIN(HtmlComment);
}
<Comment>{B}*{CMD}"endinternal"{B}* {
warn(yyFileName,yyLineNr,
if (!inInternalDocs)
warn(yyFileName,yyLineNr,
"warning: found \\endinternal without matching \\internal"
);
inInternalDocs = FALSE;
}
<Comment>{B}*{CMD}[a-z_A-Z]+{B}* { // potentially interesting command
// the {B}* in the front was added for bug620924
......@@ -1693,7 +1697,7 @@ RCSTAG "$"{ID}":"[^\n$]+"$"
/* ----- handle arguments of the preformatted block commands ------- */
<FormatBlock>{CMD}("endverbatim"|"endlatexonly"|"endhtmlonly"|"endxmlonly"|"endrtfonly"|"endmanonly"|"enddot"|"endcode"|"endmsc"|"endvhdlflow")/{NW} { // possible ends
<FormatBlock>{CMD}("endverbatim"|"endlatexonly"|"endhtmlonly"|"endxmlonly"|"enddocbookonly"|"endrtfonly"|"endmanonly"|"enddot"|"endcode"|"endmsc"|"endvhdlflow")/{NW} { // possible ends
addOutput(yytext);
if (&yytext[4]==blockName) // found end of the block
{
......@@ -2569,6 +2573,7 @@ static bool handleInternal(const QCString &)
{
// re-enabled for bug640828
addOutput("\\internal ");
inInternalDocs = TRUE;
}
return FALSE;
}
......
......@@ -279,6 +279,7 @@
<xsd:complexType name="locationType">
<xsd:attribute name="file" type="xsd:string" />
<xsd:attribute name="line" type="xsd:integer" />
<xsd:attribute name="column" type="xsd:integer" use="optional"/>
<xsd:attribute name="bodyfile" type="xsd:string" />
<xsd:attribute name="bodystart" type="xsd:integer" />
<xsd:attribute name="bodyend" type="xsd:integer" />
......
......@@ -279,6 +279,7 @@
" <xsd:complexType name=\"locationType\">\n"
" <xsd:attribute name=\"file\" type=\"xsd:string\" />\n"
" <xsd:attribute name=\"line\" type=\"xsd:integer\" />\n"
" <xsd:attribute name=\"column\" type=\"xsd:integer\" use=\"optional\"/>\n"
" <xsd:attribute name=\"bodyfile\" type=\"xsd:string\" />\n"
" <xsd:attribute name=\"bodystart\" type=\"xsd:integer\" />\n"
" <xsd:attribute name=\"bodyend\" type=\"xsd:integer\" />\n"
......
......@@ -49,7 +49,7 @@ The default language is English, other supported languages are:
Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional,
Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German,
Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English
messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian,
messages), Korean, Korean-en, Latvian, Lithuanian, Norwegian, Macedonian, Persian,
Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrillic, Slovak,
Slovene, Spanish, Swedish, Ukrainian, and Vietnamese.
'>
......@@ -76,6 +76,7 @@ Slovene, Spanish, Swedish, Ukrainian, and Vietnamese.
<value name='Japanese-en'/>
<value name='Korean'/>
<value name='Korean-en'/>
<value name='Latvian'/>
<value name='Norwegian'/>
<value name='Macedonian'/>
<value name='Persian'/>
......@@ -312,11 +313,12 @@ section (for LaTeX and RTF).
' defval='0'/>
<option type='bool' id='INLINE_SIMPLE_STRUCTS' docs='
When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and
unions with only public data fields will be shown inline in the documentation
of the scope in which they are defined (i.e. file, namespace, or group
documentation), provided this scope is documented. If set to NO (the default),
structs, classes, and unions are shown on a separate page (for HTML and Man
pages) or section (for LaTeX and RTF).' defval='0'/>
unions with only public data fields or simple typedef fields will be shown
inline in the documentation of the scope in which they are defined (i.e. file,
namespace, or group documentation), provided this scope is documented. If set
to NO (the default), structs, classes, and unions are shown on a separate
page (for HTML and Man pages) or section (for LaTeX and RTF).
' defval='0'/>
<option type='bool' id='TYPEDEF_HIDES_STRUCT' docs='
When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum
is documented as struct, union, or enum with the name of the typedef. So
......@@ -882,7 +884,7 @@ the output directory.
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
that these files will be copied to the base HTML output directory. Use the
$relpath$ marker in the HTML_HEADER and/or HTML_FOOTER files to load these
$relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these
files. In the HTML_STYLESHEET file, use the file name only. Also note that
the files will be copied as-is; there are no commands or markers available.
' depends='GENERATE_HTML'/>
......@@ -1246,6 +1248,12 @@ the generated latex document. The footer should contain everything after
the last chapter. If it is left blank doxygen will generate a
standard footer. Notice: only use this tag if you know what you are doing!
' defval='' depends='GENERATE_LATEX'/>
<option type='list' id='LATEX_EXTRA_FILES' format='file' docs='
The LATEX_EXTRA_FILES tag can be used to specify one or more extra images
or other source files which should be copied to the LaTeX output directory.
Note that the files will be copied as-is; there are no commands or markers
available.
' depends='GENERATE_LATEX'/>
<option type='bool' id='PDF_HYPERLINKS' docs='
If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
is prepared for conversion to pdf (using ps2pdf). The pdf file will
......@@ -1363,6 +1371,17 @@ dump the program listings (including syntax highlighting
and cross-referencing information) to the XML output. Note that
enabling this will significantly increase the size of the XML output.
' defval='1' depends='GENERATE_XML'/>
</group>
<group name='DOCBOOK' docs='configuration options related to the DOCBOOK output'>
<option type='bool' id='GENERATE_DOCBOOK' docs='
If the GENERATE_DOCBOOK tag is set to YES Doxygen will generate DOCBOOK files
that can be used to generate PDF.
' defval='0'/>
<option type='string' id='DOCBOOK_OUTPUT' format='dir' docs='
The DOCBOOK_OUTPUT tag is used to specify where the DOCBOOK pages will be put.
If a relative path is entered the value of OUTPUT_DIRECTORY will be put in
front of it. If left blank docbook will be used as the default path.
' defval='docbook' depends='GENERATE_DOCBOOK'/>
</group>
<group name='DEF' docs='configuration options for the AutoGen Definitions output'>
<option type='bool' id='GENERATE_AUTOGEN_DEF' docs='
......@@ -1373,6 +1392,19 @@ documentation. Note that this feature is still experimental
and incomplete at the moment.
' defval='0'/>
</group>
<!--
<group name='Sqlite3' docs='configuration options related to Sqlite3 output'>
<option type='bool' id='GENERATE_SQLITE3' docs='
If the GENERATE_SQLITE3 tag is set to YES doxygen will generate an
sqlite database with symbols found by doxygen stored in tables.
' defval='0'/>
<option type='string' id='SQLITE3_OUTPUT' format='dir' docs='
The SQLITE3_OUTPUT tag is used to specify where the Sqlite3 database will be put.
If a relative path is entered the value of OUTPUT_DIRECTORY will be
put in front of it. If left blank sqlite3 will be used as the default path.
' defval='' depends='GENERATE_SQLITE3'/>
</group>
-->
<group name='PerlMod' docs='configuration options related to the Perl module output'>
<option type='bool' id='GENERATE_PERLMOD' docs='
If the GENERATE_PERLMOD tag is set to YES Doxygen will
......@@ -1485,6 +1517,11 @@ will be listed.
If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
in the modules index. If set to NO, only the current project&apos;s groups will
be listed.
' defval='1'/>
<option type='bool' id='EXTERNAL_PAGES' docs='
If the EXTERNAL_PAGES tag is set to YES all external pages will be listed
in the related pages index. If set to NO, only the current project&apos;s
pages will be listed.
' defval='1'/>
<option type='string' id='PERL_PATH' format='dir' docs='
The PERL_PATH should be the absolute path and name of the perl script
......
......@@ -90,7 +90,7 @@ void addConfigOptions(Config *cfg)
"Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional,\n"
"Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German,\n"
"Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English\n"
"messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian,\n"
"messages), Korean, Korean-en, Latvian, Lithuanian, Norwegian, Macedonian, Persian,\n"
"Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrillic, Slovak,\n"
"Slovene, Spanish, Swedish, Ukrainian, and Vietnamese.",
"English"
......@@ -118,6 +118,7 @@ void addConfigOptions(Config *cfg)
ce->addValue("Japanese-en");
ce->addValue("Korean");
ce->addValue("Korean-en");
ce->addValue("Latvian");
ce->addValue("Norwegian");
ce->addValue("Macedonian");
ce->addValue("Persian");
......@@ -440,11 +441,11 @@ void addConfigOptions(Config *cfg)
cb = cfg->addBool(
"INLINE_SIMPLE_STRUCTS",
"When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and\n"
"unions with only public data fields will be shown inline in the documentation\n"
"of the scope in which they are defined (i.e. file, namespace, or group\n"
"documentation), provided this scope is documented. If set to NO (the default),\n"
"structs, classes, and unions are shown on a separate page (for HTML and Man\n"
"pages) or section (for LaTeX and RTF).",
"unions with only public data fields or simple typedef fields will be shown\n"
"inline in the documentation of the scope in which they are defined (i.e. file,\n"
"namespace, or group documentation), provided this scope is documented. If set\n"
"to NO (the default), structs, classes, and unions are shown on a separate\n"
"page (for HTML and Man pages) or section (for LaTeX and RTF).",
FALSE
);
//----
......@@ -1261,7 +1262,7 @@ void addConfigOptions(Config *cfg)
"The HTML_EXTRA_FILES tag can be used to specify one or more extra images or\n"
"other source files which should be copied to the HTML output directory. Note\n"
"that these files will be copied to the base HTML output directory. Use the\n"
"$relpath$ marker in the HTML_HEADER and/or HTML_FOOTER files to load these\n"
"$relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these\n"
"files. In the HTML_STYLESHEET file, use the file name only. Also note that\n"
"the files will be copied as-is; there are no commands or markers available."
);
......@@ -1835,6 +1836,16 @@ void addConfigOptions(Config *cfg)
cs->setWidgetType(ConfigString::File);
cs->addDependency("GENERATE_LATEX");
//----
cl = cfg->addList(
"LATEX_EXTRA_FILES",
"The LATEX_EXTRA_FILES tag can be used to specify one or more extra images\n"
"or other source files which should be copied to the LaTeX output directory.\n"
"Note that the files will be copied as-is; there are no commands or markers\n"
"available."
);
cl->addDependency("GENERATE_LATEX");
cl->setWidgetType(ConfigList::File);
//----
cb = cfg->addBool(
"PDF_HYPERLINKS",
"If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated\n"
......@@ -2039,6 +2050,27 @@ void addConfigOptions(Config *cfg)
);
cb->addDependency("GENERATE_XML");
//---------------------------------------------------------------------------
cfg->addInfo("DOCBOOK","configuration options related to the DOCBOOK output");
//---------------------------------------------------------------------------
//----
cb = cfg->addBool(
"GENERATE_DOCBOOK",
"If the GENERATE_DOCBOOK tag is set to YES Doxygen will generate DOCBOOK files\n"
"that can be used to generate PDF.",
FALSE
);
//----
cs = cfg->addString(
"DOCBOOK_OUTPUT",
"The DOCBOOK_OUTPUT tag is used to specify where the DOCBOOK pages will be put.\n"
"If a relative path is entered the value of OUTPUT_DIRECTORY will be put in\n"
"front of it. If left blank docbook will be used as the default path."
);
cs->setDefaultValue("docbook");
cs->setWidgetType(ConfigString::Dir);
cs->addDependency("GENERATE_DOCBOOK");
//---------------------------------------------------------------------------
cfg->addInfo("DEF","configuration options for the AutoGen Definitions output");
//---------------------------------------------------------------------------
......@@ -2231,6 +2263,14 @@ void addConfigOptions(Config *cfg)
TRUE
);
//----
cb = cfg->addBool(
"EXTERNAL_PAGES",
"If the EXTERNAL_PAGES tag is set to YES all external pages will be listed\n"
"in the related pages index. If set to NO, only the current project's\n"
"pages will be listed.",
TRUE
);
//----
cs = cfg->addString(
"PERL_PATH",
"The PERL_PATH should be the absolute path and name of the perl script\n"
......
......@@ -22,6 +22,7 @@ Define::Define()
{
fileDef=0;
lineNr=1;
columnNr=1;
nargs=-1;
undef=FALSE;
varArgs=FALSE;
......@@ -34,6 +35,7 @@ Define::Define(const Define &d)
{
//name=d.name; definition=d.definition; fileName=d.fileName;
lineNr=d.lineNr;
lineNr=d.columnNr;
nargs=d.nargs;
undef=d.undef;
varArgs=d.varArgs;
......
......@@ -40,6 +40,7 @@ class Define
QCString anchor;
FileDef *fileDef;
int lineNr;
int columnNr;
int nargs;
bool undef;
bool varArgs;
......
......@@ -277,12 +277,13 @@ void Definition::removeFromMap(Definition *d)
}
}
Definition::Definition(const char *df,int dl,
Definition::Definition(const char *df,int dl,int dc,
const char *name,const char *b,
const char *d,bool isSymbol)
{
m_name = name;
m_defLine = dl;
m_defColumn = dc;
m_impl = new DefinitionImpl;
m_impl->init(df,name);
m_isSymbol = isSymbol;
......@@ -1031,13 +1032,6 @@ void Definition::writeInlineCode(OutputList &ol,const char *scopeName)
MemberDef *thisMd = 0;
if (definitionType()==TypeMember) thisMd = (MemberDef *)this;
// vhdl parser can' t start at an arbitrary point in the source code
if (getLanguage()==SrcLangExt_VHDL)
{
if (thisMd) VhdlDocGen::writeCodeFragment(ol,actualStart,codeFragment,thisMd);
return;
}
ol.startCodeFragment();
pIntf->parseCode(ol, // codeOutIntf
scopeName, // scope
......@@ -1226,18 +1220,26 @@ bool Definition::hasUserDocumentation() const
return hasDocs;
}
void Definition::addSourceReferencedBy(MemberDef *md)
void Definition::addSourceReferencedBy(MemberDef *md, const char *floc/*=NULL*/)
{
QCString name ;
QCString scope = md->getScopeString();
if (floc)
name = floc;
else
{
name = md->name();
if (!scope.isEmpty())
{
name.prepend(scope+"::");
}
}
if (md)
{
makeResident();
QCString name = md->name();
QCString scope = md->getScopeString();
if (!scope.isEmpty())
{
name.prepend(scope+"::");
}
if (m_impl->sourceRefByDict==0)
{
......@@ -1250,19 +1252,32 @@ void Definition::addSourceReferencedBy(MemberDef *md)
}
}
void Definition::addSourceReferences(MemberDef *md)
void Definition::addSourceReferences(MemberDef *md, const char *floc)
{
QCString name = md->name();
QCString scope = md->getScopeString();
if (floc)
name = floc;
#if 0
else
{
name = md->name();
if (!scope.isEmpty())
{
name.prepend(scope+"::");
}
}
#endif
if (md)
{
QCString name = md->name();
QCString scope = md->getScopeString();
makeResident();
#if 0
if (!scope.isEmpty())
{
name.prepend(scope+"::");
}
#endif
if (m_impl->sourceRefsDict==0)
{
m_impl->sourceRefsDict = new MemberSDict;
......
......@@ -95,7 +95,7 @@ class Definition : public DefinitionIntf, public LockableObj
/*! Create a new definition */
Definition(
const char *defFileName,int defLine,
const char *defFileName,int defLine,int defColumn,
const char *name,const char *b=0,const char *d=0,
bool isSymbol=TRUE);
......@@ -180,6 +180,9 @@ class Definition : public DefinitionIntf, public LockableObj
/*! returns the line number at which the definition was found */
int getDefLine() const { return m_defLine; }
/*! returns the column number at which the definition was found */
int getDefColumn() const { return m_defColumn; }
/*! Returns TRUE iff the definition is documented
* (which could be generated documentation)
* @see hasUserDocumentation()
......@@ -287,8 +290,8 @@ class Definition : public DefinitionIntf, public LockableObj
// source references
void setBodySegment(int bls,int ble);
void setBodyDef(FileDef *fd);
void addSourceReferencedBy(MemberDef *d);
void addSourceReferences(MemberDef *d);
void addSourceReferencedBy(MemberDef *d, const char *floc=NULL);
void addSourceReferences(MemberDef *d, const char *floc);
void setRefItems(const QList<ListItemInfo> *sli);
void mergeRefItems(Definition *d);
......@@ -354,6 +357,7 @@ class Definition : public DefinitionIntf, public LockableObj
bool m_isSymbol;
QCString m_symbolName;
int m_defLine;
int m_defColumn;
};
/** A list of Definition objects. */
......
......@@ -17,7 +17,7 @@
static int g_dirCount=0;
DirDef::DirDef(const char *path) : Definition(path,1,path)
DirDef::DirDef(const char *path) : Definition(path,1,1,path)
{
bool fullPathNames = Config_getBool("FULL_PATH_NAMES");
// get display name (stipping the paths mentioned in STRIP_FROM_PATH)
......
This diff is collapsed.
/******************************************************************************
*
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
* granted. No representations are made about the suitability of this software
* for any purpose. It is provided "as is" without express or implied warranty.
* See the GNU General Public License for more details.
*
*/
#ifndef DOCBOOKGEN_H
#define DOCBOOKGEN_H
void generateDocbook();
#endif
This diff is collapsed.
/******************************************************************************
*
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
* granted. No representations are made about the suitability of this software
* for any purpose. It is provided "as is" without express or implied warranty.
* See the GNU General Public License for more details.
*
* Documents produced by Doxygen are derivative works derived from the
* input used in their production; they are not affected by this license.
*
*/
#ifndef _DOCBOOKDOCVISITOR_H
#define _DOCBOOKDOCVISITOR_H
#include "docvisitor.h"
#include <qstack.h>
#include <qcstring.h>
class FTextStream;
class CodeOutputInterface;
class QCString;
/*! @brief Concrete visitor implementation for Docbook output. */
class DocbookDocVisitor : public DocVisitor
{
public:
DocbookDocVisitor(FTextStream &t,CodeOutputInterface &ci);
//--------------------------------------
// visitor functions for leaf nodes
//--------------------------------------
void visit(DocWord *);
void visit(DocLinkedWord *);
void visit(DocWhiteSpace *);
void visit(DocSymbol *);
void visit(DocURL *);
void visit(DocLineBreak *);
void visit(DocHorRuler *);
void visit(DocStyleChange *);
void visit(DocVerbatim *);
void visit(DocAnchor *);
void visit(DocInclude *);
void visit(DocIncOperator *);
void visit(DocFormula *);
void visit(DocIndexEntry *);
void visit(DocSimpleSectSep *);
void visit(DocCite *);
//--------------------------------------
// visitor functions for compound nodes
//--------------------------------------
void visitPre(DocAutoList *);
void visitPost(DocAutoList *);
void visitPre(DocAutoListItem *);
void visitPost(DocAutoListItem *);
void visitPre(DocPara *) ;
void visitPost(DocPara *);
void visitPre(DocRoot *);
void visitPost(DocRoot *);
void visitPre(DocSimpleSect *);
void visitPost(DocSimpleSect *);
void visitPre(DocTitle *);
void visitPost(DocTitle *);
void visitPre(DocSimpleList *);
void visitPost(DocSimpleList *);
void visitPre(DocSimpleListItem *);
void visitPost(DocSimpleListItem *);
void visitPre(DocSection *);
void visitPost(DocSection *);
void visitPre(DocHtmlList *);
void visitPost(DocHtmlList *) ;
void visitPre(DocHtmlListItem *);
void visitPost(DocHtmlListItem *);
//void visitPre(DocHtmlPre *);
//void visitPost(DocHtmlPre *);
void visitPre(DocHtmlDescList *);
void visitPost(DocHtmlDescList *);
void visitPre(DocHtmlDescTitle *);
void visitPost(DocHtmlDescTitle *);
void visitPre(DocHtmlDescData *);
void visitPost(DocHtmlDescData *);
void visitPre(DocHtmlTable *);
void visitPost(DocHtmlTable *);
void visitPre(DocHtmlRow *);
void visitPost(DocHtmlRow *) ;
void visitPre(DocHtmlCell *);
void visitPost(DocHtmlCell *);
void visitPre(DocHtmlCaption *);
void visitPost(DocHtmlCaption *);
void visitPre(DocInternal *);
void visitPost(DocInternal *);
void visitPre(DocHRef *);
void visitPost(DocHRef *);
void visitPre(DocHtmlHeader *);
void visitPost(DocHtmlHeader *);
void visitPre(DocImage *);
void visitPost(DocImage *);
void visitPre(DocDotFile *);
void visitPost(DocDotFile *);
void visitPre(DocMscFile *);
void visitPost(DocMscFile *);
void visitPre(DocLink *);
void visitPost(DocLink *);
void visitPre(DocRef *);
void visitPost(DocRef *);
void visitPre(DocSecRefItem *);
void visitPost(DocSecRefItem *);
void visitPre(DocSecRefList *);
void visitPost(DocSecRefList *);
//void visitPre(DocLanguage *);
//void visitPost(DocLanguage *);
void visitPre(DocParamSect *);
void visitPost(DocParamSect *);
void visitPre(DocParamList *);
void visitPost(DocParamList *);
void visitPre(DocXRefItem *);
void visitPost(DocXRefItem *);
void visitPre(DocInternalRef *);
void visitPost(DocInternalRef *);
void visitPre(DocCopy *);
void visitPost(DocCopy *);
void visitPre(DocText *);
void visitPost(DocText *);
void visitPre(DocHtmlBlockQuote *);
void visitPost(DocHtmlBlockQuote *);
void visitPre(DocVhdlFlow *);
void visitPost(DocVhdlFlow *);
private:
//--------------------------------------
// helper functions
//--------------------------------------
void filter(const char *str);
void startLink(const QCString &file,
const QCString &anchor);
void endLink();
void pushEnabled();
void popEnabled();
void startMscFile(const QCString &fileName,const QCString &width,
const QCString &height, bool hasCaption);
void endMscFile(bool hasCaption);
void writeMscFile(const QCString &fileName);
void startDotFile(const QCString &fileName,const QCString &width,
const QCString &height, bool hasCaption);
void endDotFile(bool hasCaption);
void writeDotFile(const QCString &fileName);
//--------------------------------------
// state variables
//--------------------------------------
FTextStream &m_t;
CodeOutputInterface &m_ci;
bool m_insidePre;
bool m_hide;
QStack<bool> m_enabled;
QCString m_langExt;
};
#endif
......@@ -1346,6 +1346,15 @@ reparsetoken:
doctokenizerYYsetStatePara();
}
break;
case CMD_DBONLY:
{
doctokenizerYYsetStateDbOnly();
tok = doctokenizerYYlex();
children.append(new DocVerbatim(parent,g_context,g_token->verb,DocVerbatim::DocbookOnly,g_isExample,g_exampleName));
if (tok==0) warn_doc_error(g_fileName,doctokenizerYYlineno,"warning: xmlonly section ended without end marker",doctokenizerYYlineno);
doctokenizerYYsetStatePara();
}
break;
case CMD_FORMULA:
{
DocFormula *form=new DocFormula(parent,g_token->id);
......@@ -1547,7 +1556,7 @@ static int handleDocCopy(DocNode *parent,QList<DocNode> &children)
cmdId==CMD_COPYDOC || cmdId==CMD_COPYDETAILS);
cpy->parse(children);
delete cpy;
return 0;
return TK_NEWPARA;
}
......@@ -5509,6 +5518,7 @@ int DocPara::handleCommand(const QCString &cmdName)
case CMD_ENDRTFONLY:
case CMD_ENDLATEXONLY:
case CMD_ENDXMLONLY:
case CMD_ENDDBONLY:
case CMD_ENDLINK:
case CMD_ENDVERBATIM:
case CMD_ENDDOT:
......
......@@ -381,7 +381,7 @@ class DocWhiteSpace : public DocNode
class DocVerbatim : public DocNode
{
public:
enum Type { Code, HtmlOnly, ManOnly, LatexOnly, RtfOnly, XmlOnly, Verbatim, Dot, Msc };
enum Type { Code, HtmlOnly, ManOnly, LatexOnly, RtfOnly, XmlOnly, Verbatim, Dot, Msc, DocbookOnly };
DocVerbatim(DocNode *parent,const QCString &context,
const QCString &text, Type t,bool isExample,
const QCString &exampleFile,const QCString &lang=QCString());
......
......@@ -135,6 +135,11 @@ void DocSets::initialize()
" <string>" << publisherId << "</string>\n"
" <key>DocSetPublisherName</key>\n"
" <string>" << publisherName << "</string>\n"
// markers for Dash
" <key>DashDocSetFamily</key>\n"
" <string>doxy</string>\n"
" <key>DocSetPlatformFamily</key>\n"
" <string>doxygen</string>\n"
"</dict>\n"
"</plist>\n";
}
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment