BIRD 2.0.2 documentation build failure

Robert Scheck bird at robert-scheck.de
Tue Nov 27 23:03:23 CET 2018


Hello Ondrej,

On Tue, 27 Nov 2018, Ondrej Zajicek wrote:
> Build of documentation is integrated in main build system, so you are not
> supposed to do 'make -C doc', but use make with appropriate target (e.g.
> progdocs) from BIRD root directory.

ah, there's my mistake. However, a regular "./configure && make" does not
build any documentation but "make all docs" rather "make" does the job now,
except that Fedora and RHEL/CentOS have their SGML files at another place
compared to Debian. Unfortunately,

  make docs \
    SGML_CATALOG_FILES=/usr/share/sgml/sgml-iso-entities-8879.1986/catalog

does not work, because doc/sgml2{html,latex,txt} override this environment
variable with "$DataDir/dtd/catalog", thus doc/LinuxDocTools.pm:245 has
always the wrong value. Personally, I see two possible ways to address this
using a patch, attaching both given that my freshly created GitLab account
at gitlab.labs.nic.cz is limited (by default?) to zero forks/projects.


Regards,
  Robert
-------------- next part --------------
>From 977168abbeb2413ac136d30f18c68481b780fbea Mon Sep 17 00:00:00 2001
From: Robert Scheck <robert at fedoraproject.org>
Date: Tue, 27 Nov 2018 22:56:06 +0100
Subject: [PATCH] Allow overriding $SGML_CATALOG_FILES using distribution specific paths

---
 doc/sgml2html  |    3 ++-
 doc/sgml2latex |    3 ++-
 doc/sgml2txt   |    3 ++-
 3 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/doc/sgml2html b/doc/sgml2html
index a5bbee9..6072a7a 100755
--- a/doc/sgml2html
+++ b/doc/sgml2html
@@ -34,7 +34,8 @@ $progs = {
   "GROFFMACRO" => "-ms",
   "AWK" => "/usr/share/linuxdoc-tools/awkwhich"
 };
-$ENV{"SGML_CATALOG_FILES"} = "$DataDir/dtd/catalog";
+$ENV{"SGML_CATALOG_FILES"} = "$DataDir/dtd/catalog" .
+  (defined $ENV{SGML_CATALOG_FILES} ? ":$ENV{SGML_CATALOG_FILES}" : "");
 
 require "$FindBin::Bin/LinuxDocTools.pm";
 &LinuxDocTools::init;
diff --git a/doc/sgml2latex b/doc/sgml2latex
index 02b60d9..c48f787 100755
--- a/doc/sgml2latex
+++ b/doc/sgml2latex
@@ -34,7 +34,8 @@ $progs = {
   "GROFFMACRO" => "-ms",
   "AWK" => "/usr/share/linuxdoc-tools/awkwhich"
 };
-$ENV{"SGML_CATALOG_FILES"} = "$DataDir/dtd/catalog";
+$ENV{"SGML_CATALOG_FILES"} = "$DataDir/dtd/catalog" .
+  (defined $ENV{SGML_CATALOG_FILES} ? ":$ENV{SGML_CATALOG_FILES}" : "");
 
 require "$FindBin::Bin/LinuxDocTools.pm";
 &LinuxDocTools::init;
diff --git a/doc/sgml2txt b/doc/sgml2txt
index dfc017d..af0bcb4 100755
--- a/doc/sgml2txt
+++ b/doc/sgml2txt
@@ -34,7 +34,8 @@ $progs = {
   "GROFFMACRO" => "-ms",
   "AWK" => "/usr/share/linuxdoc-tools/awkwhich"
 };
-$ENV{"SGML_CATALOG_FILES"} = "$DataDir/dtd/catalog";
+$ENV{"SGML_CATALOG_FILES"} = "$DataDir/dtd/catalog" .
+  (defined $ENV{SGML_CATALOG_FILES} ? ":$ENV{SGML_CATALOG_FILES}" : "");
 
 require "$FindBin::Bin/LinuxDocTools.pm";
 &LinuxDocTools::init;
-- 
1.7.1

-------------- next part --------------
>From 55c92bbe1f7436a4d636ec27e38006c923f83349 Mon Sep 17 00:00:00 2001
From: Robert Scheck <robert at fedoraproject.org>
Date: Tue, 27 Nov 2018 23:00:01 +0100
Subject: [PATCH] Add alternative path for SGML ISO entities 8879.1986 to $SGML_CATALOG_FILES

---
 doc/LinuxDocTools.pm |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/doc/LinuxDocTools.pm b/doc/LinuxDocTools.pm
index 39bb401..d73fc75 100644
--- a/doc/LinuxDocTools.pm
+++ b/doc/LinuxDocTools.pm
@@ -242,6 +242,7 @@ sub process_options
   #   removes iso-entites sub directory after doing make install.)
   #
   $ENV{SGML_CATALOG_FILES} .= (defined $ENV{SGML_CATALOG_FILES} ? ":" : "") .
+     "$main::prefix/share/sgml/sgml-iso-entities-8879.1986/catalog:";
      "$main::prefix/share/sgml/entities/sgml-iso-entities-8879.1986/catalog";
   $ENV{SGML_CATALOG_FILES} .= ":$main::DataDir/linuxdoc-tools.catalog";
   $ENV{SGML_CATALOG_FILES} .= ":$main::/etc/sgml.catalog";
-- 
1.7.1



More information about the Bird-users mailing list