Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 239568 - media-video/totem-2.22.2-r1 fails to build (missing XInput dep?)
Summary: media-video/totem-2.22.2-r1 fails to build (missing XInput dep?)
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Linux Gnome Desktop Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-10-04 17:05 UTC by Evil Compile Person
Modified: 2008-11-02 03:18 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Evil Compile Person 2008-10-04 17:05:05 UTC
libtool: compile:  x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -D_REENTRANT -DDBUS_API_SUBJECT_TO_CHANGE -DGNOMELOCALEDIR=\"/usr/share/locale\" -DGCONF_PREFIX=\"/apps/totem\" -DDATADIR=\"/usr/share\" -DLIBEXECDIR=\"/usr/libexec\" -DBINDIR=\"/usr/bin\" -DLOGO_PATH=DATADIR\"\"G_DIR_SEPARATOR_S\"totem\"G_DIR_SEPARATOR_S\"totem_logo.png\" -DORBIT2=1 -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/libgnomeui-2.0 -I/usr/include/libart-2.0 -I/usr/include/gconf/2 -I/usr/include/gnome-keyring-1 -I/usr/include/libgnome-2.0 -I/usr/include/libbonoboui-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/gnome-vfs-2.0 -I/usr/lib64/gnome-vfs-2.0/include -I/usr/include/orbit-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/bonobo-activation-2.0 -I/usr/include/libxml2 -I/usr/include/gail-1.0 -I/usr/include/gnome-vfs-module-2.0 -I/usr/include/totem-pl-parser/1/plparser -I/usr/include/evolution-data-server-2.22 -I/usr/include/gstreamer-0.10 -Wall -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wno-sign-compare -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -Wall -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wcast-align -Wsign-compare -fno-strict-aliasing -O2 -pipe -MT libtotemscrsaver_la-totem-scrsaver.lo -MD -MP -MF .deps/libtotemscrsaver_la-totem-scrsaver.Tpo -c totem-scrsaver.c  -fPIC -DPIC -o .libs/libtotemscrsaver_la-totem-scrsaver.o                                                       
In file included from totem-scrsaver.c:35:                                         
/usr/include/X11/extensions/XTest.h:50:35: error: X11/extensions/XInput.h: No such file or directory                                                                  
In file included from totem-scrsaver.c:35:                                         
/usr/include/X11/extensions/XTest.h:104: error: expected declaration specifiers or '...' before 'XDevice'                                                             
/usr/include/X11/extensions/XTest.h:114: error: expected declaration specifiers or '...' before 'XDevice'                                                             
/usr/include/X11/extensions/XTest.h:124: error: expected declaration specifiers or '...' before 'XDevice'                                                             
/usr/include/X11/extensions/XTest.h:133: error: expected declaration specifiers or '...' before 'XDevice'
make[2]: *** [libtotemscrsaver_la-totem-scrsaver.lo] Error 1
make[2]: Leaving directory `/var/tmp/portage/media-video/totem-2.22.2-r1/work/totem-2.22.2/lib'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/media-video/totem-2.22.2-r1/work/totem-2.22.2'
make: *** [all] Error 2
 *
 * ERROR: media-video/totem-2.22.2-r1 failed.

Portage 2.2_rc11 (default/linux/amd64/2008.0, gcc-4.3.1, glibc-2.8_p20080602-r0, 2.6.25-hardened-r4 x86_64)                                                           
=================================================================                  
System uname: Linux-2.6.25-hardened-r4-x86_64-Intel-R-_Xeon-R-_CPU_E5420_@_2.50GHz-with-glibc2.2.5                                                                    
Timestamp of tree: Fri, 03 Oct 2008 15:15:02 +0000                                 
ccache version 2.4 [disabled]                                                      
app-shells/bash:     3.2_p39                                                       
dev-java/java-config: 1.3.7, 2.1.6-r1                                              
dev-lang/python:     2.5.2-r8                                                      
dev-python/pycrypto: 2.0.1-r6                                                      
dev-util/ccache:     2.4-r8                                                        
sys-apps/baselayout: 2.0.0                                                         
sys-apps/openrc:     0.2.5                                                         
sys-apps/sandbox:    1.2.18.1-r3                                                   
sys-devel/autoconf:  2.63                                                          
sys-devel/automake:  1.10.1-r1                                                     
sys-devel/binutils:  2.18-r3                                                       
sys-devel/gcc-config: 1.4.0-r4                                                     
sys-devel/libtool:   2.2.6a                                                        
virtual/os-headers:  2.6.26                                                        
ACCEPT_KEYWORDS="amd64 ~amd64"                                                     
CBUILD="x86_64-pc-linux-gnu"                                                       
CFLAGS="-O2 -pipe"                                                                 
CHOST="x86_64-pc-linux-gnu"                                                        
CONFIG_PROTECT="/etc"                                                              
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/splash /etc/terminfo /etc/udev/rules.d"                                                                  
CXXFLAGS="-O2 -pipe"                                                               
DISTDIR="/usr/portage/distfiles"                                                   
FEATURES="buildpkg distlocks parallel-fetch preserve-libs protect-owned sandbox sfperms strict unmerge-orphans userfetch"                                             
GENTOO_MIRRORS="ftp://ftp.sunet.se/pub/Linux/distributions/gentoo"                 
LDFLAGS="-Wl,-O1"                                                                  
MAKEOPTS="-j4"                                                                     
PKGDIR="/usr/portage/packages"                                                     
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X acl amd64 berkdb bzip2 cli cracklib crypt cups dri fortran gcj gdbm gpm iconv ipv6 isdnlog midi mmx mudflap multilib ncurses nls nptl nptlonly objc openmp pampcre perl pppd python readline reflection session spl sse sse2 ssl sysfs tcpd unicode xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="vesa"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
Comment 1 Mart Raudsepp gentoo-dev 2008-10-04 17:40:20 UTC
I believe some deps are missing from totem as well, but it does not include XInput.h by itself, but it does include XTest.h, which comes from xextproto (a dep that seems missing), but we shouldn't have to depend on inputproto - xextproto should by my understanding RDEPEND on inputproto
CCing x11 for that
Comment 2 Mart Raudsepp gentoo-dev 2008-10-04 17:45:20 UTC
I think I wasn't very clear, I meant that
X11/extensions/XTest.h includes X11/extensions/XInput.h if _XTEST_SERVER_ isn't defined, and therefore I believe xextproto should RDEPEND on inputproto
Comment 3 Rémi Cardona (RETIRED) gentoo-dev 2008-10-05 17:31:25 UTC

*** This bug has been marked as a duplicate of bug 227583 ***
Comment 4 Mart Raudsepp gentoo-dev 2008-10-05 23:36:28 UTC
I clearly said a dep we do have missing, just not the one that provides XInput.h but the one that provides XTest.h that pulls XInput.h. Reopening....
Comment 5 Rémi Cardona (RETIRED) gentoo-dev 2008-10-06 07:08:27 UTC
(In reply to comment #4)
> I clearly said a dep we do have missing, just not the one that provides
> XInput.h but the one that provides XTest.h that pulls XInput.h. Reopening....
> 

Totem -> libXtst -> inputproto -> xextproto ...

That bug is fixed, or I really don't understand what you're talking about. :)
Comment 6 Mart Raudsepp gentoo-dev 2008-10-06 07:50:17 UTC
(In reply to comment #5)
> (In reply to comment #4)
> > I clearly said a dep we do have missing, just not the one that provides
> > XInput.h but the one that provides XTest.h that pulls XInput.h. Reopening....
> > 
> 
> Totem -> libXtst -> inputproto -> xextproto ...
> 
> That bug is fixed, or I really don't understand what you're talking about. :)

If it goes to protos via a library, then I claim there is a bug in libXtst in RDEPENDing on a proto. Remember that an indirect DEPEND is not sufficient.
Comment 7 Rémi Cardona (RETIRED) gentoo-dev 2008-10-06 08:44:56 UTC
(In reply to comment #6)
> If it goes to protos via a library, then I claim there is a bug in libXtst in
> RDEPENDing on a proto. Remember that an indirect DEPEND is not sufficient.

I think a bigger problem is that everyone more or less assumes that all protocol headers are always available. In fact, upstream X headers don't have any dependency checking among themselves since they only copy files to the system.

Maybe there should be a X headers meta?
Comment 8 Mart Raudsepp gentoo-dev 2008-11-02 00:50:59 UTC
(In reply to comment #7)
> (In reply to comment #6)
> > If it goes to protos via a library, then I claim there is a bug in libXtst in
> > RDEPENDing on a proto. Remember that an indirect DEPEND is not sufficient.
> 
> I think a bigger problem is that everyone more or less assumes that all
> protocol headers are always available. In fact, upstream X headers don't have
> any dependency checking among themselves since they only copy files to the
> system.

Our proto packages should RDEPEND on the other protos included from that proto. That way the chain will be correct, yet one can depclean the protos out as build-time only dependencies if all the non-protos only correctly build-time DEPEND on the protos.

> Maybe there should be a X headers meta?

No.
Comment 9 Mart Raudsepp gentoo-dev 2008-11-02 02:21:32 UTC
I have added the missing proto depends - xproto, xextproto and xf86vidmodeproto.
Additionally X11/Xrender.h is included, but it's not really necessary and I'll file a bug upstream about removing that bogus include - if gcc warns about it missing, nothing bad should happen.

HOWEVER, I found out that most X libraries pkg-config file are seriously broke, so for example you actually need to have renderproto installed for ANYTHING checking if gtk+-2.0 is present as an example. gtk+-2.0 Requires xrender, and xrender Requires renderproto, so if renderproto.pc is not present, pkg-config --exists bails out with a doesn't exist result. Seriously uncool, but not related to this bug - will deal with it upstream and with x11 team elsewhere.
Comment 10 Mart Raudsepp gentoo-dev 2008-11-02 03:18:37 UTC
Apparently pkg-config itself is broken. https://bugs.freedesktop.org/show_bug.cgi?id=4738