Bug 11492 - Location of xml/catalog directory should be configurable
Summary: Location of xml/catalog directory should be configurable
Status: NEW
Alias: None
Product: Samba 4.1 and newer
Classification: Unclassified
Component: Build (show other bugs)
Version: 4.2.3
Hardware: All All
: P5 normal (vote)
Target Milestone: ---
Assignee: Samba QA Contact
QA Contact: Samba QA Contact
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-09-03 22:16 UTC by Timur Bakeyev
Modified: 2015-09-04 10:19 UTC (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Timur Bakeyev 2015-09-03 22:16:01 UTC
To build Samba documentation from the supplied XML files you need to specify where all the Docbook templates are situated. This is described in a catalog file, which on Linux is situated in /etc/xml/catalog normally. On FreeBSD this location is different.

In buildtools/wafsamba/wafsamba.py we have:

bld.env.SAMBA_CATALOGS = 'file:///etc/xml/catalog file:///usr/local/share/xml/catalog file://' + bld.srcnode.abspath() + '/bin/default/docs-xml/build/catalog.xml'

That looks like attempt to address location of FreeBSD catalog file, but it's wrong, as /usrlocal is a default prefix, but could be anything set during the build process.

Better and more universal case would be to use XML_CATALOG_FILES environment variable to override that location or at least command line switch to waf --configure.

From XMLCATALOG(1):

ENVIRONMENT
       XML_CATALOG_FILES
           XML catalog behavior can be changed by redirecting queries to the
           user's own set of catalogs. This can be done by setting the
           XML_CATALOG_FILES environment variable to a list of catalogs. An
           empty one should deactivate loading the default /etc/xml/catalog
           catalog.