| Summary: | ENTITY variables in poky.ent not expanding consistently in HTML and PDF versions | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | [Documentation] General Docs | Reporter: | Scott Rifenbark <srifenbark> | ||||||||
| Component: | docs-general | Assignee: | Richard Purdie <richard.purdie> | ||||||||
| Status: | RESOLVED FIXED | QA Contact: | Libertad <libertad.gonzalez.de.la.cruz> | ||||||||
| Severity: | critical | ||||||||||
| Priority: | High | CC: | alexandru.c.georgescu, bluelightning, jessica.zhang, jose.perez.carranza, richard.purdie, srifenbark | ||||||||
| Version: | unspecified | ||||||||||
| Target Milestone: | 1.8 M2 | ||||||||||
| Hardware: | x86 | ||||||||||
| OS: | Multiple | ||||||||||
| Whiteboard: | |||||||||||
| OS type for building Yocto: | --- | Type of Regression: | --- | ||||||||
| Verified: | Documentation change: | Done (doc changes complete) | |||||||||
| Attachments: |
|
||||||||||
|
Description
Scott Rifenbark
2015-01-13 17:30:04 UTC
Created attachment 2319 [details]
Explanation for &DISTRO; expansions (WORKED and FAILED)
Created attachment 2320 [details]
poky.ent file with all the ENTITY declarations.
adding self to CC list and others I can confirm I can reproduce this on Ubuntu 14.10 myself. I tried building libxslt 1.1.26, the version in Ubuntu 12.04 and using that, the same problem exists there. its therefore likely something in one of the dependencies of libxslt such as libxml2 which is causing the issue. Additionally, reverting to libxml 2.7.8 fixes the generated document so it looks like a libxml2 issue. http://git.yoctoproject.org/cgit.cgi/poky-contrib/commit/?h=rpurdie/t222&id=93739f10bb026a7ec8f1a3d21c309980471c36bd and the preceeding commit have my debug info so far The issue is caused by the CVE-2014-3660 fix applied to libxml2. Its fixed in master of libxml2 but not in any release. The fix is: https://git.gnome.org/browse/libxml2/commit/?id=72a46a519ce7326d9a00f0b6a7f2a8e958cd1675 We've seen such differences in testing as some people have fixed CVE, some have not. We should integrate the CVE into Yocto, then give Scott instructions on how to use the Yocto built xsltproc command until the fix makes it into the various distros. Just to capture the commit log for history: Add to local.conf: PREFERRED_VERSION_libxslt-native = "1.1.26" PREFERRED_VERSION_libxml2-native = "2.7.8" Reproducer for doc bug: cd documentation/adt-manual /media/build1/poky/build/tmp/sysroots/x86_64-linux/usr/bin/xsltproc --xinclude -o adt-manual.html adt-manual-customization.xsl adt-manual.xml With bug: grep /opt/ * -r | grep env adt-command.xml: $ source /opt/poky/&DISTRO;/environment-setup-i586-poky-linux adt-manual.html: /opt/poky//environment-setup-x86_64-poky-linux adt-manual.html: $ source /opt/poky//environment-setup-i586-poky-linux adt-manual.html: $ source /opt/poky/1.8/environment-setup-i586-poky-linux adt-prepare.xml: $ source /opt/poky/&DISTRO;/environment-setup-i586-poky-linux (note missing 1.8) without bug: $ grep /opt/ * -r | grep env adt-command.xml: $ source /opt/poky/&DISTRO;/environment-setup-i586-poky-linux adt-manual.html: /opt/poky/1.8/environment-setup-x86_64-poky-linux adt-manual.html: $ source /opt/poky/1.8/environment-setup-i586-poky-linux adt-manual.html: $ source /opt/poky/1.8/environment-setup-i586-poky-linux adt-prepare.xml: $ source /opt/poky/&DISTRO;/environment-setup-i586-poky-linux (note 1.8 present) So to work around this issue, we can use the build system to help us. Setup a checkout of poky somewhere and: bitbake libxslt-native then export PATH=<path to buliddir>/tmp/sysroots/x86_64-linux/usr/bin:$PATH then run doc make commands as usual. If you change to a new shell, you need to run the export PATH command again. You need a branch of poky with the fix in it, currently that is master-next but it will merge to master soon. Once the upstream distros update their packages to include the fix to libxml2, this workaround will no longer be needed. Finding information about resolution of this issue in the various distributions is distressingly difficult; despite being fixed upstream in October, the fix is only now trickling into some distributions, for others it's just not clear what the plans are for fixing it. FWIW, it looks like OpenSuSE has a fix for this in their package source although I can't tell if it has actually been pushed out to package updates. Debian has a bug open but there aren't any comments from anyone other than the submitter at the moment: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=768089 I couldn't find anything related for Fedora or Ubuntu. Setting the documentation flag to "done" for this bug. Scott |