|Summary:||x11-misc/xscreensaver-6.03 fails to configure when USE +gtk but -gdk-pixbuf|
|Product:||Gentoo Linux||Reporter:||Pascal Jäger <pascal.jaeger>|
|Component:||Current packages||Assignee:||No maintainer - Look at https://wiki.gentoo.org/wiki/Project:Proxy_Maintainers if you want to take care of it <maintainer-needed>|
|Package list:||Runtime testing required:||---|
Description Pascal Jäger 2022-03-04 21:10:20 UTC
Created attachment 766257 [details] build.log When xscreensaver is emerged with USE= gtk -gdk-pixbuf, the build fails in the configure phase even though in the log it just shows a warning because GTK is being used but there is no GDK-Pixbuf. I think gtk is a USE-Flag that should depend on USE-flag gdk-pixbuf instead of being independent from each other.
Comment 3 Tom Gillespie 2022-07-11 08:14:20 UTC
This issue is a bit more tangled (I'm looking at 6.04). If you set -gdk-pixbuf then in theory you should be able to get everything to build if you add -gtk and -png. However the ebuild has an incorrect use flag dependency stating that opengl requires png to be enabled, which is false.
Comment 4 Pascal Jäger 2022-10-17 09:21:46 UTC
I filed a bug upstream because this is a just a warning, which is kind of confusing.
Comment 5 Pascal Jäger 2022-10-17 10:20:05 UTC
This IS really tangled. So, as far as I can tell the problem here is, that you have to have either --with-gtk or --with-motif, otherwise make install will fail. Since we do --without-motif in the ebuild, there is not much sense in having gtk as a use-flag. Then on the other hand, the build is fine as long as I do things manually. (So ./configure, make, make install) but it's not when I do it in portage. I think that is a problem of the configure.ac script. This one exits with status 1 as soon as there is a warning. Portage interprets this as an error end exits.
Comment 6 Pascal Jäger 2022-10-18 08:48:38 UTC
Just for future reference on how this works: As I initially thought --with-gtk and --with-motif controls which kind of toolkit is used to display the xscreensaver-settings menu. BUT: Motif is unmaintained and we therefore do --without-motif in the ebuild. Now this would render the USE-flag --with-gtk obsolete, it it weren't for the non-gtk install patch (https://github.com/gentoo/gentoo/blob/master/x11-misc/xscreensaver/files/xscreensaver-6.01-non-gtk-install.patch) So, it is possible to build with --without-gtk and --without-motif now. One just don't get the xscreensaver-settings program. Now coming to this bug. --without-gtk and --without-motif fails in because upstream does not support building it without both anymore. (I guess, could be a mistake as well rather than a conscious decision.) Therefore we need to disable some exit codes of the configure.ac script. This (among other things) is what I am doing with the new patch for version 6.05 (https://github.com/gentoo/gentoo/pull/27807/files#diff-c0b4ea605f12bf14d09ac50a40ac7f24e8f9dbb915e8ddbf3c9a9c651ea53adc, line 12 in the patch) This will give us the ability back to build with USE="-gtk -gdk-pixbuf -png". (line 20 and 28 in the patch) This patch also alters the exit code for when gtk is found but gdk-pixbuf is not. (I think this is a mistake by upstream, because the script even mentions that it should be possible to use the png library when gdk-pixbuf is not found. I wrote upstream a bug report via email for both problems. I think at least the latter should be fixed.
Comment 7 Larry the Git Cow 2022-10-30 09:40:16 UTC
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=79d3bbef1b508c36bf1f88481a9d791098b438cd commit 79d3bbef1b508c36bf1f88481a9d791098b438cd Author: Pascal Jäger <firstname.lastname@example.org> AuthorDate: 2022-10-16 17:14:35 +0000 Commit: Sam James <email@example.com> CommitDate: 2022-10-30 09:37:56 +0000 x11-misc/xscreensaver: version bump to 6.05 * New patch for handsys manners * Building with USE="-opengl" is not supported anymore * Also added a patch for -gtk builds, set GTK_SHAREDIR because when build with USE="-gtk" it is not set and then installs .service file into / * Building with USE="-xft" is not supported anymore * Delete .service file when USE="-systemd" Closes: https://bugs.gentoo.org/869218 Closes: https://bugs.gentoo.org/851057 Closes: https://bugs.gentoo.org/834593 Closes: https://bugs.gentoo.org/851834 Closes: https://bugs.gentoo.org/830777 Signed-off-by: Pascal Jäger <firstname.lastname@example.org> Signed-off-by: Sam James <email@example.com> x11-misc/xscreensaver/Manifest | 1 + .../xscreensaver-6.05-configure-exit-codes.patch | 29 +++ ...screensaver-6.05-remove-update-icon-cache.patch | 13 ++ ...creensaver-6.05-teach-handsy-some-manners.patch | 42 ++++ x11-misc/xscreensaver/metadata.xml | 9 +- x11-misc/xscreensaver/xscreensaver-6.05.ebuild | 243 +++++++++++++++++++++ 6 files changed, 336 insertions(+), 1 deletion(-)