Commit 60f8b2e2 by Benjamin Kosnik Committed by Benjamin Kosnik

run_doxygen: Adjust.

2010-03-12  Benjamin Kosnik  <bkoz@redhat.com>

	* scripts/run_doxygen: Adjust.
	* doc/doxygen/user.cfg.in: Adjust latex, xml prefs.
	* doc/xml/api.xml: Update.
	* doc/Makefile.am: Re-do stamp rules.
	* doc/Makefile.in: Regenerate.

From-SVN: r157409
parent 08f9d725
2010-03-12 Benjamin Kosnik <bkoz@redhat.com>
* scripts/run_doxygen: Adjust.
* doc/doxygen/user.cfg.in: Adjust latex, xml prefs.
* doc/xml/api.xml: Update.
* doc/Makefile.am: Re-do stamp rules.
* doc/Makefile.in: Regenerate.
2010-03-10 Paolo Carlini <paolo.carlini@oracle.com> 2010-03-10 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/hashtable_policy.h (_Rehash_base<_Prime_rehash_policy, * include/bits/hashtable_policy.h (_Rehash_base<_Prime_rehash_policy,
......
...@@ -34,7 +34,7 @@ include $(top_srcdir)/fragment.am ...@@ -34,7 +34,7 @@ include $(top_srcdir)/fragment.am
doc-man: doc-man-doxygen doc-man: doc-man-doxygen
# PDF # PDF
doc-pdf: doc-pdf-dblatex-docbook doc-pdf: doc-pdf-docbook
# HTML # HTML
doc-html: doc-html-docbook doc-html: doc-html-docbook
...@@ -44,6 +44,8 @@ doc-html: doc-html-docbook ...@@ -44,6 +44,8 @@ doc-html: doc-html-docbook
# Assumes doxygen, graphviz (with dot), pdflatex installed # Assumes doxygen, graphviz (with dot), pdflatex installed
doxygen_script=${top_srcdir}/scripts/run_doxygen doxygen_script=${top_srcdir}/scripts/run_doxygen
doxygen_outdir = ${glibcxx_builddir}/doc/doxygen doxygen_outdir = ${glibcxx_builddir}/doc/doxygen
doxygen_pdf = ${doxygen_outdir}/latex/refman.pdf
doc-html-doxygen: doc-html-doxygen:
-(srcdir=`cd ${top_srcdir}; ${PWD_COMMAND}`; \ -(srcdir=`cd ${top_srcdir}; ${PWD_COMMAND}`; \
builddir=`cd ..; ${PWD_COMMAND}`; \ builddir=`cd ..; ${PWD_COMMAND}`; \
...@@ -62,7 +64,7 @@ doc-xml-doxygen: ...@@ -62,7 +64,7 @@ doc-xml-doxygen:
${SHELL} ${doxygen_script} \ ${SHELL} ${doxygen_script} \
--host_alias=${host_alias} --mode=xml $${srcdir} $${builddir} NO) --host_alias=${host_alias} --mode=xml $${srcdir} $${builddir} NO)
doc-xml-single-doxygen: doc-xml-doxygen doc-xml-single-doxygen:
@echo "Generating doxygen xml single file..." @echo "Generating doxygen xml single file..."
$(XSLTPROC) ${doxygen_outdir}/xml/combine.xslt \ $(XSLTPROC) ${doxygen_outdir}/xml/combine.xslt \
${doxygen_outdir}/xml/index.xml > ${doxygen_outdir}/xml/api-spine.xml; ${doxygen_outdir}/xml/index.xml > ${doxygen_outdir}/xml/api-spine.xml;
...@@ -73,9 +75,7 @@ doc-latex-doxygen: ...@@ -73,9 +75,7 @@ doc-latex-doxygen:
${SHELL} ${doxygen_script} \ ${SHELL} ${doxygen_script} \
--host_alias=${host_alias} --mode=latex $${srcdir} $${builddir} NO) --host_alias=${host_alias} --mode=latex $${srcdir} $${builddir} NO)
# Chance of loooooonnggg wait time when creating this file. # Chance of loooooonnggg creation time on this rule.
doxygen_pdf = ${doxygen_outdir}/latex/refman.pdf
doc-pdf-doxygen: stamp-latex-doxygen doc-pdf-doxygen: stamp-latex-doxygen
-(cd ${doxygen_outdir}/latex && $(MAKE) -i pdf;) -(cd ${doxygen_outdir}/latex && $(MAKE) -i pdf;)
echo "Generating doxygen pdf file..."; echo "Generating doxygen pdf file...";
...@@ -86,8 +86,15 @@ doc-pdf-doxygen: stamp-latex-doxygen ...@@ -86,8 +86,15 @@ doc-pdf-doxygen: stamp-latex-doxygen
exit 12; \ exit 12; \
fi fi
stamp-pdf-doxygen:
@if [ ! -f stamp-pdf-doxygen ]; then \
$(MAKE) doc-pdf-doxygen; \
fi
$(STAMP) stamp-pdf-doxygen
stamp-xml-doxygen: stamp-xml-doxygen:
@if [ ! -f stamp-xml-doxygen ]; then \ @if [ ! -f stamp-xml-doxygen ]; then \
$(MAKE) doc-xml-doxygen; \
$(MAKE) doc-xml-single-doxygen; \ $(MAKE) doc-xml-single-doxygen; \
fi fi
$(STAMP) stamp-xml-doxygen $(STAMP) stamp-xml-doxygen
...@@ -165,7 +172,8 @@ xml_sources_manual = \ ...@@ -165,7 +172,8 @@ xml_sources_manual = \
xml_sources_extra = \ xml_sources_extra = \
${xml_dir}/gnu/fdl-1.2.xml \ ${xml_dir}/gnu/fdl-1.2.xml \
${xml_dir}/gnu/gpl-2.0.xml ${xml_dir}/gnu/gpl-2.0.xml \
${xml_dir}/gnu/gpl-3.0.xml
xml_sources = \ xml_sources = \
${xml_sources_basic} \ ${xml_sources_basic} \
...@@ -175,11 +183,7 @@ xml_sources = \ ...@@ -175,11 +183,7 @@ xml_sources = \
xml_noinst = \ xml_noinst = \
${xml_dir}/book.txml \ ${xml_dir}/book.txml \
${xml_dir}/chapter.txml \ ${xml_dir}/chapter.txml \
${xml_dir}/class.txml \ ${xml_dir}/class.txml
${xsl_dir}/doxygen2boostbook.xsl \
${xsl_dir}/boostbook2docbook.xsl \
${xsl_dir}/lookup.xsl
XSLTPROC = xsltproc XSLTPROC = xsltproc
XSLTPROC_FLAGS = --nonet --xinclude XSLTPROC_FLAGS = --nonet --xinclude
...@@ -206,8 +210,8 @@ XMLLINT = xmllint ...@@ -206,8 +210,8 @@ XMLLINT = xmllint
#LINT_FLAGS = --debug --nonet --xinclude --nsclean --postvalid --nowarning #LINT_FLAGS = --debug --nonet --xinclude --nsclean --postvalid --nowarning
#LINT_FLAGS = --noblanks --noout --xinclude --postvalid --noent #LINT_FLAGS = --noblanks --noout --xinclude --postvalid --noent
LINT_FLAGS = --postvalid --debug --xinclude --noent --noblanks --nonet --noout LINT_FLAGS = --postvalid --debug --xinclude --noent --noblanks --nonet --noout
VALID_FLAGS = --dtdvalid http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd DTD_FLAGS = --dtdvalid http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd
XMLLINT_FLAGS = $(LINT_FLAGS) $(VALID_FLAGS) XMLLINT_FLAGS = $(LINT_FLAGS) $(DTD_FLAGS)
doc-xml-validate-docbook: $(xml_sources) doc-xml-validate-docbook: $(xml_sources)
@echo "Generating XML validation log..." @echo "Generating XML validation log..."
$(XMLLINT) $(XMLLINT_FLAGS) ${top_srcdir}/doc/xml/spine.xml $(XMLLINT) $(XMLLINT_FLAGS) ${top_srcdir}/doc/xml/spine.xml
...@@ -281,6 +285,8 @@ doc-pdf-dblatex-docbook: $(xml_sources) ${docbook_outdir}/pdf ...@@ -281,6 +285,8 @@ doc-pdf-dblatex-docbook: $(xml_sources) ${docbook_outdir}/pdf
@echo "Generating pdf dblatex files..." @echo "Generating pdf dblatex files..."
dblatex $(DBLATEX_FLAGS) ${top_srcdir}/doc/xml/spine.xml dblatex $(DBLATEX_FLAGS) ${top_srcdir}/doc/xml/spine.xml
doc-pdf-docbook: doc-pdf-dblatex-docbook
# Performance doc and graph configuration. # Performance doc and graph configuration.
# Assumes pychart, beautiful soup installed. # Assumes pychart, beautiful soup installed.
...@@ -293,6 +299,7 @@ doc-html-performance: ...@@ -293,6 +299,7 @@ doc-html-performance:
${top_srcdir}/testsuite/data/make_graph_htmls.xml \ ${top_srcdir}/testsuite/data/make_graph_htmls.xml \
${top_srcdir}/testsuite/data/make_graph_test_infos.xml local g++) ${top_srcdir}/testsuite/data/make_graph_test_infos.xml local g++)
.PHONY: doc-doxygen-html doc-doxygen-man doc-performance .PHONY: doc-doxygen-html doc-doxygen-man doc-performance
# By adding these files here, automake will remove them for 'make clean' # By adding these files here, automake will remove them for 'make clean'
......
...@@ -267,8 +267,6 @@ AM_CPPFLAGS = $(GLIBCXX_INCLUDES) ...@@ -267,8 +267,6 @@ AM_CPPFLAGS = $(GLIBCXX_INCLUDES)
# Assumes doxygen, graphviz (with dot), pdflatex installed # Assumes doxygen, graphviz (with dot), pdflatex installed
doxygen_script = ${top_srcdir}/scripts/run_doxygen doxygen_script = ${top_srcdir}/scripts/run_doxygen
doxygen_outdir = ${glibcxx_builddir}/doc/doxygen doxygen_outdir = ${glibcxx_builddir}/doc/doxygen
# Chance of loooooonnggg wait time when creating this file.
doxygen_pdf = ${doxygen_outdir}/latex/refman.pdf doxygen_pdf = ${doxygen_outdir}/latex/refman.pdf
# Docbook configuration. # Docbook configuration.
...@@ -337,7 +335,8 @@ xml_sources_manual = \ ...@@ -337,7 +335,8 @@ xml_sources_manual = \
xml_sources_extra = \ xml_sources_extra = \
${xml_dir}/gnu/fdl-1.2.xml \ ${xml_dir}/gnu/fdl-1.2.xml \
${xml_dir}/gnu/gpl-2.0.xml ${xml_dir}/gnu/gpl-2.0.xml \
${xml_dir}/gnu/gpl-3.0.xml
xml_sources = \ xml_sources = \
${xml_sources_basic} \ ${xml_sources_basic} \
...@@ -347,10 +346,7 @@ xml_sources = \ ...@@ -347,10 +346,7 @@ xml_sources = \
xml_noinst = \ xml_noinst = \
${xml_dir}/book.txml \ ${xml_dir}/book.txml \
${xml_dir}/chapter.txml \ ${xml_dir}/chapter.txml \
${xml_dir}/class.txml \ ${xml_dir}/class.txml
${xsl_dir}/doxygen2boostbook.xsl \
${xsl_dir}/boostbook2docbook.xsl \
${xsl_dir}/lookup.xsl
XSLTPROC = xsltproc XSLTPROC = xsltproc
XSLTPROC_FLAGS = --nonet --xinclude XSLTPROC_FLAGS = --nonet --xinclude
...@@ -365,8 +361,8 @@ XMLLINT = xmllint ...@@ -365,8 +361,8 @@ XMLLINT = xmllint
#LINT_FLAGS = --debug --nonet --xinclude --nsclean --postvalid --nowarning #LINT_FLAGS = --debug --nonet --xinclude --nsclean --postvalid --nowarning
#LINT_FLAGS = --noblanks --noout --xinclude --postvalid --noent #LINT_FLAGS = --noblanks --noout --xinclude --postvalid --noent
LINT_FLAGS = --postvalid --debug --xinclude --noent --noblanks --nonet --noout LINT_FLAGS = --postvalid --debug --xinclude --noent --noblanks --nonet --noout
VALID_FLAGS = --dtdvalid http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd DTD_FLAGS = --dtdvalid http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd
XMLLINT_FLAGS = $(LINT_FLAGS) $(VALID_FLAGS) XMLLINT_FLAGS = $(LINT_FLAGS) $(DTD_FLAGS)
# PDF 1 # PDF 1
# fop # fop
...@@ -598,10 +594,11 @@ uninstall-am: ...@@ -598,10 +594,11 @@ uninstall-am:
doc-man: doc-man-doxygen doc-man: doc-man-doxygen
# PDF # PDF
doc-pdf: doc-pdf-dblatex-docbook doc-pdf: doc-pdf-docbook
# HTML # HTML
doc-html: doc-html-docbook doc-html: doc-html-docbook
doc-html-doxygen: doc-html-doxygen:
-(srcdir=`cd ${top_srcdir}; ${PWD_COMMAND}`; \ -(srcdir=`cd ${top_srcdir}; ${PWD_COMMAND}`; \
builddir=`cd ..; ${PWD_COMMAND}`; \ builddir=`cd ..; ${PWD_COMMAND}`; \
...@@ -620,7 +617,7 @@ doc-xml-doxygen: ...@@ -620,7 +617,7 @@ doc-xml-doxygen:
${SHELL} ${doxygen_script} \ ${SHELL} ${doxygen_script} \
--host_alias=${host_alias} --mode=xml $${srcdir} $${builddir} NO) --host_alias=${host_alias} --mode=xml $${srcdir} $${builddir} NO)
doc-xml-single-doxygen: doc-xml-doxygen doc-xml-single-doxygen:
@echo "Generating doxygen xml single file..." @echo "Generating doxygen xml single file..."
$(XSLTPROC) ${doxygen_outdir}/xml/combine.xslt \ $(XSLTPROC) ${doxygen_outdir}/xml/combine.xslt \
${doxygen_outdir}/xml/index.xml > ${doxygen_outdir}/xml/api-spine.xml; ${doxygen_outdir}/xml/index.xml > ${doxygen_outdir}/xml/api-spine.xml;
...@@ -631,6 +628,7 @@ doc-latex-doxygen: ...@@ -631,6 +628,7 @@ doc-latex-doxygen:
${SHELL} ${doxygen_script} \ ${SHELL} ${doxygen_script} \
--host_alias=${host_alias} --mode=latex $${srcdir} $${builddir} NO) --host_alias=${host_alias} --mode=latex $${srcdir} $${builddir} NO)
# Chance of loooooonnggg creation time on this rule.
doc-pdf-doxygen: stamp-latex-doxygen doc-pdf-doxygen: stamp-latex-doxygen
-(cd ${doxygen_outdir}/latex && $(MAKE) -i pdf;) -(cd ${doxygen_outdir}/latex && $(MAKE) -i pdf;)
echo "Generating doxygen pdf file..."; echo "Generating doxygen pdf file...";
...@@ -641,8 +639,15 @@ doc-pdf-doxygen: stamp-latex-doxygen ...@@ -641,8 +639,15 @@ doc-pdf-doxygen: stamp-latex-doxygen
exit 12; \ exit 12; \
fi fi
stamp-pdf-doxygen:
@if [ ! -f stamp-pdf-doxygen ]; then \
$(MAKE) doc-pdf-doxygen; \
fi
$(STAMP) stamp-pdf-doxygen
stamp-xml-doxygen: stamp-xml-doxygen:
@if [ ! -f stamp-xml-doxygen ]; then \ @if [ ! -f stamp-xml-doxygen ]; then \
$(MAKE) doc-xml-doxygen; \
$(MAKE) doc-xml-single-doxygen; \ $(MAKE) doc-xml-single-doxygen; \
fi fi
$(STAMP) stamp-xml-doxygen $(STAMP) stamp-xml-doxygen
...@@ -712,6 +717,8 @@ doc-pdf-prince-docbook: $(xml_sources) ${docbook_outdir}/pdf ...@@ -712,6 +717,8 @@ doc-pdf-prince-docbook: $(xml_sources) ${docbook_outdir}/pdf
doc-pdf-dblatex-docbook: $(xml_sources) ${docbook_outdir}/pdf doc-pdf-dblatex-docbook: $(xml_sources) ${docbook_outdir}/pdf
@echo "Generating pdf dblatex files..." @echo "Generating pdf dblatex files..."
dblatex $(DBLATEX_FLAGS) ${top_srcdir}/doc/xml/spine.xml dblatex $(DBLATEX_FLAGS) ${top_srcdir}/doc/xml/spine.xml
doc-pdf-docbook: doc-pdf-dblatex-docbook
doc-html-performance: doc-html-performance:
-@(chmod + ${doc_performance_script}; \ -@(chmod + ${doc_performance_script}; \
${doc_performance_script} ${top_srcdir} \ ${doc_performance_script} ${top_srcdir} \
......
...@@ -1180,7 +1180,7 @@ LATEX_OUTPUT = latex ...@@ -1180,7 +1180,7 @@ LATEX_OUTPUT = latex
# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be # The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
# invoked. If left blank `latex' will be used as the default command name. # invoked. If left blank `latex' will be used as the default command name.
LATEX_CMD_NAME = pdflatex LATEX_CMD_NAME = latex
# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to # The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
# generate index for LaTeX. If left blank `makeindex' will be used as the # generate index for LaTeX. If left blank `makeindex' will be used as the
...@@ -1349,7 +1349,7 @@ XML_DTD = ...@@ -1349,7 +1349,7 @@ XML_DTD =
# and cross-referencing information) to the XML output. Note that # and cross-referencing information) to the XML output. Note that
# enabling this will significantly increase the size of the XML output. # enabling this will significantly increase the size of the XML output.
XML_PROGRAMLISTING = YES XML_PROGRAMLISTING = NO
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
# configuration options for the AutoGen Definitions output # configuration options for the AutoGen Definitions output
......
...@@ -9,11 +9,14 @@ ...@@ -9,11 +9,14 @@
<?dbhtml filename="api.html"?> <?dbhtml filename="api.html"?>
<articleinfo> <articleinfo>
<title>API and Source Level Documentation</title> <title>API Documentation</title>
<copyright> <copyright>
<year> <year>
2008 2008
</year> </year>
<year>
2010
</year>
<holder> <holder>
<ulink url="http://www.fsf.org/">FSF <ulink url="http://www.fsf.org/">FSF
</ulink> </ulink>
...@@ -28,18 +31,17 @@ ...@@ -28,18 +31,17 @@
</articleinfo> </articleinfo>
<para> <para>
The GNU C++ library sources have been specially formatted so that with the The GNU C++ library sources have been specially formatted so that
proper invocation of another tool (Doxygen), a set of HTML pages with the proper invocation of another tool (Doxygen), a set of
are generated from the sources files themselves. The resultant indexed reference material can generated from the sources files
documentation is referred to as Source Level Documentation, and is themselves. The resultant documentation is referred to as the API
useful for examining the signatures of public member functions for documentation, and is useful for examining the signatures of public
the library classes, finding out what is in a particular include member functions for the library classes, finding out what is in a
file, looking at inheritance diagrams, etc. particular include file, looking at inheritance diagrams, etc.
</para> </para>
<para> <para>
The source-level documentation for the most recent releases can be The API documentation, rendered into HTML, can be viewed online:
viewed online:
</para> </para>
<itemizedlist> <itemizedlist>
...@@ -83,7 +85,8 @@ viewed online: ...@@ -83,7 +85,8 @@ viewed online:
</itemizedlist> </itemizedlist>
<para> <para>
This generated HTML collection, as above, is also available for download in the libstdc++ snapshots directory at The rendered HTML, as above, is also available for download on the
gcc.org site in a directory located at
<literal>&lt;URL:ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/&gt;</literal>. <literal>&lt;URL:ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/&gt;</literal>.
You will almost certainly need to use one of the You will almost certainly need to use one of the
<ulink url="http://gcc.gnu.org/mirrors.html">mirror sites</ulink> to download <ulink url="http://gcc.gnu.org/mirrors.html">mirror sites</ulink> to download
...@@ -92,13 +95,8 @@ This generated HTML collection, as above, is also available for download in the ...@@ -92,13 +95,8 @@ This generated HTML collection, as above, is also available for download in the
</para> </para>
<para> <para>
Documentation for older releases is available for download only, not In addition, a rendered set of man pages are available in the same
online viewing. location specified above. Start with C++Intro(3).
</para>
<para>
In addition, an initial set of man pages are also available in the
same place as the HTML collections. Start with C++Intro(3).
</para> </para>
</article> </article>
......
...@@ -162,10 +162,7 @@ esac ...@@ -162,10 +162,7 @@ esac
mkdir -p $outdir mkdir -p $outdir
chmod u+w $outdir chmod u+w $outdir
if $do_xml; then # Run it
mkdir -p $outdir/xml
fi
( (
set -e set -e
cd $builddir cd $builddir
...@@ -184,47 +181,29 @@ fi ...@@ -184,47 +181,29 @@ fi
echo :: NOTE that this may take some time... echo :: NOTE that this may take some time...
echo doxygen ${outdir}/${mode}.cfg echo doxygen ${outdir}/${mode}.cfg
doxygen ${outdir}/${mode}.cfg doxygen ${outdir}/${mode}.cfg
echo :: Finished, exit code was $?
) )
ret=$? ret=$?
test $ret -ne 0 && exit $ret test $ret -ne 0 && exit $ret
if $do_latex; then if $do_xml; then
mkdir -p $outdir/latex echo ::
echo :: XML pages begin with
echo :: ${outdir}/xml/index.xml
fi fi
( if $do_latex; then
set -e cd ${outdir}/${mode}
cd $builddir
sed -e "s=@outdir@=${outdir}=g" \
-e "s=@srcdir@=${srcdir}=g" \
-e "s=@shortname@=${shortname}=g" \
-e "s=@builddir@=${builddir}=g" \
-e "s=@host_alias@=${host_alias}=g" \
-e "s=@enabled_sections@=${enabled_sections}=" \
-e "s=@do_html@=${do_html}=" \
-e "s=@do_latex@=${do_latex}=" \
-e "s=@do_man@=${do_man}=" \
-e "s=@do_xml@=${do_xml}=" \
-e "s=@generate_tagfile@=${generate_tagfile}=" \
${srcdir}/doc/doxygen/user.cfg.in > ${outdir}/${mode}.cfg
echo :: NOTE that this may take some time...
echo doxygen ${outdir}/${mode}.cfg
doxygen ${outdir}/${mode}.cfg
# Also drop in the header file and style sheet # Also drop in the header file and style sheet
cd ${outdir}/${mode}
doxygen -w latex header.tex doxygen.sty doxygen -w latex header.tex doxygen.sty
echo :: Finished, exit code was $?
echo :: echo ::
echo :: LaTeX pages begin with echo :: LaTeX pages begin with
echo :: ${outdir}/latex/refman.tex echo :: ${outdir}/latex/refman.tex
) fi
ret=$?
test $ret -ne 0 && exit $ret
if $do_html; then if $do_html; then
cd ${outdir}/html cd ${outdir}/${mode}
#doxytag -t libstdc++.tag . > /dev/null 2>&1 #doxytag -t libstdc++.tag . > /dev/null 2>&1
sed -e '/<path>/d' libstdc++.tag > TEMP sed -e '/<path>/d' libstdc++.tag > TEMP
...@@ -242,6 +221,7 @@ if $do_html; then ...@@ -242,6 +221,7 @@ if $do_html; then
mv annstrip.html annotated.html mv annstrip.html annotated.html
cp ${srcdir}/doc/doxygen/tables.html tables.html cp ${srcdir}/doc/doxygen/tables.html tables.html
echo :: echo ::
echo :: HTML pages begin with echo :: HTML pages begin with
echo :: ${outdir}/html/index.html echo :: ${outdir}/html/index.html
......
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