#9760 closed defect (fixed)
Samba-4.6.7 will not build with libxslt-1.1.30
| Reported by: | Wayne Blaszczyk | Owned by: | Pierre Labastie |
|---|---|---|---|
| Priority: | normal | Milestone: | 8.2 |
| Component: | BOOK | Version: | SVN |
| Severity: | medium | Keywords: | |
| Cc: |
Description
I get the following error:
[3488/3601] Generating manpages/smb.conf.5
runtime error: file file:///usr/share/xml/docbook/xsl-stylesheets-1.79.1/lib/lib.xsl line 58 element choose
xsltApplySequenceConstructor: A potential infinite template recursion was detected.
You can adjust xsltMaxDepth (--maxdepth) in order to raise the maximum number of nested template calls and variables/params (currently set to 3000).
Templates:
#0 name string.subst
#1 name string.subst
#2 name string.subst
#3 name string.subst
#4 name string.subst
#5 name string.subst
#6 name string.subst
#7 name string.subst
#8 name string.subst
#9 name string.subst
#10 name string.subst
#11 name string.subst
#12 name string.subst
#13 name string.subst
#14 name string.subst
Variables:
#0
replacement
target
string
#1
target
string
#2
string
#3
replacement
target
string
#4
target
string
#5
string
#6
replacement
target
string
#7
target
string
#8
string
#9
replacement
target
string
#10
target
string
#11
string
#12
replacement
target
string
#13
target
string
#14
string
error: file default/docs-xml/manpages/smb.conf.5.xml
xsltRunStylesheet : run failed
Waf: Leaving directory `/opt/sources/samba-4.6.7/bin'
Build failed: -> task failed (err #11):
{task: manpages/smb.conf.5 smb.conf.5.xml,parameters.all.xml -> smb.conf.5}
make: *** [Makefile:8: all] Error 1
Change History (8)
comment:3 by , 9 years ago
I've been hit by this issue when rebuilding samba for new perl version. I see archlinux has the same patch too. So there could be a need to patch docbook-xsl. OTOH, maybe just increasing recursion depth for xsltproc could be enough... I do not know enough of the waf build system to do that cleverly, but something like:
sed -i 's/xsltproc/& --maxdepth 4000/' bin/c4che/default.cache.py
after running configure, could do.
comment:4 by , 9 years ago
Also, the recursion depth can be increased in libxslt with:
sed -i s/3000/5000/ libxslt/transform.c
comment:5 by , 9 years ago
The faulty commit might be https://git.gnome.org/browse/libxslt/commit/?id=1c8e0e556289582fece6f1a59113a7a5bef46ba4
comment:6 by , 9 years ago
| Owner: | changed from to |
|---|---|
| Status: | new → assigned |
Just built systemd with meson, after rebuilding libxslt with the sed: man pages seem to be correctly generated...
comment:7 by , 9 years ago
| Resolution: | → fixed |
|---|---|
| Status: | assigned → closed |
Fixed at r19272. If this happens again, just change 5000 to something higher...

To fix this issue, I applied the following patch to docbook-xsl-1.79.1.
https://bugs.debian.org/cgi-bin/bugreport.cgi?att=1;bug=750593;filename=nonrecursive-string-subst.patch;msg=66
Both Arch and Gentoo apply the same patch.