commit: b36cf38ac007ff327a2c244d737f711c13548119 Author: Emil Karlson <jekarlson <AT> gmail <DOT> com> AuthorDate: Thu Jul 9 17:44:19 2015 +0000 Commit: Emil Karlson <jekarlson <AT> gmail <DOT> com> CommitDate: Thu Jul 9 17:44:19 2015 +0000 URL: https://gitweb.gentoo.org/proj/x11.git/commit/?id=b36cf38a
x11-drivers/ati-drivers: version bump ...rivers-13.12.ebuild => ati-drivers-15.7.ebuild} | 113 +++++++++++---------- 1 file changed, 58 insertions(+), 55 deletions(-) diff --git a/x11-drivers/ati-drivers/ati-drivers-13.12.ebuild b/x11-drivers/ati-drivers/ati-drivers-15.7.ebuild similarity index 89% rename from x11-drivers/ati-drivers/ati-drivers-13.12.ebuild rename to x11-drivers/ati-drivers/ati-drivers-15.7.ebuild index ec7756e..ebe76f1 100644 --- a/x11-drivers/ati-drivers/ati-drivers-13.12.ebuild +++ b/x11-drivers/ati-drivers/ati-drivers-15.7.ebuild @@ -4,19 +4,20 @@ EAPI=5 -inherit eutils multilib linux-info linux-mod toolchain-funcs versionator pax-utils +MULTILIB_COMPAT=( abi_x86_{32,64} ) +inherit eutils multilib-build linux-info linux-mod toolchain-funcs versionator pax-utils DESCRIPTION="Ati precompiled drivers for Radeon Evergreen (HD5000 Series) and newer chipsets" HOMEPAGE="http://www.amd.com" -#RUN="${WORKDIR}/amd-catalyst-13.11-beta1-linux-x86.x86_64.run" +#RUN="${WORKDIR}/fglrx-14.501.1003/amd-driver-installer-14.501.1003-x86.x86_64.run" SLOT="1" # Uses javascript for download YESSSS #DRIVERS_URI="http://www2.ati.com/drivers/linux/amd-catalyst-13.12-linux-x86.x86_64.zip" -DRIVERS_URI="http://dev.gentooexperimental.org/~scarabeus/amd-catalyst-13.12-linux-x86.x86_64.zip" +DRIVERS_URI="mirror://gentoo/amd-driver-installer-15.20.1046-x86.x86_64.zip" XVBA_SDK_URI="http://developer.amd.com/wordpress/media/2012/10/xvba-sdk-0.74-404001.tar.gz" SRC_URI="${DRIVERS_URI} ${XVBA_SDK_URI}" FOLDER_PREFIX="common/" -IUSE="debug +modules multilib qt4 static-libs pax_kernel" +IUSE="debug +modules qt4 static-libs pax_kernel gdm-hack" LICENSE="AMD GPL-2 QPL-1.0" KEYWORDS="-* ~amd64 ~x86" @@ -24,30 +25,18 @@ KEYWORDS="-* ~amd64 ~x86" RESTRICT="bindist test" RDEPEND=" - <=x11-base/xorg-server-1.14.49[-minimal] + <=x11-base/xorg-server-1.17.49[-minimal] >=app-eselect/eselect-opengl-1.0.7 app-eselect/eselect-opencl sys-power/acpid x11-apps/xauth - x11-libs/libX11 - x11-libs/libXext - x11-libs/libXinerama - x11-libs/libXrandr - x11-libs/libXrender - virtual/glu - multilib? ( - app-emulation/emul-linux-x86-opengl - || ( - ( - x11-libs/libX11[abi_x86_32] - x11-libs/libXext[abi_x86_32] - x11-libs/libXinerama[abi_x86_32] - x11-libs/libXrandr[abi_x86_32] - x11-libs/libXrender[abi_x86_32] - ) - app-emulation/emul-linux-x86-xlibs - ) - ) + !x11-libs/xvba-video + virtual/glu[${MULTILIB_USEDEP}] + x11-libs/libX11[${MULTILIB_USEDEP}] + x11-libs/libXext[${MULTILIB_USEDEP}] + x11-libs/libXinerama[${MULTILIB_USEDEP}] + x11-libs/libXrandr[${MULTILIB_USEDEP}] + x11-libs/libXrender[${MULTILIB_USEDEP}] qt4? ( x11-libs/libICE x11-libs/libSM @@ -57,6 +46,9 @@ RDEPEND=" dev-qt/qtcore:4 dev-qt/qtgui:4[accessibility] ) + gdm-hack? ( + x11-base/xorg-server:= + ) " if [[ legacy != ${SLOT} ]]; then RDEPEND="${RDEPEND} @@ -110,6 +102,8 @@ QA_PRESTRIPPED=" usr/lib\(32\|64\)\?/libAMDXvBA.so.1.0 usr/lib\(32\|64\)\?/libaticaldd.so usr/lib\(32\|64\)\?/dri/fglrx_dri.so + usr/lib\(32\|64\)\?/OpenCL/vendors/amd/libOpenCL.so.1 + usr/lib\(32\|64\)\?/OpenCL/vendors/amd/libamdocl\(32\|64\).so " QA_SONAME=" @@ -118,6 +112,7 @@ QA_SONAME=" usr/lib\(32\|64\)\?/libaticaldd.so usr/lib\(32\|64\)\?/libaticalrt.so usr/lib\(32\|64\)\?/libamdocl\(32\|64\)\?.so + usr/lib\(32\|64\)\?/libamdhsasc\(32\|64\)\?.so " QA_DT_HASH=" @@ -150,6 +145,14 @@ QA_DT_HASH=" usr/lib\(32\|64\)\?/OpenCL/vendors/amd/libOpenCL.so.1 " +pkg_nofetch() { + einfo "The driver packages" + einfo ${A} + einfo "need to be downloaded manually from" + einfo "http://support.amd.com/en-us/download/desktop?os=Linux%20x86_64" + einfo "and ${XVBA_SDK_URI}" +} + pkg_pretend() { local CONFIG_CHECK="~MTRR ~!DRM ACPI PCI_MSI !LOCKDEP !PAX_KERNEXEC_PLUGIN_METHOD_OR" use amd64 && CONFIG_CHECK+=" COMPAT" @@ -191,7 +194,7 @@ pkg_setup() { MODULE_NAMES="fglrx(video:${S}/${FOLDER_PREFIX}/lib/modules/fglrx/build_mod/2.6.x)" BUILD_TARGETS="kmod_build" linux-mod_pkg_setup - BUILD_PARAMS="GCC_VER_MAJ=$(gcc-major-version) KVER=${KV_FULL} KDIR=${KV_DIR}" + BUILD_PARAMS="GCC_VER_MAJ=$(gcc-major-version) KVER=${KV_FULL} KDIR=${KV_OUT_DIR}" BUILD_PARAMS="${BUILD_PARAMS} CFLAGS_MODULE+=\"-DMODULE -DATI -DFGL\"" if grep -q arch_compat_alloc_user_space ${KV_DIR}/arch/x86/include/asm/compat.h ; then BUILD_PARAMS="${BUILD_PARAMS} CFLAGS_MODULE+=-DCOMPAT_ALLOC_USER_SPACE=arch_compat_alloc_user_space" @@ -233,6 +236,8 @@ src_unpack() { if [[ ${DRIVERS_DISTFILE} =~ .*\.tar\.gz ]]; then unpack ${DRIVERS_DISTFILE} + mkdir -p common + mv etc lib usr common || die "Assumed to find etc lib and usr for common" else #please note, RUN may be insanely assigned at top near SRC_URI if [[ ${DRIVERS_DISTFILE} =~ .*\.zip ]]; then @@ -294,25 +299,19 @@ src_prepare() { # compile fix for AGP-less kernel, bug #435322 epatch "${FILESDIR}"/ati-drivers-12.9-KCL_AGP_FindCapsRegisters-stub.patch - # Compile fix for kernel typesafe uid types #469160 - epatch "${FILESDIR}/typesafe-kuid.diff" - epatch "${FILESDIR}/ati-drivers-13.8-beta-include-seq_file.patch" - epatch "${FILESDIR}/check-for-iommu-only-if-iommu-is-supported.patch" - # Fix #483400 epatch "${FILESDIR}/fgl_glxgears-do-not-include-glATI.patch" - # Fix build on new kernels - epatch "${FILESDIR}/ati-drivers-13.12-acpi.patch" - - # Add support for linux-3.13. See #498766 - epatch "${FILESDIR}/ati-drivers-linux-3.13-acpi-handle.patch" - # Compile fix, https://bugs.gentoo.org/show_bug.cgi?id=454870 use pax_kernel && epatch "${FILESDIR}/const-notifier-block.patch" + # Compile fix, #526602 + epatch "${FILESDIR}/use-kernel_fpu_begin.patch" + + epatch_user + cd "${MODULE_DIR}" # bugged fglrx build system, this file should be copied by hand @@ -380,21 +379,7 @@ src_install() { # amd64 are installed in src_install-libs. Everything else # (including libraries only available in native 64bit on amd64) # goes in here. - - # There used to be some code here that tried to detect running - # under a "native multilib" portage ((precursor of) - # http://dev.gentoo.org/~kanaka/auto-multilib/). I removed that, it - # should just work (only doing some duplicate work). --marienz - if has_multilib_profile; then - local OABI=${ABI} - for ABI in $(get_install_abis); do - src_install-libs - done - ABI=${OABI} - unset OABI - else - src_install-libs - fi + multilib_foreach_abi src_install-libs # This is sorted by the order the files occur in the source tree. @@ -406,6 +391,11 @@ src_install() { exeinto /usr/$(get_libdir)/xorg/modules doexe "${MY_BASE_DIR}"/usr/X11R6/${PKG_LIBDIR}/modules/{glesx.so,amdxmm.so} + #516816 + if use gdm-hack; then + sed -i 's#/proc/%i/fd/0#/etc/ati/xvrn#g' "${D}/usr/$(get_libdir)/xorg/modules/drivers/fglrx_drv.so" || die "Applying gdm-hack failed" + fi + # Arch-specific files. # (s)bin. into /opt @@ -420,7 +410,7 @@ src_install() { insinto /etc/ati exeinto /etc/ati # Everything except for the authatieventsd.sh script. - doins ${FOLDER_PREFIX}etc/ati/{logo*,control,atiogl.xml,signature,amdpcsdb.default} + doins ${FOLDER_PREFIX}etc/ati/{logo*,control,signature,amdpcsdb.default} doexe ${FOLDER_PREFIX}etc/ati/authatieventsd.sh # include. @@ -470,6 +460,9 @@ src_install() { doexe "${FILESDIR}"/switchlibGL || die "doexe switchlibGL failed" cp "${FILESDIR}"/switchlibGL "${T}"/switchlibglx doexe "${T}"/switchlibglx || die "doexe switchlibglx failed" + + #516816 + use gdm-hack && Xorg -version > "${D}/etc/ati/xvrn" 2>&1 } src_install-libs() { @@ -499,9 +492,16 @@ src_install-libs() { dosym libGL.so.${libver} ${ATI_ROOT}/lib/libGL.so.${libmajor} dosym libGL.so.${libver} ${ATI_ROOT}/lib/libGL.so - exeinto ${ATI_ROOT}/extensions - doexe "${EX_BASE_DIR}"/usr/X11R6/${pkglibdir}/modules/extensions/fglrx/fglrx-libglx.so - mv "${D}"/${ATI_ROOT}/extensions/{fglrx-,}libglx.so + if multilib_is_native_abi; then + exeinto ${ATI_ROOT}/extensions + doexe "${EX_BASE_DIR}"/usr/X11R6/${pkglibdir}/modules/extensions/fglrx/fglrx-libglx.so + mv "${D}"/${ATI_ROOT}/extensions/{fglrx-,}libglx.so + + #516816 + if use gdm-hack; then + sed -i 's#/proc/%i/fd/0#/etc/ati/xvrn#g' "${D}/${ATI_ROOT}/extensions/libglx.so" || die "Applying gdm-hack failed" + fi + fi # other libs exeinto /usr/$(get_libdir) @@ -558,6 +558,9 @@ src_install-libs() { #install xvba sdk headers doheader xvba_sdk/include/amdxvba.h + # VA-API internal wrapper + dosym /usr/$(get_libdir)/libXvBAW.so.1.0 /usr/$(get_libdir)/va/drivers/fglrx_drv_video.so + if use pax_kernel; then pax-mark m "${D}"/usr/lib*/opengl/ati/lib/libGL.so.1.2 || die "pax-mark failed" fi