[PATCH] assorted fixes to man page generator
Alexander Bokovoy
ab at samba.org
Thu Oct 12 12:36:49 UTC 2017
On pe, 06 loka 2017, Alexander Bokovoy via samba-technical wrote:
> Hi,
>
> Please review and push.
>
Andreas gave me RB+ and I tried to push the patches updated with bug
references twice today but the builds fail in unrelated places.
I'm attaching updated patches here for reference to re-push when
autobuild is stable.
--
/ Alexander Bokovoy
-------------- next part --------------
>From 182983b58db60457fb162eb6e2d2db31874c586c Mon Sep 17 00:00:00 2001
From: Alexander Bokovoy <ab at samba.org>
Date: Fri, 6 Oct 2017 22:49:11 +0300
Subject: [PATCH 1/2] smb.conf.5: sort parameters alphabetically
Content of each separate parameter description file is added
into a parameters.all.xml file before compiling smb.conf.5.
The issue is that POSIX file systems generally don't give any
promises over how glob-produced files are sorted. Thus, we need to sort
them in a predictable way.
This patch adds sorting based on a file name as a string. Since all
parameter files named after the parameter itself (plus .xml), we can
use file name sorting.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=13081
Signed-off-by: Alexander Bokovoy <ab at samba.org>
Reviewed-By: Andreas Schneider <asn at samba.org>
---
docs-xml/wscript_build | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/docs-xml/wscript_build b/docs-xml/wscript_build
index e329ad40295..5670572167f 100644
--- a/docs-xml/wscript_build
+++ b/docs-xml/wscript_build
@@ -1,5 +1,6 @@
#!/usr/bin/env python
from samba_utils import save_file
+import os
manpages='''
manpages/cifsdd.8
manpages/dbwrap_tool.1
@@ -131,7 +132,13 @@ def smbdotconf_generate_parameter_list(task):
save_file(parameter_all, t , create_dir=True)
return 0
-articles = bld.path.ant_glob("smbdotconf/**/*.xml", flat=True)
+# Since nothing really forces sorting in glob, we have to sort by file name
+# POSIX file systems aren't required to return sorted content but we want
+# smb.conf parameters to be sorted alphabetically
+sources = bld.path.ant_glob("smbdotconf/**/*.xml", flat=False)
+articles = " ".join(sorted([x.relpath_gen(bld.path) for x in sources],
+ key=lambda m: m.split(os.sep)[-1]))
+
parameter_all = 'smbdotconf/parameters.all.xml'
bld.SAMBA_GENERATOR(parameter_all,
source=articles,
--
2.13.6
>From bc9d5fd52625f8b04f9b0c293be70fd9b2653048 Mon Sep 17 00:00:00 2001
From: Alexander Bokovoy <ab at samba.org>
Date: Fri, 6 Oct 2017 22:52:36 +0300
Subject: [PATCH 2/2] man pages: properly ident lists
It took me some time (original bug was filed in 2013!) but now
lists in smb.conf.5 are properly idented.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=9613
Signed-Off-By: Alexander Bokovoy <ab at samba.org>
Reviewed-By: Andreas Schneider <asn at samba.org>
---
docs-xml/xslt/man.xsl | 1 +
1 file changed, 1 insertion(+)
diff --git a/docs-xml/xslt/man.xsl b/docs-xml/xslt/man.xsl
index d9cc1def72c..e252b56d5e5 100644
--- a/docs-xml/xslt/man.xsl
+++ b/docs-xml/xslt/man.xsl
@@ -43,6 +43,7 @@
<!-- * content (if any) before getting the list items -->
<xsl:apply-templates
select="*[not(self::listitem) and not(self::title)]"/>
+ <xsl:text>
.RS
</xsl:text>
<xsl:apply-templates select="listitem"/>
<xsl:if test="(parent::para or parent::listitem) or following-sibling::node()">
<xsl:text>.sp
</xsl:text>
--
2.13.6
More information about the samba-technical
mailing list