! Please note that this is a snapshot of our old Bugzilla server, which is read only since May 29, 2020. Please go to gitlab.xfce.org for our new server !
GIT Master: Thunar doesn't obey --disable-gtk-doc (html, pdf)
Status:
RESOLVED: INVALID
Product:
Thunar
Component:
Documentation

Comments

Description Ali Akcaagac 2017-10-26 15:01:36 CEST
The GIT Master version of Thunar has issues detecting --disable-gtk-doc* and continues building the HTML documentations for thunarx (iirc). No matter what option to be entered after configure, the HTML documents are still being generated and installed...

May be a configure.ac issue ?
Comment 1 Andre Miranda editbugs 2017-10-29 04:35:18 CET
Passing --disable-gtk-doc to ./autogen.sh or ./configure or just omitting this option yields:

checking for gtk-doc... yes
checking for gtkdoc-check... gtkdoc-check.test
checking for gtkdoc-check... /usr/bin/gtkdoc-check
checking for gtkdoc-rebase... /usr/bin/gtkdoc-rebase
checking for gtkdoc-mkpdf... /usr/bin/gtkdoc-mkpdf
checking whether to build gtk-doc documentation... no

And no documentation is built nor installed. Only when --enable-gtk-doc is passed it yields:
checking whether to build gtk-doc documentation... yes

However, if you run make and rerun ./configure --disable-gtk-doc it'll be ignored, only after make clean --disable-gtk-doc *and* --enable-gtk-doc will be correctly evaluated again.

Looking at configure.ac.in's history, the gtk-doc support was disabled in 2015 [1] and I recently enabled[2] it after Skunnyk's improvements[3][4] to the docs generation. The only difference between [1] and [2] is the "Compensate for broken gtk-doc" part, but I think it's unrelated.

Well, my autotools skills are limited to say if the current behavior is broken or not, IHMO requiring make clean to disable the docs is not exactly a bug, but yes, it's a bit confusing.

1 - https://git.xfce.org/xfce/thunar/commit/?id=d1110b89b3b9553e05329f7293d1b8998894e5ba
2 - https://git.xfce.org/xfce/thunar/commit/?id=b6ad9271633946bbd64b3969d072f75468e4236a
3 - https://git.xfce.org/xfce/thunar/commit/?id=a44af0f35ba58a5580cf9efb84d1716369b923f8
4 - https://git.xfce.org/xfce/thunar/commit/?id=babf85c175e090f59f26b7af7579811687303129
Comment 2 Ali Akcaagac 2017-10-29 14:36:50 CET
Well if you enter "./configure --help | more" and come to the part with the gtk-doc stuff (this also includes the html part) then you see that gtk-doc is by default disabled while the gtk-doc-html part is enabled. Regardless what I enter...

--disable-gtk-doc or
--disable-gtk-doc-html

(don't nail me on the correct typing now because I reply by memorizing the arguments now)

The docs still being installed.

From what I saw is, that the gtk-docs for the html part of thunarx (iirc) is installed regardless if you excplicit disable the build of the docs or not...

The correct behaviour would be, if I disable the build of gtk-doc (and even the html part and pdf part or whatever the configure provides) then the building of the doc should be skipped and NOT be installed when running "make install".
Comment 3 Andre Miranda editbugs 2017-10-29 17:57:28 CET
Even glib tells gtk-doc-html is enabled while gtk-doc and gtk-doc-html is not:
--enable-gtk-doc        use gtk-doc to build documentation [[default=no]]
--enable-gtk-doc-html   build documentation in html format [[default=yes]]
--enable-gtk-doc-pdf    build documentation in pdf format [[default=no]]

And as I told you before, with a **freshly cloned repository** or **after make clean**, passing --disable-gtk-doc works for me, no documentation is generated nor installed. Isn't that the case for you?
Comment 4 Skunnyk editbugs 2017-10-29 19:08:30 CET
--enable-gtk-doc-html default to yes, but only if --enable-gtk-doc is set. 

If you run --enable-gtk-doc, gtk doc will be created, but a make clean does not clean the docs/ folder. So even if you run --disable-gtk-doc after a first run with enable-gtk-doc, docs/ folder stay in place. 

make install simply install the file that are present in the arborescence, whatever the configure options. So if there is docs/ file, they are installed.

It's not related to thunar, the "problem" exists on all components where I tested the gtk-doc compilation (even gnome components like vte or others).

You can run a make distclean to clean the whole arborescence before changing configure options.
Comment 5 Andre Miranda editbugs 2017-10-29 19:21:16 CET
Yes, Skunnyk is right, make clean is not enough, make distclean is required to clean all generated doc files.
Closing since it's likely an upstream (gtk-doc) issue than Thunar's and other projects present the same behavior, reopen if you know a way to avoid distclean while toggling gtk-doc generation.
Comment 6 Ali Akcaagac 2017-10-29 20:38:54 CET
Ok I think I made a mistake in my explaination...

Let me retry the following reproducable steps...

1) git checkout a fresh thunar (or alternative download the thunar-master.tar.bz2 file)
2) ./autogen ; make dist
3) grab the generate Thunar-1.6.12.tar.bz2 file that is generated inside
4) untar that file, which generates a new Thunar-1.6.12 directory
5) cd into that dir
6) ./configure --prefix=/tmp/test --disable-gtk-doc ; make ; make install

The interesting part is as follows..

If I end up building Thunar from using git... and applying the following commands

./autogen.sh --prefix=/tmp/test --disable-gtk-doc --enable-maintainer-mode ; make ; make install

... then /tmp/test/share won't contain a gtk-doc subfolder...

But doing the steps as decribed above with "make dist" that generates a distributable file then the gtk-doc will be generated nonetheless...

Any ideas why this is happening ?
Comment 7 Ali Akcaagac 2017-10-29 20:41:28 CET
> But doing the steps as decribed above with "make dist" that generates a distributable file then 
> the gtk-doc will be generated nonetheless...

What I wanted to say by this is: When I use the configure script made by the "make dist" then regardless if I enter --disable-gtk-doc or not to the ./configure script, the gtk-doc for thunarx will be created and installed after entering "make install" and then cd'ing to /tmp/test/share ...
Comment 8 Skunnyk editbugs 2017-10-29 21:35:19 CET
Ok, sorry for the misunderstanding :)

So yes, I confirm that when you create a release tarball (make distcheck), it runs the DISTCHECK_CONFIGURE_FLAGS which include --enable-gtk-doc, and the gtk doc files are included in the tarball (so in the make install step), nonetheless the configure option.

It's not a thunar problem, and I don't know if we want / how to fix that :)

Bug #13953

Reported by:
Ali Akcaagac
Reported on: 2017-10-26
Last modified on: 2017-10-29

People

Assignee:
Xfce Bug Triage
CC List:
4 users

Version

Attachments

Additional information