I spotted this in the forums. Thought i'd better report it. Reproducible: Always Steps to Reproduce: 1. 2. 3.
# Change the location of the glide headers sed -i -e "s:/usr/include/glide:/usr/include/glide3:" configure I have added this to the 0.6.0 ebuild to address the problem
vlc-0.6.0.ebuild still fails on my machine. Changing the configure script with sed causes mismatching timestamps on the autotools files. This in turn causes the autotools/missing script to be executed: To build vlc and its plugins, type `make'. cd . && /bin/sh /var/tmp/portage/vlc-0.6.0/work/vlc-0.6.0/autotools/missing --run aclocal-1.7 -I m4 cd . && \ /bin/sh /var/tmp/portage/vlc-0.6.0/work/vlc-0.6.0/autotools/missing --run automake-1.7 --gnu Makefile cd . && /bin/sh /var/tmp/portage/vlc-0.6.0/work/vlc-0.6.0/autotools/missing --run autoconf /bin/sh ./config.status --recheck running /bin/sh ./configure --prefix=/usr --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --enable-glide --enable-svgalib --disable-fb --enable-dvdread --enable-esd --enable-arts --disable-gtk2 --enable-gnome --disable-gnome2 --enable-kde --enable-qt --enable-ncurses --disable-slp --enable-mad --enable-release --enable-faad --enable-a52 --enable-dvbpsi CC=gcc CFLAGS= CXXFLAGS= CXX=g++ host_alias=i686-pc-linux-gnu --no-create --no-recursion And the second time round configure has -I/usr/include/glide set which ultimately causes vlc to die: gcc -Wsign-compare -Wall -finline-limit-30000 -pipe -o modules/control/libgestures_plugin.so modules/control/modules_control_libgestures_plugin_a-gestures.o -fPIC -lpthread -shared if gcc -DHAVE_CONFIG_H -I. -I. -I. -I./include -D_FILE_OFFSET_BITS=64 -D__USE_UNIX98 -D_LARGEFILE64_SOURCE -D_REENTRANT -D_THREAD_SAFE -D_GNU_SOURCE -DLOCALEDIR=\"/usr/share/locale\" -DDATA_PATH=\"/usr/share/vlc\" -DPLUGIN_PATH=\"/usr/lib/vlc\" -DHAVE_RELEASE -D__VLC__ -D__PLUGIN__ -I/usr/include/glide -DMODULE_NAME=glide -DMODULE_NAME_IS_glide -DSYS_LINUX -O3 -ffast-math -funroll-loops -mcpu=pentiumpro -fomit-frame-pointer -fPIC -I./include -D_FILE_OFFSET_BITS=64 -D__USE_UNIX98 -D_LARGEFILE64_SOURCE -D_REENTRANT -D_THREAD_SAFE -D_GNU_SOURCE -DLOCALEDIR=\"/usr/share/locale\" -DDATA_PATH=\"/usr/share/vlc\" -DPLUGIN_PATH=\"/usr/lib/vlc\" -DHAVE_RELEASE -D__VLC__ -D__PLUGIN__ -I/usr/include/glide -DMODULE_NAME=glide -DMODULE_NAME_IS_glide -Wsign-compare -Wall -finline-limit-30000 -pipe -MT modules/video_output/modules_video_output_libglide_plugin_a-glide.o -MD -MP -MF "modules/video_output/.deps/modules_video_output_libglide_plugin_a-glide.Tpo" \ -c -o modules/video_output/modules_video_output_libglide_plugin_a-glide.o `test -f 'modules/video_output/glide.c' || echo './'`modules/video_output/glide.c; \ then mv -f "modules/video_output/.deps/modules_video_output_libglide_plugin_a-glide.Tpo" "modules/video_output/.deps/modules_video_output_libglide_plugin_a-glide.Po"; \ else rm -f "modules/video_output/.deps/modules_video_output_libglide_plugin_a-glide.Tpo"; exit 1; \ fi modules/video_output/glide.c:38:19: glide.h: No such file or directory modules/video_output/glide.c:39:80: linutil.h: No such file or directory modules/video_output/glide.c:78: parse error before "GrLfbInfo_t" modules/video_output/glide.c:78: warning: no semicolon at end of struct or union modules/video_output/glide.c:82: parse error before '}' token modules/video_output/glide.c: In function `Create': modules/video_output/glide.c:94: sizeof applied to an incomplete type modules/video_output/glide.c: In function `Init': modules/video_output/glide.c:154: dereferencing pointer to incomplete type modules/video_output/glide.c:154: dereferencing pointer to incomplete type modules/video_output/glide.c:156: dereferencing pointer to incomplete type modules/video_output/glide.c: In function `Manage': modules/video_output/glide.c:202: warning: implicit declaration of function `kbhit' modules/video_output/glide.c:204: warning: implicit declaration of function `getch' modules/video_output/glide.c: In function `Display': modules/video_output/glide.c:226: warning: implicit declaration of function `grLfbUnlock' modules/video_output/glide.c:226: `GR_LFB_WRITE_ONLY' undeclared (first use in this function) modules/video_output/glide.c:226: (Each undeclared identifier is reported only once modules/video_output/glide.c:226: for each function it appears in.) modules/video_output/glide.c:226: `GR_BUFFER_BACKBUFFER' undeclared (first use in this function) modules/video_output/glide.c:228: warning: implicit declaration of function `grBufferSwap' modules/video_output/glide.c:230: warning: implicit declaration of function `grLfbLock' modules/video_output/glide.c:231: `GR_LFBWRITEMODE_565' undeclared (first use in this function) modules/video_output/glide.c:231: `GR_ORIGIN_UPPER_LEFT' undeclared (first use in this function) modules/video_output/glide.c:231: `FXFALSE' undeclared (first use in this function) modules/video_output/glide.c:232: dereferencing pointer to incomplete type modules/video_output/glide.c: In function `OpenDisplay': modules/video_output/glide.c:247: `GrHwConfiguration' undeclared (first use in this function) modules/video_output/glide.c:247: parse error before "hwconfig" modules/video_output/glide.c:248: `GrScreenResolution_t' undeclared (first use in this function) modules/video_output/glide.c:249: `GrLfbInfo_t' undeclared (first use in this function) modules/video_output/glide.c:251: warning: implicit declaration of function `grGlideGetVersion' modules/video_output/glide.c:252: warning: implicit declaration of function `grGlideInit' modules/video_output/glide.c:254: warning: implicit declaration of function `grSstQueryHardware' modules/video_output/glide.c:254: `hwconfig' undeclared (first use in this function) modules/video_output/glide.c:260: warning: implicit declaration of function `grSstSelect' modules/video_output/glide.c:261: warning: implicit declaration of function `grSstWinOpen' modules/video_output/glide.c:261: `resolution' undeclared (first use in this function) modules/video_output/glide.c:261: `GR_REFRESH_60Hz' undeclared (first use in this function) modules/video_output/glide.c:262: `GR_COLORFORMAT_ABGR' undeclared (first use in this function) modules/video_output/glide.c:262: `GR_ORIGIN_UPPER_LEFT' undeclared (first use in this function) modules/video_output/glide.c:272: warning: implicit declaration of function `grRenderBuffer' modules/video_output/glide.c:272: `GR_BUFFER_BACKBUFFER' undeclared (first use in this function) modules/video_output/glide.c:273: warning: implicit declaration of function `grBufferClear' modules/video_output/glide.c:274: `GR_BUFFER_FRONTBUFFER' undeclared (first use in this function) modules/video_output/glide.c:278: dereferencing pointer to incomplete type modules/video_output/glide.c:279: `p_front_buffer_info' undeclared (first use in this function) modules/video_output/glide.c:282: `GR_LFB_WRITE_ONLY' undeclared (first use in this function) modules/video_output/glide.c:283: `GR_LFBWRITEMODE_565' undeclared (first use in this function) modules/video_output/glide.c:283: `FXFALSE' undeclared (first use in this function) modules/video_output/glide.c:287: warning: implicit declaration of function `grGlideShutdown' modules/video_output/glide.c:294: dereferencing pointer to incomplete type modules/video_output/glide.c:304: dereferencing pointer to incomplete type modules/video_output/glide.c:304: dereferencing pointer to incomplete type modules/video_output/glide.c:305: dereferencing pointer to incomplete type modules/video_output/glide.c:306: dereferencing pointer to incomplete type modules/video_output/glide.c: In function `CloseDisplay': modules/video_output/glide.c:320: `GR_LFB_WRITE_ONLY' undeclared (first use in this function) modules/video_output/glide.c:320: `GR_BUFFER_BACKBUFFER' undeclared (first use in this function) make[2]: *** [modules/video_output/modules_video_output_libglide_plugin_a-glide.o] Error 1 make[2]: Leaving directory `/var/tmp/portage/vlc-0.6.0/work/vlc-0.6.0' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/vlc-0.6.0/work/vlc-0.6.0' make: *** [all] Error 2 !!! ERROR: media-video/vlc-0.6.0 failed. !!! Function src_compile, Line 188, Exitcode 2 !!! make of VLC failed As per the vlc-0.6.2 videolan.org ebuild the inclusion of: # Avoid timestamp skews with autotools touch configure.ac touch aclocal.m4 touch configure touch config.h.in touch `find . -name Makefile.in` in the ebuild resolves the "glide.h: No such file or directory" bug. But the compilation fails nonetheless: make[4]: Entering directory `/var/tmp/portage/vlc-0.6.2/work/vlc-0.6.2/modules/video_output' if gcc -DHAVE_CONFIG_H -I. -I. -I../.. -DSYS_LINUX -I../../include `top_builddir="../.." ../../vlc-config --cflags plugin glide` -Wsign-compare -Wall -finline-limit-30000 -pipe -MT libglide_plugin_a-glide.o -MD -MP -MF ".deps/libglide_plugin_a-glide.Tpo" \ -c -o libglide_plugin_a-glide.o `test -f 'glide.c' || echo './'`glide.c; \ then mv -f ".deps/libglide_plugin_a-glide.Tpo" ".deps/libglide_plugin_a-glide.Po"; \ else rm -f ".deps/libglide_plugin_a-glide.Tpo"; exit 1; \ fi glide.c: In function `OpenDisplay': glide.c:247: `GrHwConfiguration' undeclared (first use in this function) glide.c:247: (Each undeclared identifier is reported only once glide.c:247: for each function it appears in.) glide.c:247: parse error before "hwconfig" glide.c:251: warning: implicit declaration of function `grGlideGetVersion' glide.c:254: warning: implicit declaration of function `grSstQueryHardware' glide.c:254: `hwconfig' undeclared (first use in this function) make[4]: *** [libglide_plugin_a-glide.o] Error 1 make[4]: Leaving directory `/var/tmp/portage/vlc-0.6.2/work/vlc-0.6.2/modules/video_output' make[3]: *** [all-glide] Error 1 make[3]: Leaving directory `/var/tmp/portage/vlc-0.6.2/work/vlc-0.6.2/modules/video_output' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/vlc-0.6.2/work/vlc-0.6.2/modules' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/vlc-0.6.2/work/vlc-0.6.2' make: *** [all] Error 2 !!! ERROR: media-video/vlc-0.6.2 failed. !!! Function src_compile, Line 195, Exitcode 2 !!! make of VLC failed Am I mistaken in believing that the glide module depends on Glide2 instead of Glide3? From Glide3 GrHwConfiguration is no longer defined in any of the installed glide header files (This GrHwConfiguration error also occurs with vlc-0.6.2) Portage 2.0.48-r5 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r1) ================================================================= System uname: 2.4.20-gentoo-r5 i686 Intel(R) Pentium(R) 4 CPU 2.00GHz GENTOO_MIRRORS="ftp://ftp.citylink.co.nz/gentoo http://gentoo.oregonstate.edu/ http://www.ibiblio.org/pub/Linux/distributions/gentoo" CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config /usr/share/config" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" PORTDIR="/usr/portage" DISTDIR="/usr/portage/distfiles" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR_OVERLAY="" USE="x86 oss apm avi crypt cups encode foomaticdb gif gpm jpeg gnome libg++ mad mikmod mmx mpeg ncurses nls pdflib png quicktime spell truetype xml2 xmms xv zlib gtkhtml gdbm berkdb slang readline arts bonobo svga java X sdl tcpd pam libwww ssl perl python esd imlib oggvorbis gtk qt kde motif opengl 3dfx cdr doc dvd sse tcltk tetex 3dnow" COMPILER="gcc3" CHOST="i686-pc-linux-gnu" CFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer" CXXFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer" ACCEPT_KEYWORDS="x86" MAKEOPTS="-j2" AUTOCLEAN="yes" SYNC="rsync://rsync.gentoo.org/gentoo-portage" FEATURES="sandbox ccache"
It appears that the glide code is for glide2... not glide3... I hate API changes. Looking into this more. I will be updating the 0.6.2 build with the touch stuff as well..
I have updated the vlc-0.6.2 ebuild. please test and let me know if things work for you or not. # We only have glide v3 in portage cd ${S} sed -i -e "s:/usr/include/glide:/usr/include/glide3:" configure sed -i -e "s:glide2x:glide3:" configure cd ${S}/modules/video_output epatch ${FILESDIR}/glide.patch cd ${S} touch configure.ac touch aclocal.m4 touch configure touch config.h.in touch `find . -name Makefile.in` =AND= 3dfx? ( media-libs/glide-v3 ) were added to the ebuild. =ALSO= if [ `gcc-major-version` -eq 2 ]; then sed -i s:"-fomit-frame-pointer":: vlc-config fi was added as well for gcc2 people... (different bug)
That did the trick for glide. But I've noticed a wee type in the vlc-0.6.1 and vlc-0.6.2 ebuilds that causes the compile to fail if mozilla is not installed: use mozilla && \ myconf="${myconf} --enable-mozilla \ MOZILLA_CONFIG=/usr/lib/mozilla/mozilla-config \ XPIDL=/usr/bin/xpidl" This should be: use mozilla \ && myconf="${myconf} --enable-mozilla \ MOZILLA_CONFIG=/usr/lib/mozilla/mozilla-config \ XPIDL=/usr/bin/xpidl" With this change I can confirm vlc compiles fine. :)
w00t. made your suggested change. now hopefully the bugs quiet down for a bit so i can mark 0.6.2 stable.