diff options
author | Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org> | 2012-10-15 14:33:10 +0000 |
---|---|---|
committer | Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org> | 2012-10-15 14:33:10 +0000 |
commit | e3bad318ac792288abb2582f53dc4307fcaa3fee (patch) | |
tree | 09cf35637b0343da71e0d3dd4a39454099c35a0f | |
parent | remove python and perl from packages.build, add autotools, like on linux (diff) | |
download | historical-e3bad318ac792288abb2582f53dc4307fcaa3fee.tar.gz historical-e3bad318ac792288abb2582f53dc4307fcaa3fee.tar.bz2 historical-e3bad318ac792288abb2582f53dc4307fcaa3fee.zip |
New prerelease, import of Emil Karlson's ebuild from the x11 overlay.
Package-Manager: portage-2.2.0_alpha137/cvs/Linux x86_64
-rw-r--r-- | x11-drivers/ati-drivers/ChangeLog | 8 | ||||
-rw-r--r-- | x11-drivers/ati-drivers/Manifest | 26 | ||||
-rw-r--r-- | x11-drivers/ati-drivers/ati-drivers-12.9_beta9000.ebuild | 625 | ||||
-rw-r--r-- | x11-drivers/ati-drivers/metadata.xml | 3 |
4 files changed, 638 insertions, 24 deletions
diff --git a/x11-drivers/ati-drivers/ChangeLog b/x11-drivers/ati-drivers/ChangeLog index d26e6a3ff702..680e4e989c27 100644 --- a/x11-drivers/ati-drivers/ChangeLog +++ b/x11-drivers/ati-drivers/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for x11-drivers/ati-drivers # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/x11-drivers/ati-drivers/ChangeLog,v 1.298 2012/10/10 16:58:55 zerochaos Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-drivers/ati-drivers/ChangeLog,v 1.299 2012/10/15 14:33:06 chithanh Exp $ + +*ati-drivers-12.9_beta9000 (15 Oct 2012) + + 15 Oct 2012; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org> + +ati-drivers-12.9_beta9000.ebuild, metadata.xml: + New prerelease, import of Emil Karlson's ebuild from the x11 overlay. 10 Oct 2012; Rick Farina <zerochaos@gentoo.org> ati-drivers-12.2.ebuild, ati-drivers-12.4.ebuild, ati-drivers-12.6.ebuild, diff --git a/x11-drivers/ati-drivers/Manifest b/x11-drivers/ati-drivers/Manifest index ced7349a4a0a..d5a4917df940 100644 --- a/x11-drivers/ati-drivers/Manifest +++ b/x11-drivers/ati-drivers/Manifest @@ -1,6 +1,3 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA512 - AUX amd-drivers-3.2.7.1.patch 560 SHA256 7cc315754a47fbda6bf36bcee01780da7c19535c4f6ec1cccc556e9a7b32d263 SHA512 bcdc89e7a7148f5eb5450364298de6fb95dcad0d3c8d7091e9236d4f4b9cff0be24d59e8ed4ccdde0c8e94985ab8b4e7d5848e1e0e7102c699edb9230dbe57ce WHIRLPOOL 85ef893cd8bffa0d41b99eccd8b6e1ed713f69cc683dee52268ea0d6bc6fd4a77b3fdab31dd1e35ec3bbd21b399725286289c9fb3a276eff3922c1f8cf0746a2 AUX ati-drivers-12.2-redefine-WARN.patch 1316 SHA256 f7d8ad3307823925cf8b4c6540db17a51553e48dd008793fc026803bb2aa1ced SHA512 1ee5f7fb5dc629f186754dc83a7d718a6a8acda836dadb2b87bd616c424db0aba067fb833d966cf79425ad78d94ab3f7c4014bbe2356f394630b0761625e74ab WHIRLPOOL 75987965689042342a923d4542a3f1b5eb4ba8ce3fc1ede82be8aeffaa2154a0dc75c507a4772bc00ef510eee7f4b47a51a2ea43aadce6e742e842e348c15b40 AUX ati-drivers-do_mmap.patch 1405 SHA256 3fc9bae50d25d3bfe76a3a1e89c8d025674a4cb9afd16d3a5d8b3c25a66f536d SHA512 1a2f8fe7f2506037d6d158e5c2efffa39c503566284d8f516cb2d84db546eced24df5dcb8d74ac84911589efb4547d7f8610d78ad29703f9ed0a9890576c51b7 WHIRLPOOL 86daa957d7569b26fdf92929e5b04a32379af067a208628eab1a4541fdebfb51fa4bfedeec63f4685c6258adcba2ddc4223b69dca329ecbebd4ba13167f66f82 @@ -16,28 +13,13 @@ DIST amd-driver-installer-12-6-x86.x86_64.run 106660241 SHA256 b5c6070dc75e9296d DIST amd-driver-installer-12-8-x86.x86_64.zip 105413213 SHA256 62525173b2b7602aa4e7e46a109204d0f349abfbb135c86d03db5cd57642bb41 SHA512 41d9b5ee472a3172746f04bdf43a595eb9090c03021f4dfdecd3ff0a938e45a9ace57b99c7255cec2ace68645adcc0d6eb2f420173b4b41fcfc4745fb62cf230 WHIRLPOOL 8f904858da340c7bb1f502f831b4ef2afefe7dc1eb3545c877056e4bae18934e9f54430efdb39069c5beb6d214399095602ce7806561fe7562d3b99a871208ca DIST amd-driver-installer-12-9-beta-x86.x86_64.zip 112453712 SHA256 93deb59346db54fc002873e1b37b102a5fd4d4a9646c18943b20bfec3e75b509 SHA512 ce4e0526f89231e7153cc2c8f8cae56aa2873846661e14522dd5d162a529fa7c08b7c3ec854eedbddf95569fa274e2af76c4dc601eef17306a3d63fcb0b82115 WHIRLPOOL f5fd6a326959624015c834113947c8db0d50ce77ebe09c12fb37f4446916093975e1c26db9236c06bf4067661f0e22692666ab2ef4d622864f528ac2c727cdb7 DIST amd-driver-installer-12.6-legacy-x86.x86_64.zip 106888385 SHA256 5353a3f874d31f0fde46c390ce17cc2f27875156dbf3e7c20b5cca494a058102 SHA512 81032c1b15f2d3a1da84066bf2682913ea4ea48bfdf7f50902e9471eb70ffb87a3a1501c45defb2ff15ee27bcbb1820ef2ab6391251b68de45655ace1f4fff0a WHIRLPOOL a34ec3bb761644ffa2c0bfd5a7a61cce33ba76c139fc66db12d1c35a5b4f9ee3ca74c0d8b0ef66f892b7de7e5c9564f2061698c1b347265c7ad422b9838bc21b +DIST fglrx-installer_9.000.orig.tar.gz 111843479 SHA256 13145e45b12859af81ce883908f22a57d01b65162c36c8b318e7ffaac98b28e0 SHA512 a1c33296830754d34aab2d4a114d2e75152a2fdb48aa6cf5e83fdfbb06119374513f499b217ba4f677acd988cb625dff53896568f2d1ee20200b82006069da3b WHIRLPOOL edd436d1cec251247fe92582cee376cb15a02f711296fa936879b75d853baf1b49904d6246b2e53477279db9bdb9d2f77670ecf2513d755fdb4eb86d5cddf31f EBUILD ati-drivers-12.2.ebuild 19152 SHA256 ee3ff8d45ba691ecb2fb1a3c71863f28090e9ea6624a6282289765790e938f3c SHA512 3b92b7869b904c677ad5c35ca05a45c13707f32e3a5f76926731ea0bfcbee74c2ebef880bdbbf07c08c9cbddf3f6f1f5130d1e810a2124ace511f21214ec3d5d WHIRLPOOL 2d62f78eea2fc03b822923e7cf8ecb2d130e8ea358275ac42a0800faf9026b8e50931caa48a120907fe777f8c26c7bc0b41993d71511e74f82329375e444aa43 EBUILD ati-drivers-12.4.ebuild 19762 SHA256 60be437536893e383670968b283b945188d1dff6423a70f58832f053dd35939b SHA512 de5cbe36e6208394526301777ef6c81bb3a12b1d47ce549efcb11f9d66457aad1bf6933f5c23d6ccd203d63f24985177d8d0eefbe14a6950ffb6442729c489ce WHIRLPOOL 88d484f5da27f669e4ad07012bfe0bdfcb900cbd80b897722b12edf51f29c8074c627ccec4a8585f9205c4b5a41898865ab21b2ea44ee565b3f58281d6d814ee EBUILD ati-drivers-12.6.ebuild 20055 SHA256 f297ff9fa3ba54c68998b20ba19ed08ec290339273945d25850320f3d454216a SHA512 dc5f145a5b46e79928c2f96be8c6404a34c7292d7cf54679fae0c3c6e8bcdd3512f325fa98ab9a94717711d899396f88a78bee37edb91e29f9be6a6a937eef83 WHIRLPOOL 240d65467215003ad1985868b41d149288f485acbff82afe9ad61fb246ff832c08ab26baf2b945c9144920a060486f018692c6836ce0842f51686f1ca1682d9a EBUILD ati-drivers-12.6_beta_pre897.ebuild 19667 SHA256 f485c69f18203a0d1986a98bb4a94c21a4cacb1663a46546b990356700236bb7 SHA512 dc7d034a79580782152e1b2488e7ad687b1f24ff88b5907adc294dddc6c103ccf110b31dfcee22d6606204333587364765befa66cd45384ed1c1030ed28c6ac5 WHIRLPOOL 7c68639bbe9338f1dc367ad6dc0ebde00c0de3d8d3bdce75204d345d494920f28174e3380c56a285bb27125dc41266c6ca6467a83e23563db9e0d4d82e98de29 EBUILD ati-drivers-12.8.ebuild 20330 SHA256 13d9ca2e0583eb3d7e49077059ff73849f97968bde2d17484eda6d47ed57caeb SHA512 0a14f362a3059ae48dbd225907aac653dcfd0d2568c69fbed1bf5825194758b4ef91db4858d24f8bf02fd4eaccfab900bc316335eda29e86f1ea49b03a0cdc19 WHIRLPOOL 800ee4fa3197f4855dee1ef6da93ac47f8a4468b8cb3033ca189e2016381b1d5d2bbea3e5e97d415ffe8416cab32c2ea4c2cf16a77b47bf7fbc7af9a399c2a57 EBUILD ati-drivers-12.9_beta.ebuild 19995 SHA256 39fca43cd9c08b2b7d3e8a0ca417b2965b5b6cdda06f860bd493606189750853 SHA512 cb2783720d331246b86cda603dcd30c67129e1482156bd484d0a196255135643df98d7caf293dacc2859f18d63dd2969f03056df134afbc63aff35769c960cda WHIRLPOOL 7df213daa73f8795b4277290c98031a8b0742b8a3436a457455364a9ccc5648bb5bd211cd2d45f4c25fc8387b1587d97ba3f5754681d279efd043be7543b627f -MISC ChangeLog 79762 SHA256 e864b11f8392c481c7d19ac1dc337d8fbf83fb9ffd5df30276af91ce466c4b9f SHA512 a057280bb2fc473a0c6b9823009a8882cca67ab7504db06480bc564dbccbeb132e9945414b91adf7c023791b326b7a46d904c3659a87985c5ece59f550267a63 WHIRLPOOL c53bb0d7279b7a844a9673e447cafac560f3ae2bbf01757c562eaf145e2e9d7f39c6ad558175a422f12cf60cb23fae509d22e0131f26213ebdc2104426e56e1c -MISC metadata.xml 670 SHA256 ee4060502e1a3a80a47503eb30fd445aee017cbaed8e790f80ecdded3da4a7a9 SHA512 ac1570591e395b12e228f85da49d83cb9e9f3d69dd56e5e9fbca2827ce7cd90cc81b6f59fca7a9b62d42ed9eeef7090a0c22ed76dab33b2bea452dbc7ad8deb9 WHIRLPOOL 102d51a516f3034088f24f41dc22085fb83ee4ca7d890b198562d84410fb1d214eea7165b208faffbada760cb7a3edd8bfbc0221c3d8c852088f0d88e8e086cb ------BEGIN PGP SIGNATURE----- -Version: GnuPG v2.0.19 (GNU/Linux) - -iQIcBAEBCgAGBQJQdamZAAoJEKXdFCfdEflKw58P/3qZYdTIiX5cCvkSUOM5L2tC -m5sGvHJqpfyNI6SgN5gRZgmg5POm0FcDUHs9yIlzNt1cPNTTL7jbEUcowJtgRv3i -j5c/keLcM94tELYLCSztnOlYqqq+DxtIceh2NVHgndWzsGSFGu0hLy9yvMQDA8R9 -EvzwHuqgVQ2tE/0F7vhNlbR0K/7x71fHmL0QCOlTk0ct/xKKQ2O+Q3nJ+7PuRO2y -5lj8VypUh9gtarIud90T51NIS2+2E4b21UQTOOYrRfbgnhPKLfPWViSRhtm5pAje -GuAXKYzsBedCxWB2N6W66zeP4lTv3RbiBMEs5noVnG7p9ZuZFzA3u9VgWqP1ndjc -eUTew2kMmYkS56SpdMG8lTklyWPm+258xEAsw6EbUt2LV5PnotDTBrpnXe/QbLe8 -rGXFt/Z0lUOIeB4cpbXiMCOpn8BqwcWfn2vrja3YvyZE2dAQfzdxATjxDw7Cjud1 -xiRGdpQKV4A/dLVKQTYB8G98h0lJ59vF7siSa+df43BAdj9Nm1vHocbuIe5416lA -4viezSyJhaHKfvM0CYZFow0qLSFCKeHztlWzm6jeGt6fCFkL7qWh2weXBZYMi+aF -ljyGc399ZwFp5ZKEAF9p3J4aG/OfLf5AbG8pPglbRUlwUnIi3uebrCmXfRCvJi7R -aObGUjYa4LCay2OcLbh4 -=W2Ex ------END PGP SIGNATURE----- +EBUILD ati-drivers-12.9_beta9000.ebuild 20090 SHA256 6352938ff82391206bdd8a4961d0ff7f3d86672b7f777c42aaa3c6f9076be32d SHA512 87369bc87a72a989896d67045f25a769643331df017b22b69d5efabcc3e71b0f090582cda234209c8c46c55451ea89e14b452cde25035688aa3fa5fd272fdfdc WHIRLPOOL 6da4e619b89f40061a2fc6ec89cbc8d9ff25e52ff5adeb0943979da9041e6364ac06a82c46fb1d99b02444c07cfa10820e6c27b8104e8b5846635bf17cdea3eb +MISC ChangeLog 79996 SHA256 45f9d32e3552f1e2a755bbde9d06426f321ea25dcce9fc8d4a7fc430da12c401 SHA512 2650869ba92896f2e0a9cf4a97159d1f44cba701bf507a7a9f5a003a881a6f3e14482969c3f4a6bedcdf2a05ee6a3d7c77ecdc818c95bc18d224d1a7fd02f08f WHIRLPOOL cdbc6f6dd2241f2122919dc90d161a9b7d18e312dcbe0a29e2a36224780c8281526ac8e5dabc66a46fc0f3df08fddbaab40e615994887ce79cc12de0294c1ca9 +MISC metadata.xml 751 SHA256 1f754b139a8a3ccccd14009301161f637683bb85486fd16d85ff91184fa1c00d SHA512 39b5e639fb21365b6fe540f3a3a44893dbaaab7e596d8378b483b0d9528d4309f83d59795fa8611ed817ce237a4da6e8962e9f2c40be999ce0475cd3a6e8360a WHIRLPOOL 65c0072c51656b88a13b5a0f980b3cc0b1cc4f0fab8515df12fc7bdf14d78378f7f5a0857dbff1e9571bc7fda448a0f7f4bfb067e7f48d99ef5b484a8af5713a diff --git a/x11-drivers/ati-drivers/ati-drivers-12.9_beta9000.ebuild b/x11-drivers/ati-drivers/ati-drivers-12.9_beta9000.ebuild new file mode 100644 index 000000000000..9581f2a19f66 --- /dev/null +++ b/x11-drivers/ati-drivers/ati-drivers-12.9_beta9000.ebuild @@ -0,0 +1,625 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-drivers/ati-drivers/ati-drivers-12.9_beta9000.ebuild,v 1.1 2012/10/15 14:33:06 chithanh Exp $ + +EAPI=4 + +inherit eutils multilib linux-info linux-mod toolchain-funcs versionator + +DESCRIPTION="Ati precompiled drivers for Radeon Evergreen (HD5000 Series) and newer chipsets" +HOMEPAGE="http://www.amd.com" +MY_V=( $(get_version_components) ) +#RUN="${WORKDIR}/amd-driver-installer-9.00-x86.x86_64.run" +SRC_URI="https://launchpad.net/ubuntu/quantal/+source/fglrx-installer/2:9.000-0ubuntu3/+files/fglrx-installer_9.000.orig.tar.gz" +FOLDER_PREFIX="" +IUSE="debug +modules multilib qt4 static-libs disable-watermark" + +LICENSE="AMD GPL-2 QPL-1.0 as-is" +KEYWORDS="-* ~amd64 ~x86" +SLOT="1" + +RESTRICT="bindist" + +RDEPEND=" + <=x11-base/xorg-server-1.13.49[-minimal] + >=app-admin/eselect-opengl-1.0.7 + app-admin/eselect-opencl + sys-power/acpid + x11-apps/xauth + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXinerama + x11-libs/libXrandr + x11-libs/libXrender + multilib? ( + app-emulation/emul-linux-x86-opengl + app-emulation/emul-linux-x86-xlibs + ) + qt4? ( + x11-libs/libICE + x11-libs/libSM + x11-libs/libXcursor + x11-libs/libXfixes + x11-libs/libXxf86vm + x11-libs/qt-core:4 + x11-libs/qt-gui:4 + ) +" + +DEPEND="${RDEPEND} + x11-proto/inputproto + x11-proto/xf86miscproto + x11-proto/xf86vidmodeproto + x11-proto/xineramaproto + x11-libs/libXtst + sys-apps/findutils + app-misc/pax-utils +" + +EMULTILIB_PKG="true" + +S="${WORKDIR}" + +# QA Silencing +QA_TEXTRELS=" + usr/lib*/opengl/ati/lib/libGL.so.1.2 + usr/lib*/libatiadlxx.so + usr/lib*/xorg/modules/glesx.so + usr/lib*/libaticaldd.so + usr/lib*/dri/fglrx_dri.so +" + +QA_EXECSTACK=" + opt/bin/atiode + opt/bin/amdcccle + usr/lib*/opengl/ati/lib/libGL.so.1.2 + usr/lib*/dri/fglrx_dri.so +" + +QA_WX_LOAD=" + usr/lib*/opengl/ati/lib/libGL.so.1.2 + usr/lib*/dri/fglrx_dri.so +" + +QA_PRESTRIPPED=" + usr/lib\(32\|64\)\?/libXvBAW.so.1.0 + usr/lib\(32\|64\)\?/opengl/ati/lib/libGL.so.1.2 + usr/lib\(32\|64\)\?/opengl/ati/extensions/libglx.so + usr/lib\(32\|64\)\?/xorg/modules/glesx.so + usr/lib\(32\|64\)\?/libAMDXvBA.so.1.0 + usr/lib\(32\|64\)\?/libaticaldd.so + usr/lib\(32\|64\)\?/dri/fglrx_dri.so +" + +QA_SONAME=" + usr/lib\(32\|64\)\?/libatiadlxx.so + usr/lib\(32\|64\)\?/libaticalcl.so + usr/lib\(32\|64\)\?/libaticaldd.so + usr/lib\(32\|64\)\?/libaticalrt.so + usr/lib\(32\|64\)\?/libamdocl\(32\|64\)\?.so +" + +QA_DT_HASH=" + opt/bin/amdcccle + opt/bin/aticonfig + opt/bin/atiodcli + opt/bin/atiode + opt/bin/clinfo + opt/bin/fglrxinfo + opt/sbin/atieventsd + opt/sbin/amdnotifyui + usr/lib\(32\|64\)\?/libaticalcl.so + usr/lib\(32\|64\)\?/libaticalrt.so + usr/lib\(32\|64\)\?/libatiuki.so.1.0 + usr/lib\(32\|64\)\?/libatiadlxx.so + usr/lib\(32\|64\)\?/libfglrx_dm.so.1.0 + usr/lib\(32\|64\)\?/libXvBAW.so.1.0 + usr/lib\(32\|64\)\?/libAMDXvBA.so.1.0 + usr/lib\(32\|64\)\?/xorg/modules/amdxmm.so + usr/lib\(32\|64\)\?/xorg/modules/glesx.so + usr/lib\(32\|64\)\?/xorg/modules/linux/libfglrxdrm.so + usr/lib\(32\|64\)\?/xorg/modules/drivers/fglrx_drv.so + usr/lib\(32\|64\)\?/libaticaldd.so + usr/lib\(32\|64\)\?/dri/fglrx_dri.so + usr/lib\(32\|64\)\?/opengl/ati/extensions/libglx.so + usr/lib\(32\|64\)\?/opengl/ati/extensions/fglrx-libglx.so + usr/lib\(32\|64\)\?/opengl/ati/lib/fglrx-libGL.so.1.2 + usr/lib\(32\|64\)\?/opengl/ati/lib/libGL.so.1.2 + usr/lib\(32\|64\)\?/OpenCL/vendors/amd/libamdocl\(32\|64\)\?.so + usr/lib\(32\|64\)\?/OpenCL/vendors/amd/libOpenCL.so.1 +" + +_check_kernel_config() { + local failed=0 + local error="" + if ! kernel_is ge 2 6; then + eerror "You need a 2.6 linux kernel to compile against!" + die "No 2.6 Kernel found" + fi + + if ! linux_chkconfig_present MTRR; then + ewarn "You don't have MTRR support enabled in the kernel." + ewarn "Direct rendering will not work." + fi + + if linux_chkconfig_builtin DRM; then + ewarn "You have DRM support built in to the kernel" + ewarn "Direct rendering will not work." + fi + + if ! linux_chkconfig_present AGP && \ + ! linux_chkconfig_present PCIEPORTBUS; then + ewarn "You don't have AGP and/or PCIe support enabled in the kernel" + ewarn "Direct rendering will not work." + fi + + if ! linux_chkconfig_present ACPI; then + eerror "${P} requires the ACPI support in the kernel" + eerror "Please enable it:" + eerror " CONFIG_ACPI=y" + eerror "in /usr/src/linux/.config or" + eerror " Power management and ACPI options --->" + eerror " [*] Power Management support" + eerror "in the 'menuconfig'" + error+=" CONFIG_ACPI disabled;" + failed=1 + fi + + if ! linux_chkconfig_present PCI_MSI; then + eerror "${P} requires MSI in the kernel." + eerror "Please enable it:" + eerror " CONFIG_PCI_MSI=y" + eerror "in /usr/src/linux/.config or" + eerror " Bus options (PCI etc.) --->" + eerror " [*] Message Signaled Interrupts (MSI and MSI-X)" + eerror "in the kernel config." + error+=" CONFIG_PCI_MSI disabled;" + failed=1 + fi + + if linux_chkconfig_present LOCKDEP; then + eerror "You've enabled LOCKDEP -- lock tracking -- in the kernel." + eerror "Unfortunately, this option exports the symbol lock_acquire as GPL-only." + eerror "This prevents ${P} from compiling with an error like this:" + eerror "FATAL: modpost: GPL-incompatible module fglrx.ko uses GPL-only symbol 'lock_acquire'" + eerror "Please make sure the following options have been unset:" + eerror " Kernel hacking --->" + eerror " [ ] Lock debugging: detect incorrect freeing of live locks" + eerror " [ ] Lock debugging: prove locking correctness" + eerror " [ ] Lock usage statistics" + eerror "in 'menuconfig'" + error+=" LOCKDEP enabled;" + failed=1 + fi + + use amd64 && if ! linux_chkconfig_present COMPAT; then + eerror "${P} requires COMPAT." + eerror "Please enable the 32 bit emulation:" + eerror "Executable file formats / Emulations --->" + eerror " [*] IA32 Emulation" + eerror "in the kernel config." + eerror "if this doesn't enable CONFIG_COMPAT add" + eerror " CONFIG_COMPAT=y" + eerror "in /usr/src/linux/.config" + error+=" COMPAT disabled;" + failed=1 + fi + + kernel_is ge 2 6 37 && kernel_is le 2 6 38 && if ! linux_chkconfig_present BKL ; then + eerror "${P} requires BKL." + eerror "Please enable the Big Kernel Lock:" + eerror "Kernel hacking --->" + eerror " [*] Big Kernel Lock" + eerror "in the kernel config." + eerror "or add" + eerror " CONFIG_BKL=y" + eerror "in /usr/src/linux/.config" + error+=" BKL disabled;" + failed=1 + fi + + #if linux_chkconfig_present X86_X32; then + # eerror "You've enabled x32 in the kernel." + # eerror "Unfortunately, this option is not supported yet and prevents the fglrx" + # eerror "kernel module from loading." + # error+=" X86_32 enabled;" + # failed=1 + #fi + + [[ ${failed} -ne 0 ]] && die "${error}" +} + +pkg_pretend() { + # workaround until bug 365543 is solved + if use modules; then + linux-info_pkg_setup + require_configured_kernel + _check_kernel_config + fi +} + +pkg_setup() { + if use modules; then + 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="${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" + else + BUILD_PARAMS="${BUILD_PARAMS} CFLAGS_MODULE+=-DCOMPAT_ALLOC_USER_SPACE=compat_alloc_user_space" + fi + fi + # Define module dir. + MODULE_DIR="${S}/${FOLDER_PREFIX}/lib/modules/fglrx/build_mod" + # get the xorg-server version and set BASE_DIR for that + BASE_DIR="${S}/xpic" + + # amd64/x86 + if use amd64 ; then + MY_BASE_DIR="${BASE_DIR}_64a" + PKG_LIBDIR=lib64 + ARCH_DIR="${S}/arch/x86_64" + else + MY_BASE_DIR="${BASE_DIR}" + PKG_LIBDIR=lib + ARCH_DIR="${S}/arch/x86" + fi + + elog + elog "Please note that this driver supports only graphic cards based on" + elog "Evergreen chipset and newer." + elog "This represent the AMD Radeon HD 5400+ series at this moment." + elog + elog "If your card is older then use ${CATEGORY}/xf86-video-ati" + elog "For migration informations please reffer to:" + elog "http://www.gentoo.org/proj/en/desktop/x/x11/ati-migration-guide.xml" + einfo +} + +src_unpack() { + if [[ ${A} =~ .*\.tar\.gz ]]; then + unpack ${A} + else + #please note, RUN may be insanely assigned at top near SRC_URI + if [[ ${A} =~ .*\.zip ]]; then + unpack ${A} + [[ -z "$RUN" ]] && RUN="${S}/${A/%.zip/.run}" + else + RUN="${DISTDIR}/${A}" + fi + sh ${RUN} --extract "${S}" 2>&1 > /dev/null || die + fi +} + +src_prepare() { + # All kernel options for prepare are ment to be in here + if use modules; then + # version patches + # epatch "${FILESDIR}"/kernel/${PV}-*.patch + if use debug; then + sed -i '/^#define DRM_DEBUG_CODE/s/0/1/' \ + "${MODULE_DIR}/firegl_public.c" \ + || die "Failed to enable debug output." + fi + fi + + # These are the userspace utilities that we also have source for. + # We rebuild these later. + rm \ + "${ARCH_DIR}"/usr/X11R6/bin/fgl_glxgears \ + || die "bin rm failed" + + # in this version amdcccle isn't static, thus we depend on qt4 + use qt4 || rm "${ARCH_DIR}"/usr/X11R6/bin/amdcccle + + # ACPI fixups + sed -i \ + -e "s:/var/lib/xdm/authdir/authfiles/:/var/run/xauth/:" \ + -e "s:/var/lib/gdm/:/var/gdm/:" \ + "${S}/${FOLDER_PREFIX}etc/ati/authatieventsd.sh" \ + || die "sed failed." + + # Since "who" is in coreutils, we're using that one instead of "finger". + sed -i -e 's:finger:who:' \ + "${S}/${FOLDER_PREFIX}usr/share/doc/fglrx/examples/etc/acpi/ati-powermode.sh" \ + || die "Replacing 'finger' with 'who' failed." + # Adjust paths in the script from /usr/X11R6/bin/ to /opt/bin/ and + # add function to detect default state. + epatch "${FILESDIR}"/ati-powermode-opt-path-3.patch + + # see http://ati.cchtml.com/show_bug.cgi?id=495 + #epatch "${FILESDIR}"/ati-drivers-old_rsp.patch + # first hunk applied upstream second (x32 related) was not + epatch "${FILESDIR}"/ati-drivers-x32_something_something.patch + + cd "${MODULE_DIR}" + + # bugged fglrx build system, this file should be copied by hand + cp ${ARCH_DIR}/lib/modules/fglrx/build_mod/libfglrx_ip.a 2.6.x + + convert_to_m 2.6.x/Makefile || die "convert_to_m failed" + + # When built with ati's make.sh it defines a bunch of macros if + # certain .config values are set, falling back to less reliable + # detection methods if linux/autoconf.h is not available. We + # simply use the linux/autoconf.h settings directly, bypassing the + # detection script. + sed -i -e 's/__SMP__/CONFIG_SMP/' *.c *h || die "SMP sed failed" + sed -i -e 's/ifdef MODVERSIONS/ifdef CONFIG_MODVERSIONS/' *.c *.h \ + || die "MODVERSIONS sed failed" + cd "${S}" + + mkdir extra || die "mkdir failed" + cd extra + unpack ./../${FOLDER_PREFIX}usr/src/ati/fglrx_sample_source.tgz + + # Get rid of watermark. Oldest known reference: + # http://phoronix.com/forums/showthread.php?19875-Unsupported-Hardware-watermark + if use disable-watermark; then + ebegin "Disabling watermark" + driver="${MY_BASE_DIR}"/usr/X11R6/${PKG_LIBDIR}/modules/drivers/fglrx_drv.so + for x in $(objdump -d ${driver}|awk '/call/&&/EnableLogo/{print "\\x"$2"\\x"$3"\\x"$4"\\x"$5"\\x"$6}'); do + sed -i "s/${x/x5b/\x5b}/\x90\x90\x90\x90\x90/g" ${driver} || break 1 + done + eend $? || die "Disabling watermark failed" + fi +} + +src_compile() { + use modules && linux-mod_src_compile + + ebegin "Building fgl_glxgears" + cd "${S}"/extra/fgl_glxgears + # These extra libs/utils either have an Imakefile that does not + # work very well without tweaking or a Makefile ignoring CFLAGS + # and the like. We bypass those. + # The -DUSE_GLU is needed to compile using nvidia headers + # according to a comment in ati-drivers-extra-8.33.6.ebuild. + "$(tc-getCC)" -o fgl_glxgears ${CFLAGS} ${LDFLAGS} -DUSE_GLU \ + -I"${S}"/${FOLDER_PREFIX}usr/include fgl_glxgears.c \ + -lGL -lGLU -lX11 -lm || die "fgl_glxgears build failed" + eend $? +} + +src_test() { :; } # no tests present + +src_install() { + use modules && linux-mod_src_install + + # We can do two things here, and neither of them is very nice. + + # For direct rendering libGL has to be able to load one or more + # dri modules (files ending in _dri.so, like fglrx_dri.so). + # Gentoo's mesa looks for these files in the location specified by + # LIBGL_DRIVERS_PATH or LIBGL_DRIVERS_DIR, then in the hardcoded + # location /usr/$(get_libdir)/dri. Ati's libGL does the same + # thing, but the hardcoded location is /usr/X11R6/lib/modules/dri + # on x86 and amd64 32bit, /usr/X11R6/lib64/modules/dri on amd64 + # 64bit. So we can either put the .so files in that (unusual, + # compared to "normal" mesa libGL) location or set + # LIBGL_DRIVERS_PATH. We currently do the latter. See also bug + # 101539. + + # The problem with this approach is that LIBGL_DRIVERS_PATH + # *overrides* the default hardcoded location, it does not extend + # it. So if ati-drivers is merged but a non-ati libGL is selected + # and its hardcoded path does not match our LIBGL_DRIVERS_PATH + # (because it changed in a newer mesa or because it was compiled + # for a different set of multilib abis than we are) stuff breaks. + + # We create one file per ABI to work with "native" multilib, see + # below. + + echo "COLON_SEPARATED=LIBGL_DRIVERS_PATH" > "${T}/03ati-colon-sep" + doenvd "${T}/03ati-colon-sep" || die + + # All libraries that we have a 32 bit and 64 bit version of on + # 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 + + # This is sorted by the order the files occur in the source tree. + + # X modules. + exeinto /usr/$(get_libdir)/xorg/modules/drivers + doexe "${MY_BASE_DIR}"/usr/X11R6/${PKG_LIBDIR}/modules/drivers/fglrx_drv.so + exeinto /usr/$(get_libdir)/xorg/modules/linux + doexe "${MY_BASE_DIR}"/usr/X11R6/${PKG_LIBDIR}/modules/linux/libfglrxdrm.so + exeinto /usr/$(get_libdir)/xorg/modules + doexe "${MY_BASE_DIR}"/usr/X11R6/${PKG_LIBDIR}/modules/{glesx.so,amdxmm.so} + + # Arch-specific files. + # (s)bin. + into /opt + dosbin "${ARCH_DIR}"/usr/sbin/atieventsd + use qt4 && dosbin "${ARCH_DIR}"/usr/sbin/amdnotifyui + dobin "${ARCH_DIR}"/usr/bin/clinfo + # We cleaned out the compilable stuff in src_unpack + dobin "${ARCH_DIR}"/usr/X11R6/bin/* + + # Common files. + # etc. + 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} + doexe ${FOLDER_PREFIX}etc/ati/authatieventsd.sh + + # include. + insinto /usr + doins -r ${FOLDER_PREFIX}usr/include + insinto /usr/include/X11/extensions + + # Just the atigetsysteminfo.sh script. + into /usr + dosbin ${FOLDER_PREFIX}usr/sbin/* + + # data files for the control panel. + if use qt4 ; then + insinto /usr/share + doins -r ${FOLDER_PREFIX}usr/share/ati + insinto /usr/share/pixmaps + doins ${FOLDER_PREFIX}usr/share/icons/ccc_large.xpm + make_desktop_entry amdcccle 'AMD Catalyst Control Center' \ + ccc_large System + fi + + # doc. + dohtml -r ${FOLDER_PREFIX}usr/share/doc/fglrx + + doman ${FOLDER_PREFIX}usr/share/man/man8/atieventsd.8 + + pushd ${FOLDER_PREFIX}usr/share/doc/fglrx/examples/etc/acpi > /dev/null + + exeinto /etc/acpi + doexe ati-powermode.sh + insinto /etc/acpi/events + doins events/* + + popd > /dev/null + + # Done with the "source" tree. Install tools we rebuilt: + dobin extra/fgl_glxgears/fgl_glxgears + newdoc extra/fgl_glxgears/README README.fgl_glxgears + + # Gentoo-specific stuff: + newinitd "${FILESDIR}"/atieventsd.init atieventsd + echo 'ATIEVENTSDOPTS=""' > "${T}"/atieventsd.conf + newconfd "${T}"/atieventsd.conf atieventsd + + # PowerXpress stuff + exeinto /usr/$(get_libdir)/fglrx + doexe "${FILESDIR}"/switchlibGL || die "doexe switchlibGL failed" + cp "${FILESDIR}"/switchlibGL "${T}"/switchlibglx + doexe "${T}"/switchlibglx || die "doexe switchlibglx failed" +} + +src_install-libs() { + if [[ "${ABI}" == "amd64" ]]; then + local EX_BASE_DIR="${BASE_DIR}_64a" + local pkglibdir=lib64 + local MY_ARCH_DIR="${S}/arch/x86_64" + local oclsuffix=64 + else + local EX_BASE_DIR="${BASE_DIR}" + local pkglibdir=lib + local MY_ARCH_DIR="${S}/arch/x86" + local oclsuffix=32 + fi + einfo "ati tree '${pkglibdir}' -> '$(get_libdir)' on system" + + local ATI_ROOT=/usr/$(get_libdir)/opengl/ati + # To make sure we do not miss a spot when these change. + local libmajor=1 libminor=2 + local libver=${libmajor}.${libminor} + + # The GLX libraries + # (yes, this really is "lib" even on amd64/multilib --marienz) + exeinto ${ATI_ROOT}/lib + newexe "${MY_ARCH_DIR}"/usr/X11R6/${pkglibdir}/fglrx/fglrx-libGL.so.${libver} \ + libGL.so.${libver} + 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 + + # other libs + exeinto /usr/$(get_libdir) + # Everything except for the libGL.so installed some row above + doexe $(find "${MY_ARCH_DIR}"/usr/X11R6/${pkglibdir} \ + -maxdepth 1 -type f -name '*.so*' -not -name '*libGL.so*') + insinto /usr/$(get_libdir) + doins $(find "${MY_ARCH_DIR}"/usr/X11R6/${pkglibdir} \ + -maxdepth 1 -type f -not -name '*.so*') + + # DRI modules, installed into the path used by recent versions of mesa. + exeinto /usr/$(get_libdir)/dri + doexe "${MY_ARCH_DIR}"/usr/X11R6/${pkglibdir}/modules/dri/fglrx_dri.so + + # AMD Cal and OpenCL libraries + exeinto /usr/$(get_libdir)/OpenCL/vendors/amd + doexe "${MY_ARCH_DIR}"/usr/${pkglibdir}/libamdocl*.so* + doexe "${MY_ARCH_DIR}"/usr/${pkglibdir}/libOpenCL*.so* + dosym libOpenCL.so.${libmajor} /usr/$(get_libdir)/OpenCL/vendors/amd/libOpenCL.so + exeinto /usr/$(get_libdir) + doexe "${MY_ARCH_DIR}"/usr/${pkglibdir}/libati*.so* + + # OpenCL vendor files + insinto /etc/OpenCL/vendors/ + cat > "${T}"/amdocl${oclsuffix}.icd <<-EOF + /usr/$(get_libdir)/OpenCL/vendors/amd/libamdocl${oclsuffix}.so + EOF + doins "${T}"/amdocl${oclsuffix}.icd + + local envname="${T}"/04ati-dri-path + if [[ -n ${ABI} ]]; then + envname="${envname}-${ABI}" + fi + echo "LIBGL_DRIVERS_PATH=/usr/$(get_libdir)/dri" > "${envname}" + doenvd "${envname}" + + # Silence the QA notice by creating missing soname symlinks + for so in $(find "${D}"/usr/$(get_libdir) -maxdepth 1 -name *.so.[0-9].[0-9]) + do + local soname=${so##*/} + ## let's keep also this alternative way ;) + #dosym ${soname} /usr/$(get_libdir)/${soname%.[0-9]} + dosym ${soname} /usr/$(get_libdir)/$(scanelf -qF "#f%S" ${so}) + done + + #remove static libs if not wanted + use static-libs || rm -rf "${D}"/usr/$(get_libdir)/libfglrx_dm.a +} + +pkg_postinst() { + elog "To switch to AMD OpenGL, run \"eselect opengl set ati\"" + elog "To change your xorg.conf you can use the bundled \"aticonfig\"" + elog + elog "If you experience unexplained segmentation faults and kernel crashes" + elog "with this driver and multi-threaded applications such as wine," + elog "set UseFastTLS in xorg.conf to either 0 or 1, but not 2." + elog + elog "Fully rebooting the system after an ${PN} update is recommended" + elog "Stopping Xorg, reloading fglrx kernel module and restart Xorg" + elog "might not work" + elog + elog "Some cards need acpid running to handle events" + elog "Please add it to boot runlevel with rc-update add acpid boot" + elog + + use modules && linux-mod_pkg_postinst + "${ROOT}"/usr/bin/eselect opengl set --use-old ati + "${ROOT}"/usr/bin/eselect opencl set --use-old amd +} + +pkg_preinst() { + use modules && linux-mod_pkg_preinst +} + +pkg_prerm() { + "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 +} + +pkg_postrm() { + use modules && linux-mod_pkg_postrm + "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 +} diff --git a/x11-drivers/ati-drivers/metadata.xml b/x11-drivers/ati-drivers/metadata.xml index 2c3f9e28ed0c..9e60972c81c2 100644 --- a/x11-drivers/ati-drivers/metadata.xml +++ b/x11-drivers/ati-drivers/metadata.xml @@ -3,7 +3,8 @@ <pkgmetadata> <herd>x11</herd> <maintainer> - <email>lu_zero@gentoo.org</email> + <email>jkarlson@cc.hut.fi</email> + <description>Proxy maintainer. Assign to herd and CC him on bugs</description> </maintainer> <use> <flag name='qt4'> |