diff --git a/packages/x11/driver/xf86-video-fglrx/build b/packages/x11/driver/xf86-video-fglrx/build index 47616941c6..76b5ab5368 100755 --- a/packages/x11/driver/xf86-video-fglrx/build +++ b/packages/x11/driver/xf86-video-fglrx/build @@ -24,21 +24,104 @@ if [ "$TARGET_ARCH" = i386 ]; then FGLRX_ARCH=x86 + LIBDIR=lib + BASEDIR=xpic elif [ "$TARGET_ARCH" = x86_64 ]; then FGLRX_ARCH=x86_64 + LIBDIR=lib64 + BASEDIR=xpic_64a fi +INSTALL_DIR=".install/usr/lib/fglrx/" + cd $PKG_BUILD/common/lib/modules/fglrx/build_mod ln -sf $ROOT/$PKG_BUILD/arch/$FGLRX_ARCH/lib/modules/fglrx/build_mod/libfglrx_ip.a . -cd 2.6.x + cd 2.6.x sed -i -e 's/ -DPAGE_ATTR_FIX=/-DCOMPAT_ALLOC_USER_SPACE=arch_compat_alloc_user_space -DPAGE_ATTR_FIX=/' Makefile make CC=${CC} KDIR=$(kernel_path) -mkdir -p $SYSROOT_PREFIX/usr/include/amd - cp $ROOT/$PKG_DIR/source/amdxvba.h $SYSROOT_PREFIX/usr/include/amd +cd $ROOT/$PKG_BUILD -mkdir -p $SYSROOT_PREFIX/usr/lib - cp $ROOT/$PKG_BUILD/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 +# config files + mkdir -p $INSTALL_DIR/etc/ati + cp common/etc/ati/amdpcsdb.default $INSTALL_DIR/etc/ati + cp common/etc/ati/control $INSTALL_DIR/etc/ati + cp common/etc/ati/signature $INSTALL_DIR/etc/ati + ln -sf /storage/.config/fglrx.conf $INSTALL_DIR/etc/ati/amdpcsdb + + # hack around a broken driver + cp $ROOT/$PKG_DIR/config/control $INSTALL_DIR/etc/ati + +( + cd $INSTALL_DIR/ + for etc in `find etc -type f`; do + mkdir -p $ROOT/$PKG_BUILD/.install/`dirname $etc` + ln -sf /usr/lib/fglrx/$etc $ROOT/$PKG_BUILD/.install/$etc + done + ln -sf /usr/lib/fglrx/etc/ati/amdpcsdb $ROOT/$PKG_BUILD/.install/etc/ati/amdpcsdb +) + +# ATI config + mkdir -p $INSTALL_DIR/bin + cp -P arch/$FGLRX_ARCH/usr/X11R6/bin/aticonfig $INSTALL_DIR/bin + +( + cd $INSTALL_DIR/ + for bin in `find bin -type f`; do + mkdir -p $ROOT/$PKG_BUILD/.install/usr/`dirname $bin` + ln -sf /usr/lib/fglrx/$bin $ROOT/$PKG_BUILD/.install/usr/$bin + done +) + +# OpenGL libs + mkdir -p $INSTALL_DIR/lib + # rename to not conflicting with Mesa libGL.so + cp -P arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/fglrx/fglrx-libGL.so* $INSTALL_DIR/lib/libGL_fglrx.so.1 + +# System Libs + mkdir -p $INSTALL_DIR/lib + cp arch/$FGLRX_ARCH/usr/$LIBDIR/libati*.so $INSTALL_DIR/lib + cp arch/$FGLRX_ARCH/usr/$LIBDIR/libatiuki.so* $INSTALL_DIR/lib/libatiuki.so.1 + cp arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/libati*.so* $INSTALL_DIR/lib + cp arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/libfglrx*.so* $INSTALL_DIR/lib + +# DRI driver + mkdir -p .install/usr/lib/fglrx/lib/dri + cp arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/modules/dri/fglrx_dri.so* $INSTALL_DIR/lib/dri + +# X.Org modules + mkdir -p $INSTALL_DIR/lib/xorg/modules + cp -P $BASEDIR/usr/X11R6/$LIBDIR/modules/*.so $INSTALL_DIR/lib/xorg/modules + + mkdir -p $INSTALL_DIR/lib/xorg/modules/drivers + cp -P $BASEDIR/usr/X11R6/$LIBDIR/modules/drivers/*_drv.so $INSTALL_DIR/lib/xorg/modules/drivers + + mkdir -p $INSTALL_DIR/lib/xorg/modules/extensions + cp -P $BASEDIR/usr/X11R6/$LIBDIR/modules/extensions/fglrx/fglrx-libglx.so $INSTALL_DIR/lib/xorg/modules/extensions/libglx_fglrx.so + + 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 + +# install needed files for toolchain + mkdir -p $SYSROOT_PREFIX/usr/include/amd + cp $ROOT/$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 + +( + cd $INSTALL_DIR/ + for lib in `find lib -type f`; do + mkdir -p $ROOT/$PKG_BUILD/.install/usr/`dirname $lib` + ln -sf /usr/lib/fglrx/$lib $ROOT/$PKG_BUILD/.install/usr/$lib + done +) diff --git a/packages/x11/driver/xf86-video-fglrx/install b/packages/x11/driver/xf86-video-fglrx/install index 71afb0fd5b..e185eddcd2 100755 --- a/packages/x11/driver/xf86-video-fglrx/install +++ b/packages/x11/driver/xf86-video-fglrx/install @@ -24,70 +24,15 @@ VER=`ls $BUILD/linux*/modules/lib/modules` -if [ "$TARGET_ARCH" = i386 ]; then - FGLRX_ARCH=x86 - LIBDIR=lib - BASEDIR=xpic -elif [ "$TARGET_ARCH" = x86_64 ]; then - FGLRX_ARCH=x86_64 - LIBDIR=lib64 - BASEDIR=xpic_64a -fi - # ATI kernel driver mkdir -p $INSTALL/lib/modules/$VER/ati cp $PKG_BUILD/common/lib/modules/fglrx/build_mod/2.6.x/fglrx.ko $INSTALL/lib/modules/$VER/ati -# X.Org modules -mkdir -p $INSTALL/$XORG_PATH_MODULES - cp -P $PKG_BUILD/$BASEDIR/usr/X11R6/$LIBDIR/modules/*.so $INSTALL/$XORG_PATH_MODULES - -mkdir -p $INSTALL/$XORG_PATH_MODULES/drivers - cp -P $PKG_BUILD/$BASEDIR/usr/X11R6/$LIBDIR/modules/drivers/*_drv.so $INSTALL/$XORG_PATH_MODULES/drivers - -mkdir -p $INSTALL/$XORG_PATH_MODULES/extensions/fglrx - # rename to not conflicting with Mesa libGL.so - cp -P $PKG_BUILD/$BASEDIR/usr/X11R6/$LIBDIR/modules/extensions/fglrx/fglrx-libglx.so $INSTALL/$XORG_PATH_MODULES/extensions/libglx_fglrx.so - -mkdir -p $INSTALL/$XORG_PATH_MODULES/linux - cp -P $PKG_BUILD/$BASEDIR/usr/X11R6/$LIBDIR/modules/linux/*.so $INSTALL/$XORG_PATH_MODULES/linux - mkdir -p $INSTALL/etc/X11 cp $PKG_DIR/config/*.conf $INSTALL/etc/X11 -mkdir -p $INSTALL/etc/ati - cp $PKG_BUILD/common/etc/ati/amdpcsdb.default $INSTALL/etc/ati +mkdir -p $INSTALL/usr/config/ cp $PKG_DIR/config/amdpcsdb $INSTALL/usr/config/fglrx.conf - ln -sf /storage/.config/fglrx.conf $INSTALL/etc/ati/amdpcsdb - cp $PKG_BUILD/common/etc/ati/control $INSTALL/etc/ati - cp $PKG_BUILD/common/etc/ati/signature $INSTALL/etc/ati -# hack around a broken driver - cp $PKG_DIR/config/control $INSTALL/etc/ati - - -# DRI driver -mkdir -p $INSTALL/usr/lib/dri - cp $PKG_BUILD/arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/modules/dri/fglrx_dri.so* $INSTALL/usr/lib/dri - -# OpenGL libs -mkdir -p $INSTALL/usr/lib - # rename to not conflicting with Mesa libGL.so - cp -P $PKG_BUILD/arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/fglrx/fglrx-libGL.so* $INSTALL/usr/lib/libGL_fglrx.so.1 - -# System Libs -mkdir -p $INSTALL/usr/lib - cp $PKG_BUILD/arch/$FGLRX_ARCH/usr/$LIBDIR/libati*.so $INSTALL/usr/lib - cp $PKG_BUILD/arch/$FGLRX_ARCH/usr/$LIBDIR/libatiuki.so* $INSTALL/usr/lib/libatiuki.so.1 - cp $PKG_BUILD/arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/libati*.so* $INSTALL/usr/lib - cp $PKG_BUILD/arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/libfglrx*.so* $INSTALL/usr/lib - -# ATI config -mkdir -p $INSTALL/usr/bin - cp -P $PKG_BUILD/arch/$FGLRX_ARCH/usr/X11R6/bin/aticonfig $INSTALL/usr/bin - -if [ "$XVBA" = yes ]; then - cp $PKG_BUILD/arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/libAMDXvBA.cap $INSTALL/usr/lib - cp $PKG_BUILD/arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/libAMDXvBA.so* $INSTALL/usr/lib/libAMDXvBA.so.1 - cp $PKG_BUILD/arch/$FGLRX_ARCH/usr/X11R6/$LIBDIR/libXvBAW.so* $INSTALL/usr/lib/libXvBAW.so.1 -fi +mkdir -p $INSTALL + cp -PR $PKG_BUILD/.install/* $INSTALL