After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 762674 - Compilation error building html in gst-plugins-base-1.7.2
Compilation error building html in gst-plugins-base-1.7.2
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other Linux
: Normal normal
: 1.7.90
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2016-02-25 11:56 UTC by Lim Siew Hoon
Modified: 2016-02-26 13:01 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
encoding-profile.xml (102.58 KB, text/xml)
2016-02-26 09:53 UTC, Lim Siew Hoon
  Details
Remove the empty lines in between <refsect2 ..> and </refsect2> (2.71 KB, patch)
2016-02-26 09:54 UTC, Lim Siew Hoon
committed Details | Review

Description Lim Siew Hoon 2016-02-25 11:56:40 UTC
Failed in building the html using gst-plugins-base-1.7.2.
It is ok in previous version 1.6.3 version.


make[3]: Leaving directory `/root/open_media/1.7.2/gst-plugins-base-1.7.2/docs/design'
Making all in libs
make[3]: Entering directory `/root/open_media/1.7.2/gst-plugins-base-1.7.2/docs/libs'
  DOC   Building HTML
../xml/encoding-profile.xml:219: parser error : Opening and ending tag mismatch: refsect2 line 211 and para
</para>
       ^
../xml/encoding-profile.xml:283: parser error : Opening and ending tag mismatch: refsect3 line 275 and para
</para>
       ^
../xml/encoding-profile.xml:299: parser error : Opening and ending tag mismatch: para line 292 and refsect3
 </refsect3>
            ^
../xml/encoding-profile.xml:300: parser error : Opening and ending tag mismatch: para line 254 and refsect2
</refsect2>
           ^
../gst-plugins-base-libs-docs.sgml:190: element include: XInclude error : could not load ../xml/encoding-profile.xml, and no fallback was found
make[3]: *** [html-build.stamp] Error 6
make[3]: Leaving directory `/root/open_media/1.7.2/gst-plugins-base-1.7.2/docs/libs'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/root/open_media/1.7.2/gst-plugins-base-1.7.2/docs'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/open_media/1.7.2/gst-plugins-base-1.7.2'
make: *** [all] Error 2
[root@localhost gst-plugins-base-1.7.2]#
Comment 1 Sebastian Dröge (slomo) 2016-02-25 12:18:57 UTC
xml/encoding-profile.xml is supposed to be generated by gtk-doc during the build. Are you using a special version of gtk-doc? It works fine here with 1.24
Comment 2 Lim Siew Hoon 2016-02-25 12:33:42 UTC
(In reply to Sebastian Dröge (slomo) from comment #1)
> xml/encoding-profile.xml is supposed to be generated by gtk-doc during the
> build. Are you using a special version of gtk-doc? It works fine here with
> 1.24

I'm using CentOS 7 64 bit.

[root@localhost open_media]# yum info gtk-doc
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: centos.biz.net.id
 * extras: centos.exabytes.com.my
 * updates: centos.exabytes.com.my
Installed Packages
Name        : gtk-doc
Arch        : noarch
Version     : 1.19
Release     : 3.el7
Size        : 2.1 M
Repo        : installed
From repo   : base
Summary     : API documentation generation tool for GTK+ and GNOME
URL         : http://www.gtk.org/gtk-doc
License     : GPLv2+ and GFDL
Description : gtk-doc is a tool for generating API reference documentation.
            : It is used for generating the documentation for GTK+, GLib
            : and GNOME.

[root@localhost open_media]#
Comment 3 Sebastian Dröge (slomo) 2016-02-25 12:40:39 UTC
No idea then, sorry. It seems like it generated a broken file for you for whatever reason. Look at it and try to find what exactly is broken and where it comes from :)
Comment 4 Tim-Philipp Müller 2016-02-25 17:31:17 UTC
Could you attach the docs/libs/xml/encoding-profile.xml file?
Comment 5 Lim Siew Hoon 2016-02-26 09:53:37 UTC
Created attachment 322442 [details]
encoding-profile.xml

This issue is trigger by this commit checked in.

commit 512ac3ea72d4203053e8ef63514840bb9104aa4d
Author: Thibault Saunier <tsaunier@gnome.org>
Date:   Fri Dec 11 15:38:00 2015 +0100

    encodebin: Implement an encoding profile serialization format

    https://bugzilla.gnome.org/show_bug.cgi?id=759356

Eventually, the problem is can't have empty line in between <refsect2 id ...> </refsect2>.


If got empty line, it will add in <para></para>.
Comment 6 Lim Siew Hoon 2016-02-26 09:54:54 UTC
Created attachment 322443 [details] [review]
Remove the empty lines in between <refsect2 ..> and </refsect2>

It is working on my side with this code fix.
Comment 7 Sebastian Dröge (slomo) 2016-02-26 10:07:31 UTC
Comment on attachment 322443 [details] [review]
Remove the empty lines in between <refsect2 ..> and </refsect2>

That looks like a bug in gtk-doc or the tools it is using for parsing XML then.
Comment 8 Stefan Sauer (gstreamer, gtkdoc dev) 2016-02-26 12:41:36 UTC
The patch is right. It is standard behavior in gtk-doc that for blanks lines it inserts:
</para>
<para>
So if you write doc as xml, then either write blank lines as '* ' or simillar or strip them as in the patch.
Comment 9 Sebastian Dröge (slomo) 2016-02-26 12:46:14 UTC
Really? That's not great and quite unexpected IMHO...
Comment 10 Sebastian Dröge (slomo) 2016-02-26 12:49:03 UTC
commit 5ae5f9055f788041b060e040bbe9d65cc8729bef
Author: Lim Siew Hoon <siew.hoon.lim@intel.com>
Date:   Fri Feb 26 17:09:06 2016 +0800

    pbutils: docs: Remove the empty lines in between <refsect2> and </refsect2>
    
    They are converted into <para></para> by gtk-doc...
    
    https://bugzilla.gnome.org/show_bug.cgi?id=762674
Comment 11 Stefan Sauer (gstreamer, gtkdoc dev) 2016-02-26 13:01:13 UTC
(In reply to Sebastian Dröge (slomo) from comment #9)
> Really? That's not great and quite unexpected IMHO...

Its been there since ages (wasn't my idea). And I don't dare to remove it now.
Comment 12 Sebastian Dröge (slomo) 2016-02-26 13:01:51 UTC
Yes that would probably break a lot of stuff :)