Merge branch 'tmp-gtkdoc-fixes' into 'master'

doc: Improve GTK-DOC manual.  Closes: #35.

Closes #35

See merge request gnutls/libtasn1!83
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index a4398bc..06865eb 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -337,13 +337,12 @@
     paths:
       - libtasn1-*.tar.gz
 
-# Target to run code coverage on non-master branches. That is intended
-# to ensure that compilation in master will not break the pages rule.
-pages-test:
+.pages:
   image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD
   script:
+  - dnf install -y dblatex
   - ./bootstrap
-  - ./configure --enable-gtk-doc --disable-gcc-warnings --enable-code-coverage
+  - CFLAGS="-g -Og" dash ./configure --enable-code-coverage --enable-gtk-doc --enable-gtk-doc-pdf --disable-gcc-warnings
   - mkdir -p public
   - make -j$(nproc)
   - make -j$(nproc) check
@@ -352,29 +351,25 @@
   - mv doc/libtasn1.pdf doc/libtasn1.html public/
   - cp -ar GNU*-coverage/ public/coverage
   - cp public/libtasn1.html public/index.html
-  tags:
-  - shared
-  except:
-    - master
-
-pages:
-  image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD
-  script:
-  - ./bootstrap
-  - CFLAGS="-g -Og" dash ./configure --disable-doc --enable-code-coverage --enable-gtk-doc --disable-gcc-warnings
-  - mkdir -p public
-  - make -j$(nproc)
-  - make -j$(nproc) check
-  - make local-code-coverage-output || true
-  - make -C doc libtasn1.html libtasn1.pdf
-  - mv doc/libtasn1.pdf doc/libtasn1.html public/
-  - cp -ar GNU*-coverage/ public/coverage
-  - cp public/libtasn1.html public/index.html
+  - rm -rf public/reference
+  - mv doc/reference/html public/reference
+  - mv doc/reference/libtasn1.pdf public/reference/
+  - make web-manual
+  - rm -rf public/manual
+  - mv doc/manual public/manual
   tags:
   - shared
   artifacts:
     when: on_success
     paths:
       - public
+
+pages:
+  extends: .pages
   only:
     - master
+
+pages-test:
+  extends: .pages
+  except:
+    - master
diff --git a/NEWS b/NEWS
index 6d5db59..7ce3b1b 100644
--- a/NEWS
+++ b/NEWS
@@ -1,7 +1,7 @@
 GNU Libtasn1 NEWS                                     -*- outline -*-
 
 * Noteworthy changes in release ?.? (????-??-??) [?]
-
+- Improve GTK-DOC manual.  Closes: #35.
 
 * Noteworthy changes in release 4.17.0 (2021-05-13) [stable]
 - Print deprecation messages for deprecated macros, thanks to Tim Rühsen.
diff --git a/README.md b/README.md
index 0adf558..45eb1e8 100644
--- a/README.md
+++ b/README.md
@@ -67,10 +67,16 @@
 
 ## Manual
 
-The manual is in the `doc/` directory of the release.  You can also browse
-the manual online at:
+The manual is in the `doc/` directory of the release.
 
- - https://gnutls.gitlab.io/libtasn1/
+You can also browse the manual online at:
+
+ - https://www.gnu.org/software/libtasn1/manual/
+ - https://gnutls.gitlab.io/libtasn1/manual/
+ - https://gnutls.gitlab.io/libtasn1/manual/libtasn1.html
+ - https://gnutls.gitlab.io/libtasn1/manual/libtasn1.pdf
+ - https://gnutls.gitlab.io/libtasn1/reference/
+ - https://gnutls.gitlab.io/libtasn1/reference/libtasn1.pdf
 
 
 ## Code coverage report
diff --git a/doc/reference/Makefile.am b/doc/reference/Makefile.am
index 3b65776..7c2dfb8 100644
--- a/doc/reference/Makefile.am
+++ b/doc/reference/Makefile.am
@@ -84,7 +84,7 @@
 # e.g. content_files=running.xml building.xml changes-2.0.xml
 content_files=
 
-# Files where gtk-doc abbrevations (#GtkWidget) are expanded
+# Files where gtk-doc abbreviations (#GtkWidget) are expanded
 # e.g. expand_content_files=running.xml
 expand_content_files=
 
@@ -109,3 +109,18 @@
 endif
 
 -include $(top_srcdir)/git.mk
+
+html-build.stamp: $(top_builddir)/.version
+pdf-build.stamp: $(top_builddir)/.version
+
+CLEANFILES ?=
+CLEANFILES += $(PACKAGE)-overrides.txt
+CLEANFILES += $(PACKAGE)-decl.txt $(PACKAGE)-decl-list.txt
+CLEANFILES += $(PACKAGE)-sections.txt $(PACKAGE).pdf
+
+clean-local: clean-local-junk
+.PHONY: clean-local-junk
+clean-local-junk:
+	-rm -rf xml html tmpl
+
+dist-hook-local: all-local
diff --git a/doc/reference/libtasn1-docs.xml b/doc/reference/libtasn1-docs.xml
index f88b888..02d8865 100644
--- a/doc/reference/libtasn1-docs.xml
+++ b/doc/reference/libtasn1-docs.xml
@@ -38,19 +38,16 @@
     <title>API Index</title>
     <xi:include href="xml/api-index-full.xml"><xi:fallback /></xi:include>
   </index>
-  <index id="deprecated-api-index" role="deprecated">
+  <index id="deprecated-api-index">
     <title>Index of deprecated API</title>
     <xi:include href="xml/api-index-deprecated.xml"><xi:fallback /></xi:include>
   </index>
-  <index id="api-index-1-6" role="1.6">
+  <index id="api-index-1-6">
     <title>Index of new API in 1.6</title>
     <xi:include href="xml/api-index-1.6.xml"><xi:fallback /></xi:include>
   </index>
-  <index id="api-index-2-0" role="2.0">
+  <index id="api-index-2-0">
     <title>Index of new API in 2.0</title>
     <xi:include href="xml/api-index-2.0.xml"><xi:fallback /></xi:include>
   </index>
-  <!-- enable this when you use gobject introspection annotations
-  <xi:include href="xml/annotation-glossary.xml"><xi:fallback /></xi:include>
-  -->
 </book>
diff --git a/lib/structure.c b/lib/structure.c
index 4f43335..b92594e 100644
--- a/lib/structure.c
+++ b/lib/structure.c
@@ -299,7 +299,7 @@
 /**
  * asn1_delete_structure2:
  * @structure: pointer to the structure that you want to delete.
- * @flags: additional flags (see %ASN1_DELETE_FLAG)
+ * @flags: additional flags (see %ASN1_DELETE_FLAG_ZEROIZE)
  *
  * Deletes the structure *@structure.  At the end, *@structure is set
  * to NULL.