diff --git a/packages/multimedia/ffmpeg/meta b/packages/multimedia/ffmpeg/meta index 3d0fb8a4c7..278af23b64 100644 --- a/packages/multimedia/ffmpeg/meta +++ b/packages/multimedia/ffmpeg/meta @@ -47,3 +47,19 @@ if [ "$VDPAU" = yes ]; then PKG_BUILD_DEPENDS="$PKG_BUILD_DEPENDS libvdpau" PKG_DEPENDS="$PKG_DEPENDS libvdpau" fi + +if [ "$XVBA" = yes ]; then + get_graphicdrivers + for drv in $GRAPHIC_DRIVERS; do + if [ "$drv" = "fglrx" ]; then + PKG_DEPENDS="$PKG_DEPENDS xf86-video-fglrx" + PKG_BUILD_DEPENDS_TARGET="$PKG_BUILD_DEPENDS_TARGET xf86-video-fglrx" + elif [ "$drv" = "fglrx-legacy" ]; then + PKG_DEPENDS="$PKG_DEPENDS xf86-video-fglrx-legacy" + PKG_BUILD_DEPENDS_TARGET="$PKG_BUILD_DEPENDS_TARGET xf86-video-fglrx-legacy" + fi + done + XBMC_XVBA="--enable-xvba" +else + XBMC_XVBA="--disable-xvba" +fi diff --git a/packages/multimedia/libXVBA/package.mk b/packages/multimedia/libXVBA/package.mk new file mode 100644 index 0000000000..793aaf4833 --- /dev/null +++ b/packages/multimedia/libXVBA/package.mk @@ -0,0 +1,75 @@ +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) +# +# This Program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This Program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with OpenELEC.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +PKG_NAME="libXVBA" +PKG_VERSION="13.8" +PKG_REV="1" +PKG_ARCH="any" +PKG_LICENSE="GPL" +PKG_SITE="http://amd.com" +PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz" +PKG_DEPENDS="libX11" +PKG_BUILD_DEPENDS="toolchain libX11 dri2proto libXext" +PKG_PRIORITY="optional" +PKG_SECTION="multimedia" +PKG_SHORTDESC="libXVBA: a Video Decode library for AMD" +PKG_LONGDESC="libXVBA is a Video Decode library for AMD." + +PKG_IS_ADDON="no" +PKG_AUTORECONF="no" + +if [ "$TARGET_ARCH" = i386 ]; then + LIBXVBA_FGLRX_ARCH=x86 + LIBXVBA_LIBDIR=lib +elif [ "$TARGET_ARCH" = x86_64 ]; then + LIBXVBA_FGLRX_ARCH=x86_64 + LIBXVBA_LIBDIR=lib64 +fi + +LIBXVBA_INSTALL_DIR="/usr/lib/fglrx/" + +make_target() { + : # nothing to make +} + +makeinstall_target() { + mkdir -p $SYSROOT_PREFIX/usr/include/amd + cp include/amdxvba.h $SYSROOT_PREFIX/usr/include/amd + + mkdir -p $SYSROOT_PREFIX/usr/lib + cp arch/$LIBXVBA_FGLRX_ARCH/usr/X11R6/*/libXvBAW.so* $SYSROOT_PREFIX/usr/lib + ln -sf libXvBAW.so.1.0 $SYSROOT_PREFIX/usr/lib/libXvBAW.so.1 + ln -sf libXvBAW.so.1 $SYSROOT_PREFIX/usr/lib/libXvBAW.so +} + +post_makeinstall_target() { + mkdir -p $INSTALL/$LIBXVBA_INSTALL_DIR/lib + cp arch/$LIBXVBA_FGLRX_ARCH/usr/X11R6/$LIBXVBA_LIBDIR/libAMDXvBA.cap $INSTALL/$LIBXVBA_INSTALL_DIR/lib + cp arch/$LIBXVBA_FGLRX_ARCH/usr/X11R6/$LIBXVBA_LIBDIR/libAMDXvBA.so* $INSTALL/$LIBXVBA_INSTALL_DIR/lib/libAMDXvBA.so.1 + cp arch/$LIBXVBA_FGLRX_ARCH/usr/X11R6/$LIBXVBA_LIBDIR/libXvBAW.so* $INSTALL/$LIBXVBA_INSTALL_DIR/lib/libXvBAW.so.1 + + ( + cd $INSTALL/$LIBXVBA_INSTALL_DIR/ + for lib in `find lib -type f`; do + mkdir -p $INSTALL/usr/`dirname $lib` + ln -sf /var/run/fglrx/$lib $INSTALL/usr/$lib + done + ) +} diff --git a/packages/sysutils/dbus/package.mk b/packages/sysutils/dbus/package.mk index ed464603c8..34e4f0bb61 100644 --- a/packages/sysutils/dbus/package.mk +++ b/packages/sysutils/dbus/package.mk @@ -39,8 +39,8 @@ PKG_AUTORECONF="yes" PKG_CONFIGURE_OPTS_TARGET="export ac_cv_have_abstract_sockets=yes \ --libexecdir=/usr/lib/dbus \ - --enable-verbose-mode \ - --enable-asserts \ + --disable-verbose-mode \ + --disable-asserts \ --enable-checks \ --disable-tests \ --disable-ansi \ @@ -57,18 +57,18 @@ PKG_CONFIGURE_OPTS_TARGET="export ac_cv_have_abstract_sockets=yes \ --without-x \ --with-dbus-user=dbus" -PKG_CONFIGURE_OPTS_HOST="--enable-verbose-mode \ - --enable-asserts \ - --enable-checks \ +PKG_CONFIGURE_OPTS_HOST="--disable-verbose-mode \ + --disable-asserts \ + --disable-checks \ --disable-tests \ --disable-xml-docs \ --disable-doxygen-docs" PKG_CONFIGURE_OPTS_BOOTSTRAP="export ac_cv_have_abstract_sockets=yes \ --libexecdir=/usr/lib/dbus \ - --enable-verbose-mode \ - --enable-asserts \ - --enable-checks \ + --disable-verbose-mode \ + --disable-asserts \ + --disable-checks \ --disable-tests \ --disable-ansi \ --disable-xml-docs \ diff --git a/packages/x11/driver/xf86-video-fglrx/build b/packages/x11/driver/xf86-video-fglrx/build index 2581cf0abf..27cee58478 100755 --- a/packages/x11/driver/xf86-video-fglrx/build +++ b/packages/x11/driver/xf86-video-fglrx/build @@ -101,20 +101,21 @@ cd $ROOT/$PKG_BUILD mkdir -p $INSTALL_DIR/lib/xorg/modules/linux cp -P $BASEDIR/usr/X11R6/$LIBDIR/modules/linux/*.so $INSTALL_DIR/lib/xorg/modules/linux -if [ "$XVBA" = yes ]; then - cp arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/libAMDXvBA.cap $INSTALL_DIR/lib - cp arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/libAMDXvBA.so* $INSTALL_DIR/lib/libAMDXvBA.so.1 - cp arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/libXvBAW.so* $INSTALL_DIR/lib/libXvBAW.so.1 +# disabled until we can expect non broken drivers from AMD: +# if [ "$XVBA" = yes ]; then +# cp arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/libAMDXvBA.cap $INSTALL_DIR/lib +# cp arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/libAMDXvBA.so* $INSTALL_DIR/lib/libAMDXvBA.so.1 +# cp arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/libXvBAW.so* $INSTALL_DIR/lib/libXvBAW.so.1 -# install needed files for toolchain - mkdir -p $SYSROOT_PREFIX/usr/include/amd - cp $PKG_DIR/source/amdxvba.h $SYSROOT_PREFIX/usr/include/amd +# # install needed files for toolchain +# mkdir -p $SYSROOT_PREFIX/usr/include/amd +# cp $PKG_DIR/source/amdxvba.h $SYSROOT_PREFIX/usr/include/amd - mkdir -p $SYSROOT_PREFIX/usr/lib - cp arch/$FGLRX_ARCH/usr/X11R6/*/libXvBAW.so* $SYSROOT_PREFIX/usr/lib - ln -sf libXvBAW.so.1.0 $SYSROOT_PREFIX/usr/lib/libXvBAW.so.1 - ln -sf libXvBAW.so.1 $SYSROOT_PREFIX/usr/lib/libXvBAW.so -fi +# mkdir -p $SYSROOT_PREFIX/usr/lib +# cp arch/$FGLRX_ARCH/usr/X11R6/*/libXvBAW.so* $SYSROOT_PREFIX/usr/lib +# ln -sf libXvBAW.so.1.0 $SYSROOT_PREFIX/usr/lib/libXvBAW.so.1 +# ln -sf libXvBAW.so.1 $SYSROOT_PREFIX/usr/lib/libXvBAW.so +# fi ( cd $INSTALL_DIR/ diff --git a/packages/x11/driver/xf86-video-fglrx/meta b/packages/x11/driver/xf86-video-fglrx/meta index fe414e2ebd..844abf5999 100644 --- a/packages/x11/driver/xf86-video-fglrx/meta +++ b/packages/x11/driver/xf86-video-fglrx/meta @@ -35,3 +35,9 @@ PKG_LONGDESC="These binary drivers provide optimized hardware acceleration of Op PKG_IS_ADDON="no" PKG_AUTORECONF="no" + +if [ "$XVBA" = yes ]; then +# hack around broken AMD drivers + PKG_DEPENDS="libXVBA" + PKG_BUILD_DEPENDS="toolchain libXVBA" +fi diff --git a/packages/x11/xserver/xorg-server/profile.d/xorg-server.conf b/packages/x11/xserver/xorg-server/profile.d/xorg-server.conf index 85177839b8..4ebe86c1a7 100644 --- a/packages/x11/xserver/xorg-server/profile.d/xorg-server.conf +++ b/packages/x11/xserver/xorg-server/profile.d/xorg-server.conf @@ -25,3 +25,4 @@ DISPLAY=":0.0" export DISPLAY +