Could you try again, if xine-lib ebuild still needs to disable MMX and SSE? I enabled both by editing ebuild and it compiled fine on my Athlon-XP, using gcc 4.1. It already worked with earlier ebuilds and then using gcc 4.0. If you want, I can also try gcc 3.4.
MMX and SSE on x86 has to be disabled while building hardened or it would go in registers starvation. The way it's not you have to wait for ffmpeg to change the code.
Oh great, because of a few hardened guys all x86 should suffer? What about if use hardened # disable MMX SSE fi ? I'd even provide a patch if it is too much work for you...
It works fine with gcc 3.4 on an Athlon-XP. I've found over time that using an overlay ebuild with *none* of the patches etc. in the official ebuild works best for me.
Moving this to x86 arch team...
Removing: 1) has_pic && append-flags -UHAVE_MMX 2) -mno-sse (from append-flags) 3) --disable-optimizations xine-lib-1.1.1-r4 builds fine for me on x86 hardened 3.4.4 I haven't built for all use flags, but most are there: [ebuild R ] media-libs/xine-lib-1.1.1-r4 +X -a52 +aac +aalib +alsa (-altivec) +arts -asf -cle266 -debug -directfb +dts +dvd +dxr3 +esd +fbcon +ffmpeg +flac -gnome +i8x0 +imagemagick -ipv6 +libcaca +mad +mng -modplug +nls -nvidia +opengl +oss +samba +sdl +speex +theora +v4l -vcd +vidix +vorbis -win32codecs +xinerama +xv +xvmc 0 kB
+ffmpeg -> the ffmpeg code is built out of xine-lib, try with -ffmpeg to see what it breaks, as it's all there. --disable-optimisations is there for other reasons, it disables the mangling of CFLAGS by xine-lib's configure, fixes its own unstable code
I thought that too after I posted - but I just tried with USE=-ffmpeg and it built fine again (build log shows configure was done with '--without-external-ffmpeg' and the 'xine-lib summary' lists ffmpeg as an internal library). I don't understand how, as media-video/ffmpeg itself does indeed fail. However it's late; I'll try again tomorrow.
what is the current status of this with reguards to the hardened/ffmpeg situation?
Kevin, have you made any progress on this?
The following change seems fine for x86, no idea about hardened. if [[ $(tc-arch) == "x86" ]]; then - append-flags -UHAVE_MMX filter-flags -fforce-addr # breaks ffmpeg module filter-flags -momit-leaf-frame-pointer # break on gcc 3.4/4.x - append-flags -mno-sse -fomit-frame-pointer Could a few more people on x86 please test and let me know of any problems you run into? Hardened users too. I would like to get some sort of resolution this .
The 'patch' mentioned in comment #10 seems to work well when applied to xine-lib-1.1.2_pre20060328-r1 [+X +a52 +aac +aalib +alsa (-altivec) -arts -asf -debug +directfb +dts +dvd -dxr3 -esd +fbcon +ffmpeg +flac +gnome +imagemagick +ipv6 -libcaca +mad +mng -modplug +nls +opengl -oss -samba +sdl +speex +theora -v4l +vcd -video_cards_i810 +video_cards_nvidia -video_cards_via -vidix +vorbis +win32codecs -xinerama +xv -xvmc] on x86. I've tied playing different movies (xvid, divx, mpeg-4, mpeg-2, a52, ...) with xine-u0.99.4-r5 and totem-1.2.1 (usig the xine backend). Portage 2203-svn (default-linux/x86/2006.0, gcc-3.4.5, glibc-2.3.6-r3, 2.6.16-gentoo-r3 i686) ================================================================= System uname: 2.6.16-gentoo-r3 i686 AMD Athlon(tm) XP 2400+ Gentoo Base System version 1.6.14 dev-lang/python: 2.3.5-r2, 2.4.2 sys-apps/sandbox: 1.2.12 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.16.1 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=athlon-xp -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/eselect/compiler /etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -march=athlon-xp -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig collision-protect distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://gentoo.inode.at/ " LANG="en_US.utf8" LC_ALL="en_US.utf8" LINGUAS="en de" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://192.168.0.1/gentoo-portage" USE="x86 3dnow 3dnowext X a52 aac aalib acpi alsa apm audiofile avi berkdb bitmap-fonts bonobo bzip2 cairo cdr cli crypt css cups curl dbus directfb dri dts dvd dvdr dvdread eds emboss encode exif expat fam fbcon ffmpeg firefox flac foomaticdb fortran gd gdbm gif ginac glut gmp gnome gphoto2 gpm gstreamer gtk gtk2 gtkhtml guile hal icq idn imagemagick imlib ipv6 isdnlog java javascript jpeg jpeg2k junit lcms libg++ libwww mad mikmod mime mmx mmxext mng motif mozsvg mp3 mpeg msn nautilus ncurses nls nptl nsplugin nvidia offensive ogg oggvorbis openal opengl pam pcre pdflib perl plotutils png posix pppd python quicktime readline real reflection ruby sdl session slang sockets speex spell spl sqlite sqlite3 sse ssl subtitles svg svga tcltk tcpd tetex theora tiff truetype truetype-fonts type1-fonts udev unicode usb vcd vorbis win32codecs wma xine xml xml2 xmms xorg xv xvid zlib linguas_en linguas_de userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, Portage 2203-svn (default-linux/x86/2006.0, gcc-3.4.5, glibc-2.3.6-r3, 2.6.16-gentoo-r3 i686) ================================================================= System uname: 2.6.16-gentoo-r3 i686 AMD Athlon(tm) XP 2400+ Gentoo Base System version 1.6.14 dev-lang/python: 2.3.5-r2, 2.4.2 sys-apps/sandbox: 1.2.12 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.16.1 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=athlon-xp -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/eselect/compiler /etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -march=athlon-xp -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig collision-protect distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://gentoo.inode.at/ " LANG="en_US.utf8" LC_ALL="en_US.utf8" LINGUAS="en de" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://192.168.0.1/gentoo-portage" USE="x86 3dnow 3dnowext X a52 aac aalib acpi alsa apm audiofile avi berkdb bitmap-fonts bonobo bzip2 cairo cdr cli crypt css cups curl dbus directfb dri dts dvd dvdr dvdread eds emboss encode exif expat fam fbcon ffmpeg firefox flac foomaticdb fortran gd gdbm gif ginac glut gmp gnome gphoto2 gpm gstreamer gtk gtk2 gtkhtml guile hal icq idn imagemagick imlib ipv6 isdnlog java javascript jpeg jpeg2k junit lcms libg++ libwww mad mikmod mime mmx mmxext mng motif mozsvg mp3 mpeg msn nautilus ncurses nls nptl nsplugin nvidia offensive ogg oggvorbis openal opengl pam pcre pdflib perl plotutils png posix pppd python quicktime readline real reflection ruby sdl session slang sockets speex spell spl sqlite sqlite3 sse ssl subtitles svg svga tcltk tcpd tetex theora tiff truetype truetype-fonts type1-fonts udev unicode usb vcd vorbis win32codecs wma xine xml xml2 xmms xorg xv xvid zlib linguas_en linguas_de userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, INSTALL_MASK, LDFLAGS INSTALL_MASK, LDFLAGS
sorry for posting "emerge --info twice"; maybe i should buy a new mouse ...
Working fine on x86 and ~x86 here so far. I won't post my emerge --info unless you really want me to, but USE="X a52 aac aalib alsa asf directfb dvd fbcon ffmpeg flac imagemagick libcaca mad mng nls opengl samba sdl theora vcd vidix vorbis win32codecs xv xvmc -arts -debug -dts -dxr3 -esd -gnome -ipv6 -modplug -oss -speex -v4l -xinerama" default-linux/x86/2005.1, gcc-4.1.0, glibc-2.4-r1, 2.6.16-gentoo-r4 i686 on ~x86 and default-linux/x86/2006.0, gcc-3.4.5, glibc-2.3.6-r3, 2.6.16-gentoo-r4 i686 on x86
xine-lib-1.1.2_pre20060328-r5 has the changes I mentioned in it (still masked). If it breaks anything, let us know.