Summary: | gtk+-2.12.9-r1 triggers alpha*|ia64*|powerpc64*|mips64*|sparc64*|x86_64*) die "this code is not 64bit clean";; | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Ferris McCormick (RETIRED) <fmccor> |
Component: | [OLD] GNOME | Assignee: | Gentoo Linux Gnome Desktop Team <gnome> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | rggjan |
Priority: | High | ||
Version: | 2007.0 | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
URL: | http://bugzilla.gnome.org/show_bug.cgi?id=525746 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | Patch to build modules/printbackends/cups/gtkprintbackendcups.c correctly |
Description
Ferris McCormick (RETIRED)
![]() 2.12.9 actually failed to properly enable cups support, even with the useflag enabled. So that explains why 2.12.9 doesn't trigger the QA notice. So yeah, the cups code was modified bewteen 2.12.8 and .9, I guess we should look into it. Any help will be greatly appreciated. :) Created attachment 147387 [details, diff]
Patch to build modules/printbackends/cups/gtkprintbackendcups.c correctly
We need to get glib/gstdio.h included in order to have a correct declaration for g_open(). This does not happen here (might be a problem with glib.h; it includes everything else, it seems).
Attached patch accomplishes this, and with it installed,
USE=cups emerge -v =x11-libs/gtk+-2.12.9-r1
works fine. I could attach an updated ebuild, but what I do is add the patch to gtk+/files and at some reasonable place add this to the -2.12.9-r1 ebuild:
=====================
# Fix problem with cups backend
use cups && epatch "${FILESDIR}/${PN}-2.12.9-r1-cups.patch"
=====================
No, I don't know why USE=cups works with other versions of gtk+ --- perhaps the cups backend has never been built before, because this looks like a day-1 oversight to me.
2.12.8 has cups backend working fine, 2.12.9 breaks it due to configure.in changes, 2.12.9-r1 fixes that. But as you found, there seem to be 64bit issues now. Including individual headers is not future-proof (though maintainable as it's inside glib itself), and the real problem is probably the lack of including the header in glib.h. Fixing it in that one place means there will be just problems elsewhere and that's just a workaround *** Bug 215318 has been marked as a duplicate of this bug. *** Fixed in gtk+-2.12.9-r2 among other things by grabbing some patches from SVN gtk-2.12 branch, thanks |