diff options
Diffstat (limited to 'x11-drivers')
27 files changed, 4 insertions, 10254 deletions
diff --git a/x11-drivers/nvidia-userspace/Manifest b/x11-drivers/nvidia-userspace/Manifest index 74281f93..722639cd 100644 --- a/x11-drivers/nvidia-userspace/Manifest +++ b/x11-drivers/nvidia-userspace/Manifest @@ -1,31 +1,23 @@ DIST NVIDIA-FreeBSD-x86-173.14.39.tar.gz 20038266 SHA256 63a922ce4c5b676b4cb1ace98094dace4cc5408f2553e183df7b2127777a238b SHA512 96982fe7e0751c52fbef534193de09d187b99c1984c05e791223eb804719d8b3ba72efd983f227661ded4b71569bdbb914f1f629ab73a8bc9b8172832ccf3ec6 WHIRLPOOL 21f5906f42adf0064c7a7f81ac8e323de488e6d36356ee42c31a15c31ebb64335d5e2cff0ff022d41de480f9e0a57b3b96387f17151c7b59eceba2c61a7a102b -DIST NVIDIA-FreeBSD-x86-304.121.tar.gz 33977409 SHA256 980e613a5f969741f15ce8b87077c3b4343c72f2762613bf96237ba11d963ec0 SHA512 e031d7ce8f2db917a54792792901ce46d9a939bd818ed5167b5dabf58d102b54c687addfb083283db3091e54bdd71479dc4d87699be22abefe65662d93c4e49f WHIRLPOOL facc59cea0ff57819dafb9465b697d34b1f309ef7b4eae072b3af93ff64672845b747de57a77bb66fd62f224df4cad85b97efbd6ff79726ba51995abfe7f871a DIST NVIDIA-FreeBSD-x86-304.123.tar.gz 34160879 SHA256 7e4433364c5f42de6611b8cf722e0073eae6763a6664d6b9fd652ef05ebee24b SHA512 7b65ab3e99bfb9f95655c3d9124849bb830d12e43ff2d5297496c114dcdd68f738229ea244f95c53e1fc9d62d64ad3b2efb17eccac0fc2f280e8f226a9a47e7d WHIRLPOOL a33ef07363f336b01248434e4aae80bad0ce5d20985dca53484c63c4f39eae9d5b2e8cab1e08e20a8857aac8acd15ac42605a8e3af1fc3f11b8dc9d75914db09 DIST NVIDIA-FreeBSD-x86-331.67.tar.gz 55876749 SHA256 0c88c363db516ef09b0027aacb1e686191d3d4676f44445bab2156c2197a6cae SHA512 0394aefbcd99a40e5cfc03a169bbf4bd8d34828cf2656ea49c560312e1cb7f575eeb32cd8dfe6f22a259e04efcf5183149846dee18b6ee254987f333fba82cba WHIRLPOOL 8b179600db7e8d1be476761ab0d5e6b5d10167e936044bf5de89115012bcdc0ecdd1ee7ed6da969261fe95f8b05c4b97a41343ed0ae2d283ff777d58971fbd7e -DIST NVIDIA-FreeBSD-x86-337.19.tar.gz 57982032 SHA256 49cc3dd716b6d74a308ea307146d9952d048f717814d5bec7bf1cdab9237f4da SHA512 379c6b216e1cfe44cac81a40700d4f44c13b5b30b6144c78103429f16e203915ed83c486de13e7865d833fdb4638f7a117c05952790839b052958cecc7982c59 WHIRLPOOL 1d4be4d8693381ed8796c7bb38ed9a4055c24e11be5e201d7f9bab68c12f7ccc2ded2d69d8cd8ffabe5f6269464ed0c883e6f4290fa8f04f93666e3b04724921 DIST NVIDIA-FreeBSD-x86-337.25.tar.gz 58137349 SHA256 9857b24b5d910fb8688a2b9e11039d88b70ec250e900149183454675a363e8db SHA512 0c85814061732bd09948b5fd203d5d3a1fd5df0e1c23f4af11e1cfae6f7d8c7d7f569f35398c2c5551abf7eb5ce357229fa9b16ce2c21799e96396cff3313777 WHIRLPOOL a7ca516e184334117e1cdd45b3f4c1b0a8c50281ffd1c3859865d877c2bfb20136c308b1ff09e4d64d0e7fef8eeddacab488d0bc30c98d82a9280572be5f0de0 -DIST NVIDIA-FreeBSD-x86-340.24.tar.gz 59001888 SHA256 43717bc70d138ac841c85befcc0475c9403354134d8a91529198a9b93951497a SHA512 a69f488d4c751e0f3307532579b386fc01538dc20a561c84fd01a22326a2a7af8a72f54c7e883b25f32a66b4f459ff65b870f0e9e74eae956a15076074665e60 WHIRLPOOL 0c2436d99bb5fa1b5d728781417c897f2f65bb78b517642c103fa67739b33a9f65d582063bdb000fd068a522bea48253b55aa843c88dbe914cd3f8dc19551a3b DIST NVIDIA-FreeBSD-x86-340.32.tar.gz 59021194 SHA256 ee4f34a279ae84b97373adbc8c91ab7d34eb52dd4a7b095d51d8592b3e264df8 SHA512 9b5eafa48ccb105fe978242096c99355a291314cacf7a232cb81292355dffac5496cdb8667fa4ad3f0f2286792bf0473f523535e3258bb3b0237c76dbf5ba837 WHIRLPOOL b9438f675f65ec0b55aa2c1ca8c3beb35d20f3c56837bbeb02d511b66d4bce825ba95852ecbca70f6f83ff53f23c98e1c0d2bd313d195426fea63baed27c1cce -DIST NVIDIA-FreeBSD-x86_64-304.121.tar.gz 34946870 SHA256 91fd8f924b99682c59f96e1b4513f8d2c51985fff743c8a448861b536955e2e9 SHA512 890a20aa82d16197a5633c8128dac5a042e057aef3cb5d338daafd284960a9851201f9bec68a06c10a632704b7537d13079f0f539565962a1092dc7eec324b11 WHIRLPOOL 52128075de0d8e841c340dbe408aad6ee10fea41a0b203ffa82ad5a0bf836d7b348e3de6d516012507df64de561741a18d9205a1752b635ec6b049d0c29a3e48 +DIST NVIDIA-FreeBSD-x86-340.46.tar.gz 59013852 SHA256 5aa4ec5f9ca4425cd3fdc47ac19c76900cecae8a9606632a8063514481363571 SHA512 03bddeb919c6ff58e11df2a4d7f0c30a8f47a9970704dde762c81183773057cdffadf37d60bb920c218b1c72bc8f71949aadcf250747f48b1cd27b1a6164949b WHIRLPOOL 0ce3f23d4660e368b10972a39366a1d26116e38fddaee1a3a4764e85e868151bc7f1e27f3c1dbbc52187c74acabd483c65455d7fd0b9679d89a2c05200e05d83 DIST NVIDIA-FreeBSD-x86_64-304.123.tar.gz 35144064 SHA256 32ea8ce22b4fe50f59782c390b8ec1d90bb44e02787255476f0304c60f11e877 SHA512 e12f55e2a303e8df628b3d7e5f2c80517cae4f6a146f20a3c10ab2d1147b4bc9386b678bbab9e519e28ea921832e1c855b4b8f4643c839717c5c97a833679b2a WHIRLPOOL 5d751bf72e1e089edcaab34d2ba8d413793a92c5a0d3601ff71285b458ad6aef4632481ece9f520f2006440d35b2eab3941e30f54d79351bc8da3ba12eaf3388 DIST NVIDIA-FreeBSD-x86_64-331.67.tar.gz 46997728 SHA256 5781bba8b7783f96c1f239961140317426910633fbfa3ba80fdcefe54aec7e92 SHA512 1653c03e091451f14c040c2b56de8574e5fd5d7b24db6ce979f99693f6a10e61e6c28fb3a962288a135551664973bba6d2f29b92aff726a4ee592fddc807db4e WHIRLPOOL a97d473c786451c7cb88155edb12a86da5f2888a584da7538dae93056357d0c63f294d638f6949c7a6f8255c60c3db84fdbb28ce10cd6da4c82758f95eb90679 -DIST NVIDIA-FreeBSD-x86_64-337.19.tar.gz 58790725 SHA256 25a9092675ac666d5adabd03eb367febdd1d931ab2df278fd854fbdf1b19dccf SHA512 fc430507dc3a572b6867d4688d41878d0baece2eb39c626445ed640eb063ea286e63af22b1507986cca77b293abd091d49aee28a04eedc3d9ccbf9310dcaf945 WHIRLPOOL 3efeaada02fcc738a3623ec9e1615688ac74183d028c9dfd57a3d1397ff705a7d7e16399433ae1227e183511ab04ac710c0a978bc47c14df199d257f7267add4 DIST NVIDIA-FreeBSD-x86_64-337.25.tar.gz 58941876 SHA256 189dc0f70528d0099d0396a52bf759af74d6a99203484be2d2d6514faf0d4161 SHA512 458c9200579a6caed02aabbc196ec998a0d19149cca665c5ef9bc709c018b991b27713c92d00bdd1ea6ddd86e04c641f387e1ec8a1235cc9581af9e7a3b19ebf WHIRLPOOL d819cf486edc443b1da39ea67582a12698b1dea1501f3b6738014a80f8a96260aa0ba30a9e2f1fac075f0f7d604dc94978f7f82092b40531dd4989a2954cc420 -DIST NVIDIA-FreeBSD-x86_64-340.24.tar.gz 59816713 SHA256 b05f406a887d6b96bc58b46338db43fffa8f702cf460a45adfbe1b90d96909d4 SHA512 6c789964f4b873c5404aeaf7ad742460217dc39719b3a3776639ddf53646495e72c155f8c2976f629297a3ec5bb22ae62e3a64eae423f482bd9338394e6f67a9 WHIRLPOOL b081ca26c0a8ebc07e2bef362b844ca165944741178ee6263c93704ef7c45748f3d9902eca6947688f0b5807a94aad04a8ec1ed0e6ae6053d741bc534fe7553f DIST NVIDIA-FreeBSD-x86_64-340.32.tar.gz 59836909 SHA256 4a55cbd4f87528d4d5b5a8809a8c6e2dac9ad22b0f8b357590893dfb39e52512 SHA512 ef333d94a147e04292d6e197ee72a7abfb10a84665931876455b689409af42ac713d1a16f965214a46d9dd28fd324769fa4dd14dde5caf20a8b23a9683b6c55e WHIRLPOOL 76fd78eb97b69d7a5d7dc46e06a8d7b4dc3fadc1f2c6995d86161ca90ce99ec4a0b42eedf09939a4436481bad33ef201f49c73c8add833cf912af86774d47b34 +DIST NVIDIA-FreeBSD-x86_64-340.46.tar.gz 59835566 SHA256 699a65b5184f8705ba4ddbefb5776136bec98619ea00af3304725e5e028b7346 SHA512 7a6ba9fbd769aec45985664edd7291403e70c0e89a90f5c0665d6433e4baa8e0b59ceb99e817b377753576d189c0091d5af0bc2da796726ce0a9f0ebfa831d5b WHIRLPOOL aea421916646f68efbba007c08319d7b26259e1ee146bd420910468c36c04c3bc574ee6db103d64259083b11190cb3d5342a3dd1af42b0a306aa4515eb4bc9af DIST NVIDIA-Linux-x86-173.14.39-pkg0.run 15134997 SHA256 a09935f37121ed3db8ae3da63a0d8e9d4348a19c859811c9fe44d6ce8e3eab23 SHA512 e24e15ccec725d3cbca502c2b77061776a81ef92917a950adec4ff6bdc34f10903aa654433177ea74be0dade4af81c5380d5710d375a5ea445940d06154bde93 WHIRLPOOL fce3d8e4f6cdf698f5a057514b6fe220bb1011025bdce5bd4cf0e424fb4d306d38251b6726bda03f290ea8137d5a95ed418cf8751722879f9042462abd9181b6 -DIST NVIDIA-Linux-x86-304.121.run 40081628 SHA256 25ee2e45bd1f728b9de30a88575dadea210549d812944fff2026cf192ea4c52d SHA512 a3848474f7996c260fb3f2692d2c35b17738d6f13fd20fcd49e52bd6b7fcefb91b436ebf0670579aa5cb7d250f5d2eb6ce28b4c087fa5c33373a2da91c42138f WHIRLPOOL 1fd3c0e8f397a9bc58011bbe8d830df9f46370bcb85c9df0e1155ced1d85f9106dd30fae9d708ff94ce92ebe04fa68e6d8ac32ae19840b92e0d3d29553e1ab85 DIST NVIDIA-Linux-x86-304.123.run 40250272 SHA256 d5034900173cb7195f52bd6add5bf574dfcd8868bd75c0e1793592c03b97f425 SHA512 7397a28c67a3cfc5ad58f079ced4c45639922c39008d606ca703c22dde34374c4942c894eec49d42187cf00cb0179e3dcf80edd28a81c4c89456a62e42f12b43 WHIRLPOOL 8b55196678cddba5e640f90525d69835c273befe01e4e1a87c00a21839e9a86bc68829a3c59c64609c47475466a158f43d8579897728cabe6b6bc0eadef62e2b DIST NVIDIA-Linux-x86-331.67.run 37064511 SHA256 696b4a574ad3cb2b3286e0848e7e831940110cc33c63de51890154dbbd31acc6 SHA512 2a17854b366aa67a398c8d66134fb78d0ccdf4a6b2fe874bb7c146cfd24501431ed7448f5b7e24c8f78c6b1f6c2d5da207fbf568c2135ef53e51e83ce02cc374 WHIRLPOOL 4ad64717eb43043bacfbecdd6efe38bc5bf598acf172984e7c3eb1dcd779a9cbe53a76ac6e7b94b1d950d1f279147ceee4037d89be589fef2219d826eb86d09e -DIST NVIDIA-Linux-x86-337.19.run 37872888 SHA256 f612f1a8a3ddaf867d52930a7292b75b811f56c3c12a0a70e1f6800363c640da SHA512 644b1491eaa61336af43eb2b5ff5eaaee4316936e9de97b64f84228b432428300770976a5ea0a461dd01f97d444ab8242480bc6b0265e7cba3b75f3d7a07a1bd WHIRLPOOL b347503614818df9c87ffa0ec1a123c339aa4b616dec58087b8e45cfdc229662bdc661dbd9fb68fd2ca19af5fb7d363540a2c440e9d854faf7728902d52f3dbd DIST NVIDIA-Linux-x86-337.25.run 37649836 SHA256 f76ece6bd98bfe2ae641a1847094e98c6f7ad7a01af682b4f38108d6b6227f9b SHA512 f68105a43f9129f4112c8a091ed7c9641708b62d20c199544e5e7079d5c5bdc0b6c83427be868e62c7134400ca62cab6a65eaff96ddb940768750250cbd50112 WHIRLPOOL 1ff92ffe33dad59bf393a7b6fe7523362433704dc8329701e74814c2eef833d15e44334264601080b90f723f5390ce6502fa3ed530fe9fadaf3efff139e65047 -DIST NVIDIA-Linux-x86-340.24.run 38451146 SHA256 55ed96acf22b6f67ce352576e73963730eb6a404df7ee8563d7dc1984d8fb130 SHA512 fc2bdd4346cb09607f20fa30c026fac302d0660a90f79192f41cf0c7f92877d8a1686fb3125996f2fc96884d6c1b886de9bf95cf2a5fe31068ba2a43d677c61e WHIRLPOOL 4a165fec8835fbd3aa36e3075140bbcd1b4e3ae76b4763bd9f17e4522c95bbbcc7686de6d1219a293d93804471b56c4b3f8a31f10f62227a8eec59457b747e10 DIST NVIDIA-Linux-x86-340.32.run 38587515 SHA256 1d0489c35c5b332c9b949d9de3c3cbab4ac3a94385aa41e7a7b62ef23f4395f5 SHA512 a67e57a1bd70a9cd5ae2bed70403920ed94d8eac9d08dcd380f6065cd597d5824e26ae25a0bcd56626190124c07d128f3b0429040794c8e8d3ead85860fcb646 WHIRLPOOL 66bf6db27edddae845606e82cf9397dbf483bbde23e97899575c8ac3f6ce86c84d88f8e60c60b1aad1360fe9bea4f43de030a849f88f43d482508de23cd24d8e +DIST NVIDIA-Linux-x86-340.46.run 38635506 SHA256 a2e6d779397372dea77466e85ba30a15211c24502687512694604e570db11f87 SHA512 3d90a73fbe07eb25ec80a485c3827bebaf64a941331d6f28fb9b925678d74d66421dfecf6fe9637fb57b4aece268e987bfa8f29c06567243ae998d7ddac25f98 WHIRLPOOL dca92cff7d72f105e89deea74d6de69d4f78f1a7b15adea9e4a8cbbca9007b4bee4cc9b9f0cb39d7a2436e141785a5cfd3011b235418e701d27e7393ffefbf66 DIST NVIDIA-Linux-x86_64-173.14.39-pkg2.run 21100833 SHA256 15a953666d5681ba54c97498b578ffd286a1dc96d605f3b02110f3f99813100e SHA512 a65cd496e6ed57f771c3d99f37f616a1242d97844f6faef7a807825ad899c0e536a99fde397020839f0857883b934032f9491024f3047a6b06d3eea1f5d77713 WHIRLPOOL dc5f243b7d1de7e2d1b7f005e018a2940d63335b11a7c83c234b348b7a1839e9131169d2ea928bd8c2f549a4535149b03e16e6c94d59dfa745f7f904ff790a45 -DIST NVIDIA-Linux-x86_64-304.121.run 68553265 SHA256 6532eef8b6f65dc44ed912b4ffa86494a954ae98f53c3ffd394fa511cdf75928 SHA512 d5d241043dab325aee209bcd8732c557250847f41408e1aded2026c849dddbc7d5cf3c42fc63e3bb6b81c2563359c763f902bbfe344258f0964fdc9edcb98d54 WHIRLPOOL ec7ea87171a22dfb73e0e9db48d0ac721a7be9d12c06073a481868690741afe34ffa861967ba919a13aafc9c83f55627c361e7b261a8fa0acce2d880545d2fb4 DIST NVIDIA-Linux-x86_64-304.123.run 68755898 SHA256 68ee60d2a96ff80adad7e62f79f55f137dd10b8c38ce6c60fb481e73fdf6b155 SHA512 b16df726e8ba48153fcea337ab198c913eaa9f1dd004bed5c4262731e12c5a7c775c2a31996e207d051e4e479b7eb5173fcffe07d9988877385503f940e15dd8 WHIRLPOOL e9fe629dd262e68fe776c28fd93b4923d03681b2761265383becf914e84429f094b311b6e02051d2fb61436d48a59051d20fe9c8803fe7ed7daf98cd936f0dab DIST NVIDIA-Linux-x86_64-331.67.run 60231750 SHA256 9c7f2bb44bb26a5effb915d8aa22132a6c06483e0cfa6f47b7265b15da83bbd7 SHA512 7368a60c282386bc5b68599cacd07a18a9be4c3fd624eac9eb92966221318723c3f44ae033163789eae1ae683e729d49268769e79c465aca6632c5a7e6d6942a WHIRLPOOL 552f590257e3e1e53b83563aeea840a78869c10ea2707cea779da99ec726cc17398fada84379537ac2e6a7dc8a653c8b00141ab35adb10a5a49d0da565c2eb73 -DIST NVIDIA-Linux-x86_64-337.19.run 68351793 SHA256 bd6998c4aa5e491fb8fcb957b11dfb983ebfb755e938fce0382b006a7aba59d2 SHA512 a3e01705a5c2b3a18e1ea1f5e9dc12043e2fd3b433ca2f76d45add137e5b3d44082bd790486615bd4a58473ba642d7ebc29abe848bee686e1478d7a3f57429a5 WHIRLPOOL 3d8e0192f3f0aeb4bf2699a567d1b41a1536f29331a89387f28bfd2335d8147ef9d6c4cbff8fe8d239ca15473e5d68c5ddb55f38a7f979ad0d81b66bcf13b068 DIST NVIDIA-Linux-x86_64-337.25.run 68053486 SHA256 83280f7738f65bb2e790e7530a38978cf0bd0aa741eda51629c9e9b068128af0 SHA512 27cb5030da00d6fa2a2dd6701cc149ce885e7ff7e7ca4f1629c27737357fdadedec41e830f5cacabef14646515d6d2729f753d78424260316e28111f2c3e53b9 WHIRLPOOL 72eba5239ae7272d3501403ef292f0e131896b3dd852a7e2423e79206d99aa5a4a3b98eb4193ad5cd1e0247ffd48189d3a3ba02ca307a759a4f15b9c9a386dbd -DIST NVIDIA-Linux-x86_64-340.24.run 69647833 SHA256 db0f4f45ece587b95a8ceb0d1acf6f7f758a370ee0c4adfa2403ba4828d58ce6 SHA512 c6f0b69786cc4be96e2d6e44d35b52758df990b51e826bea86ff626e31d853b3b5c774db8ccc881bed24d638e9c1afb903ed98d7f35a73d549ce812bdae459f7 WHIRLPOOL 25d3621d98ec012afdc3d5a0614292992d0569f3d5df38f127fe79a00fbdf25b2b548ddbdc01d59806d301a454fe79ee90e63ac1574e911aa51985e6c7bfd4d7 DIST NVIDIA-Linux-x86_64-340.32.run 69753673 SHA256 ef96003110564953cad4ffaec073696dcf9652338dfe5eb0c58ae3ce45db42ac SHA512 24c2dec161022bd229862ad66711232cf6424a0bd1eb056d7eb22a34e265d4b1f6208779cf507b480189f95f795d580a30ec5f8ab1bff549d2a41a57adcc14b4 WHIRLPOOL 6422498998253003fc1e1d6396449d2fe35b5836a083a254d9d7439434e5a3e1cf55afbcc3860a234ee9b3d0a1b18b9c58e4946107465559f0dcb121ef796e5a +DIST NVIDIA-Linux-x86_64-340.46.run 69693129 SHA256 57e7694b5a985ee95d2da37598ec37cdabf40f914490f4cdb0c5184f12a74270 SHA512 43cce2911c1894fe9240453179666c5fd1f437b49a1e3e5990463e9009ffa25d5da7f91105d1520c6133a0bdef9070c768efdc087e2d8ef85ed7896fcf555c7a WHIRLPOOL 9f845c5b6621fcc34a5b64d1c5823a3978a04c669ee4d3f7e3aee3f8da06c1c6eaa3b51792be2e1006945ee06df0c1a2650fc70d4257b768ca4d144a79775892 diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-173.14.31.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-173.14.31.ebuild deleted file mode 100644 index dc517c8c..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-173.14.31.ebuild +++ /dev/null @@ -1,395 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="2" - -inherit eutils unpacker multilib portability versionator flag-o-matic - -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI="x86? ( ftp://download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}-pkg0.run ) - amd64? ( ftp://download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}-pkg2.run ) - x86-fbsd? ( ftp://download.nvidia.com/freebsd/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )" - -LICENSE="NVIDIA" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd" -IUSE="multilib kernel_linux" -RESTRICT="strip" -EMULTILIB_PKG="true" - -COMMON="x11-base/xorg-server - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - multilib? ( app-emulation/emul-linux-x86-opengl ) - >=app-admin/eselect-opengl-1.0.9" -DEPEND="${COMMON} - kernel_linux? ( virtual/linux-sources )" -RDEPEND="${COMMON} - !<x11-drivers/nvidia-userspace-${PV} - !>x11-drivers/nvidia-userspace-${PV}" -PDEPEND="" - -QA_TEXTRELS_x86="usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libcuda.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/libXvMCNVIDIA.so.${PV}" - -QA_TEXTRELS_x86_fbsd="boot/modules/nvidia.ko - usr/lib/opengl/nvidia/lib/libGL.so.1 - usr/lib/opengl/nvidia/lib/libGLcore.so.1 - usr/lib/libnvidia-cfg.so.1 - usr/lib/opengl/nvidia/extensions/libglx.so.1 - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_amd64="usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV}" - -QA_EXECSTACK_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libXvMCNVIDIA.a:NVXVMC.o" - -QA_EXECSTACK_amd64="usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvcompiler.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libXvMCNVIDIA.a:NVXVMC.o - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig" - -QA_WX_LOAD_x86="usr/lib/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/libXvMCNVIDIA.a" - -QA_WX_LOAD_amd64="usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV}" - -QA_SONAME_amd64="usr/lib64/libnvcompiler.so.${PV}" - -QA_DT_HASH_amd64="usr/lib32/libcuda.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/lib64/libvdpau_nvidia.so.${PV} - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig" - -QA_DT_HASH_x86="usr/lib/libcuda.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig" - -if use x86; then - PKG_V="-pkg0" - NV_PACKAGE="${X86_NV_PACKAGE}" -elif use amd64; then - PKG_V="-pkg2" - NV_PACKAGE="${AMD64_NV_PACKAGE}" -elif use x86-fbsd; then - PKG_V="" - NV_PACKAGE="${X86_FBSD_NV_PACKAGE}" -fi - -S="${WORKDIR}/${NV_PACKAGE}${PKG_V}" - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use amd64 && has_multilib_profile && [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default abi." - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # On BSD userland it wants real make command - use userland_BSD && MAKE="$(get_bmake)" - - export _POSIX2_VERSION="199209" - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - NV_DOC="${S}/doc" - NV_EXEC="${S}/obj" - NV_LIB="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}/usr/share/doc" - NV_EXEC="${S}/usr/bin" - NV_LIB="${S}/usr/lib" - NV_SRC="${S}/usr/src/nv" - NV_MAN="${S}/usr/share/man/man1" - NV_X11="${S}/usr/X11R6/lib" - NV_X11_DRV="${NV_X11}/modules/drivers" - NV_X11_EXT="${NV_X11}/modules/extensions" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use x86-fbsd; then - mkdir "${S}" - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - use x86-fbsd && cd doc - - # Use the correct defines to make gtkglext build work - epatch "${FILESDIR}"/NVIDIA_glx-defines.patch - # Use some more sensible gl headers and make way for new glext.h - epatch "${FILESDIR}"/NVIDIA_glx-glheader.patch -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use x86-fbsd; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi -} - -src_install() { - if use kernel_linux; then - VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)" - if [ -z "$VIDEOGROUP" ]; then - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi - - # Add the aliases - [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR" - sed -e 's:PACKAGE:'${PF}':g' \ - -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \ - "${WORKDIR}"/nvidia - insinto /etc/modprobe.d - newins "${WORKDIR}"/nvidia nvidia.conf || die - fi - - # NVIDIA kernel <-> userspace driver config lib - dolib.so ${NV_LIB}/libnvidia-cfg.so.${NV_SOVER} || \ - die "failed to install libnvidia-cfg" - - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11_DRV}/nvidia_drv.so || die "failed to install nvidia_drv.so" - - # Xorg GLX driver - insinto /usr/$(get_libdir)/opengl/nvidia/extensions - doins ${NV_X11_EXT}/libglx.so.${NV_SOVER} || \ - die "failed to install libglx.so" - dosym /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so.${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so || \ - die "failed to create libglx.so symlink" - - # XvMC driver - dolib.a ${NV_X11}/libXvMCNVIDIA.a || \ - die "failed to install libXvMCNVIDIA.so" - dolib.so ${NV_X11}/libXvMCNVIDIA.so.${NV_SOVER} || \ - die "failed to install libXvMCNVIDIA.so" - dosym libXvMCNVIDIA.so.${NV_SOVER} /usr/$(get_libdir)/libXvMCNVIDIA.so || \ - die "failed to create libXvMCNVIDIA.so symlink" - - # CUDA headers (driver to come) - if use kernel_linux && [[ -d ${S}/usr/include/cuda ]]; then - dodir /usr/include/cuda - insinto /usr/include/cuda - doins usr/include/cuda/*.h || die "failed to install cuda headers" - fi - - # OpenCL headers (driver to come) - if [[ -d ${S}/usr/include/CL ]]; then - dodir /usr/include/CL - insinto /usr/include/CL - doins usr/include/CL/*.h || die "failed to install OpenCL headers" - fi - - # Documentation - dodoc ${NV_DOC}/XF86Config.sample - dohtml ${NV_DOC}/html/* - if use x86-fbsd; then - dodoc "${NV_DOC}/README" - doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" -# doman "${NV_MAN}/nvidia-smi.1.gz" - doman "${NV_MAN}/nvidia-xconfig.1.gz" - fi - - # Helper Apps - dobin ${NV_EXEC}/nvidia-xconfig || die - dobin ${NV_EXEC}/nvidia-bug-report.sh || die - if use kernel_linux; then - dobin ${NV_EXEC}/nvidia-smi || die - fi - - 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 - - is_final_abi || die "failed to iterate through all ABIs" -} - -# Install nvidia library: -# the first parameter is the place where to install it -# the second parameter is the base name of the library -# the third parameter is the provided soversion -donvidia() { - dodir $1 - exeinto $1 - - libname=$(basename $2) - - doexe $2.$3 || die "failed to install $2" - dosym ${libname}.$3 $1/${libname} || die "failed to symlink $2" - [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1 -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local NV_ROOT="/usr/${inslibdir}/opengl/nvidia" - local libdir= sover= - - if use kernel_linux; then - if has_multilib_profile && [[ ${ABI} == "x86" ]] ; then - libdir=usr/lib32 - else - libdir=usr/lib - fi - sover=${PV} - else - libdir=obj - # on FreeBSD it has just .1 suffix - sover=1 - fi - - # The GLX libraries - donvidia ${NV_ROOT}/lib ${libdir}/libGL.so ${sover} - donvidia ${NV_ROOT}/lib ${libdir}/libGLcore.so ${sover} - if use x86-fbsd; then - donvidia ${NV_ROOT}/lib ${libdir}/libnvidia-tls.so ${sover} - else - donvidia ${NV_ROOT}/lib ${libdir}/tls/libnvidia-tls.so ${sover} - fi - - #cuda - if [[ -f ${libdir}/libcuda.so.${sover} ]]; then - dolib.so ${libdir}/libcuda.so.${sover} - [[ "${sover}" != "1" ]] && dosym libcuda.so.${sover} /usr/${inslibdir}/libcuda.so.1 - dosym libcuda.so.1 /usr/${inslibdir}/libcuda.so - fi - - #vdpau - if [[ -f ${libdir}/libvdpau_nvidia.so.${sover} ]]; then - dolib.so ${libdir}/libvdpau_nvidia.so.${sover} - dosym libvdpau_nvidia.so.${sover} /usr/${inslibdir}/libvdpau_nvidia.so - fi - - # OpenCL - # NOTE: This isn't currently available in the publicly released drivers. - if [[ -f ${libdir}/libOpenCL.so.1.0.0 ]]; then - - dolib.so ${libdir}/libnvcompiler.so.${sover} - [[ "${sover}" != "1" ]] && dosym libnvcompiler.so.${sover} /usr/${inslibdir}/libnvcompiler.so.1 - dosym libnvcompiler.so.1 /usr/${inslibdir}/libnvcompiler.so - - dolib.so ${libdir}/libOpenCL.so.1.0.0 - dosym libOpenCL.so.1.0.0 /usr/${inslibdir}/libOpenCL.so.1 - dosym libOpenCL.so.1 /usr/${inslibdir}/libOpenCL.so - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - eselect opengl set --use-old nvidia - - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /usr/bin/nvidia-bug-report.sh included." - elog - elog "To work with compiz, you must enable the AddARGBGLXVisuals option." - elog - elog "If you are having resolution problems, try disabling DynamicTwinView." -} - -pkg_postrm() { - eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-173.14.34.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-173.14.34.ebuild deleted file mode 100644 index dc517c8c..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-173.14.34.ebuild +++ /dev/null @@ -1,395 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="2" - -inherit eutils unpacker multilib portability versionator flag-o-matic - -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI="x86? ( ftp://download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}-pkg0.run ) - amd64? ( ftp://download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}-pkg2.run ) - x86-fbsd? ( ftp://download.nvidia.com/freebsd/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )" - -LICENSE="NVIDIA" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd" -IUSE="multilib kernel_linux" -RESTRICT="strip" -EMULTILIB_PKG="true" - -COMMON="x11-base/xorg-server - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - multilib? ( app-emulation/emul-linux-x86-opengl ) - >=app-admin/eselect-opengl-1.0.9" -DEPEND="${COMMON} - kernel_linux? ( virtual/linux-sources )" -RDEPEND="${COMMON} - !<x11-drivers/nvidia-userspace-${PV} - !>x11-drivers/nvidia-userspace-${PV}" -PDEPEND="" - -QA_TEXTRELS_x86="usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libcuda.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/libXvMCNVIDIA.so.${PV}" - -QA_TEXTRELS_x86_fbsd="boot/modules/nvidia.ko - usr/lib/opengl/nvidia/lib/libGL.so.1 - usr/lib/opengl/nvidia/lib/libGLcore.so.1 - usr/lib/libnvidia-cfg.so.1 - usr/lib/opengl/nvidia/extensions/libglx.so.1 - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_amd64="usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV}" - -QA_EXECSTACK_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libXvMCNVIDIA.a:NVXVMC.o" - -QA_EXECSTACK_amd64="usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvcompiler.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libXvMCNVIDIA.a:NVXVMC.o - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig" - -QA_WX_LOAD_x86="usr/lib/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/libXvMCNVIDIA.a" - -QA_WX_LOAD_amd64="usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV}" - -QA_SONAME_amd64="usr/lib64/libnvcompiler.so.${PV}" - -QA_DT_HASH_amd64="usr/lib32/libcuda.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/lib64/libvdpau_nvidia.so.${PV} - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig" - -QA_DT_HASH_x86="usr/lib/libcuda.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig" - -if use x86; then - PKG_V="-pkg0" - NV_PACKAGE="${X86_NV_PACKAGE}" -elif use amd64; then - PKG_V="-pkg2" - NV_PACKAGE="${AMD64_NV_PACKAGE}" -elif use x86-fbsd; then - PKG_V="" - NV_PACKAGE="${X86_FBSD_NV_PACKAGE}" -fi - -S="${WORKDIR}/${NV_PACKAGE}${PKG_V}" - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use amd64 && has_multilib_profile && [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default abi." - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # On BSD userland it wants real make command - use userland_BSD && MAKE="$(get_bmake)" - - export _POSIX2_VERSION="199209" - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - NV_DOC="${S}/doc" - NV_EXEC="${S}/obj" - NV_LIB="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}/usr/share/doc" - NV_EXEC="${S}/usr/bin" - NV_LIB="${S}/usr/lib" - NV_SRC="${S}/usr/src/nv" - NV_MAN="${S}/usr/share/man/man1" - NV_X11="${S}/usr/X11R6/lib" - NV_X11_DRV="${NV_X11}/modules/drivers" - NV_X11_EXT="${NV_X11}/modules/extensions" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use x86-fbsd; then - mkdir "${S}" - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - use x86-fbsd && cd doc - - # Use the correct defines to make gtkglext build work - epatch "${FILESDIR}"/NVIDIA_glx-defines.patch - # Use some more sensible gl headers and make way for new glext.h - epatch "${FILESDIR}"/NVIDIA_glx-glheader.patch -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use x86-fbsd; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi -} - -src_install() { - if use kernel_linux; then - VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)" - if [ -z "$VIDEOGROUP" ]; then - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi - - # Add the aliases - [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR" - sed -e 's:PACKAGE:'${PF}':g' \ - -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \ - "${WORKDIR}"/nvidia - insinto /etc/modprobe.d - newins "${WORKDIR}"/nvidia nvidia.conf || die - fi - - # NVIDIA kernel <-> userspace driver config lib - dolib.so ${NV_LIB}/libnvidia-cfg.so.${NV_SOVER} || \ - die "failed to install libnvidia-cfg" - - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11_DRV}/nvidia_drv.so || die "failed to install nvidia_drv.so" - - # Xorg GLX driver - insinto /usr/$(get_libdir)/opengl/nvidia/extensions - doins ${NV_X11_EXT}/libglx.so.${NV_SOVER} || \ - die "failed to install libglx.so" - dosym /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so.${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so || \ - die "failed to create libglx.so symlink" - - # XvMC driver - dolib.a ${NV_X11}/libXvMCNVIDIA.a || \ - die "failed to install libXvMCNVIDIA.so" - dolib.so ${NV_X11}/libXvMCNVIDIA.so.${NV_SOVER} || \ - die "failed to install libXvMCNVIDIA.so" - dosym libXvMCNVIDIA.so.${NV_SOVER} /usr/$(get_libdir)/libXvMCNVIDIA.so || \ - die "failed to create libXvMCNVIDIA.so symlink" - - # CUDA headers (driver to come) - if use kernel_linux && [[ -d ${S}/usr/include/cuda ]]; then - dodir /usr/include/cuda - insinto /usr/include/cuda - doins usr/include/cuda/*.h || die "failed to install cuda headers" - fi - - # OpenCL headers (driver to come) - if [[ -d ${S}/usr/include/CL ]]; then - dodir /usr/include/CL - insinto /usr/include/CL - doins usr/include/CL/*.h || die "failed to install OpenCL headers" - fi - - # Documentation - dodoc ${NV_DOC}/XF86Config.sample - dohtml ${NV_DOC}/html/* - if use x86-fbsd; then - dodoc "${NV_DOC}/README" - doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" -# doman "${NV_MAN}/nvidia-smi.1.gz" - doman "${NV_MAN}/nvidia-xconfig.1.gz" - fi - - # Helper Apps - dobin ${NV_EXEC}/nvidia-xconfig || die - dobin ${NV_EXEC}/nvidia-bug-report.sh || die - if use kernel_linux; then - dobin ${NV_EXEC}/nvidia-smi || die - fi - - 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 - - is_final_abi || die "failed to iterate through all ABIs" -} - -# Install nvidia library: -# the first parameter is the place where to install it -# the second parameter is the base name of the library -# the third parameter is the provided soversion -donvidia() { - dodir $1 - exeinto $1 - - libname=$(basename $2) - - doexe $2.$3 || die "failed to install $2" - dosym ${libname}.$3 $1/${libname} || die "failed to symlink $2" - [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1 -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local NV_ROOT="/usr/${inslibdir}/opengl/nvidia" - local libdir= sover= - - if use kernel_linux; then - if has_multilib_profile && [[ ${ABI} == "x86" ]] ; then - libdir=usr/lib32 - else - libdir=usr/lib - fi - sover=${PV} - else - libdir=obj - # on FreeBSD it has just .1 suffix - sover=1 - fi - - # The GLX libraries - donvidia ${NV_ROOT}/lib ${libdir}/libGL.so ${sover} - donvidia ${NV_ROOT}/lib ${libdir}/libGLcore.so ${sover} - if use x86-fbsd; then - donvidia ${NV_ROOT}/lib ${libdir}/libnvidia-tls.so ${sover} - else - donvidia ${NV_ROOT}/lib ${libdir}/tls/libnvidia-tls.so ${sover} - fi - - #cuda - if [[ -f ${libdir}/libcuda.so.${sover} ]]; then - dolib.so ${libdir}/libcuda.so.${sover} - [[ "${sover}" != "1" ]] && dosym libcuda.so.${sover} /usr/${inslibdir}/libcuda.so.1 - dosym libcuda.so.1 /usr/${inslibdir}/libcuda.so - fi - - #vdpau - if [[ -f ${libdir}/libvdpau_nvidia.so.${sover} ]]; then - dolib.so ${libdir}/libvdpau_nvidia.so.${sover} - dosym libvdpau_nvidia.so.${sover} /usr/${inslibdir}/libvdpau_nvidia.so - fi - - # OpenCL - # NOTE: This isn't currently available in the publicly released drivers. - if [[ -f ${libdir}/libOpenCL.so.1.0.0 ]]; then - - dolib.so ${libdir}/libnvcompiler.so.${sover} - [[ "${sover}" != "1" ]] && dosym libnvcompiler.so.${sover} /usr/${inslibdir}/libnvcompiler.so.1 - dosym libnvcompiler.so.1 /usr/${inslibdir}/libnvcompiler.so - - dolib.so ${libdir}/libOpenCL.so.1.0.0 - dosym libOpenCL.so.1.0.0 /usr/${inslibdir}/libOpenCL.so.1 - dosym libOpenCL.so.1 /usr/${inslibdir}/libOpenCL.so - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - eselect opengl set --use-old nvidia - - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /usr/bin/nvidia-bug-report.sh included." - elog - elog "To work with compiz, you must enable the AddARGBGLXVisuals option." - elog - elog "If you are having resolution problems, try disabling DynamicTwinView." -} - -pkg_postrm() { - eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-173.14.35.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-173.14.35.ebuild deleted file mode 100644 index dc517c8c..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-173.14.35.ebuild +++ /dev/null @@ -1,395 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="2" - -inherit eutils unpacker multilib portability versionator flag-o-matic - -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI="x86? ( ftp://download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}-pkg0.run ) - amd64? ( ftp://download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}-pkg2.run ) - x86-fbsd? ( ftp://download.nvidia.com/freebsd/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )" - -LICENSE="NVIDIA" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd" -IUSE="multilib kernel_linux" -RESTRICT="strip" -EMULTILIB_PKG="true" - -COMMON="x11-base/xorg-server - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - multilib? ( app-emulation/emul-linux-x86-opengl ) - >=app-admin/eselect-opengl-1.0.9" -DEPEND="${COMMON} - kernel_linux? ( virtual/linux-sources )" -RDEPEND="${COMMON} - !<x11-drivers/nvidia-userspace-${PV} - !>x11-drivers/nvidia-userspace-${PV}" -PDEPEND="" - -QA_TEXTRELS_x86="usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libcuda.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/libXvMCNVIDIA.so.${PV}" - -QA_TEXTRELS_x86_fbsd="boot/modules/nvidia.ko - usr/lib/opengl/nvidia/lib/libGL.so.1 - usr/lib/opengl/nvidia/lib/libGLcore.so.1 - usr/lib/libnvidia-cfg.so.1 - usr/lib/opengl/nvidia/extensions/libglx.so.1 - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_amd64="usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV}" - -QA_EXECSTACK_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libXvMCNVIDIA.a:NVXVMC.o" - -QA_EXECSTACK_amd64="usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvcompiler.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libXvMCNVIDIA.a:NVXVMC.o - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig" - -QA_WX_LOAD_x86="usr/lib/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/libXvMCNVIDIA.a" - -QA_WX_LOAD_amd64="usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV}" - -QA_SONAME_amd64="usr/lib64/libnvcompiler.so.${PV}" - -QA_DT_HASH_amd64="usr/lib32/libcuda.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/lib64/libvdpau_nvidia.so.${PV} - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig" - -QA_DT_HASH_x86="usr/lib/libcuda.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig" - -if use x86; then - PKG_V="-pkg0" - NV_PACKAGE="${X86_NV_PACKAGE}" -elif use amd64; then - PKG_V="-pkg2" - NV_PACKAGE="${AMD64_NV_PACKAGE}" -elif use x86-fbsd; then - PKG_V="" - NV_PACKAGE="${X86_FBSD_NV_PACKAGE}" -fi - -S="${WORKDIR}/${NV_PACKAGE}${PKG_V}" - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use amd64 && has_multilib_profile && [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default abi." - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # On BSD userland it wants real make command - use userland_BSD && MAKE="$(get_bmake)" - - export _POSIX2_VERSION="199209" - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - NV_DOC="${S}/doc" - NV_EXEC="${S}/obj" - NV_LIB="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}/usr/share/doc" - NV_EXEC="${S}/usr/bin" - NV_LIB="${S}/usr/lib" - NV_SRC="${S}/usr/src/nv" - NV_MAN="${S}/usr/share/man/man1" - NV_X11="${S}/usr/X11R6/lib" - NV_X11_DRV="${NV_X11}/modules/drivers" - NV_X11_EXT="${NV_X11}/modules/extensions" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use x86-fbsd; then - mkdir "${S}" - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - use x86-fbsd && cd doc - - # Use the correct defines to make gtkglext build work - epatch "${FILESDIR}"/NVIDIA_glx-defines.patch - # Use some more sensible gl headers and make way for new glext.h - epatch "${FILESDIR}"/NVIDIA_glx-glheader.patch -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use x86-fbsd; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi -} - -src_install() { - if use kernel_linux; then - VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)" - if [ -z "$VIDEOGROUP" ]; then - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi - - # Add the aliases - [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR" - sed -e 's:PACKAGE:'${PF}':g' \ - -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \ - "${WORKDIR}"/nvidia - insinto /etc/modprobe.d - newins "${WORKDIR}"/nvidia nvidia.conf || die - fi - - # NVIDIA kernel <-> userspace driver config lib - dolib.so ${NV_LIB}/libnvidia-cfg.so.${NV_SOVER} || \ - die "failed to install libnvidia-cfg" - - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11_DRV}/nvidia_drv.so || die "failed to install nvidia_drv.so" - - # Xorg GLX driver - insinto /usr/$(get_libdir)/opengl/nvidia/extensions - doins ${NV_X11_EXT}/libglx.so.${NV_SOVER} || \ - die "failed to install libglx.so" - dosym /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so.${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so || \ - die "failed to create libglx.so symlink" - - # XvMC driver - dolib.a ${NV_X11}/libXvMCNVIDIA.a || \ - die "failed to install libXvMCNVIDIA.so" - dolib.so ${NV_X11}/libXvMCNVIDIA.so.${NV_SOVER} || \ - die "failed to install libXvMCNVIDIA.so" - dosym libXvMCNVIDIA.so.${NV_SOVER} /usr/$(get_libdir)/libXvMCNVIDIA.so || \ - die "failed to create libXvMCNVIDIA.so symlink" - - # CUDA headers (driver to come) - if use kernel_linux && [[ -d ${S}/usr/include/cuda ]]; then - dodir /usr/include/cuda - insinto /usr/include/cuda - doins usr/include/cuda/*.h || die "failed to install cuda headers" - fi - - # OpenCL headers (driver to come) - if [[ -d ${S}/usr/include/CL ]]; then - dodir /usr/include/CL - insinto /usr/include/CL - doins usr/include/CL/*.h || die "failed to install OpenCL headers" - fi - - # Documentation - dodoc ${NV_DOC}/XF86Config.sample - dohtml ${NV_DOC}/html/* - if use x86-fbsd; then - dodoc "${NV_DOC}/README" - doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" -# doman "${NV_MAN}/nvidia-smi.1.gz" - doman "${NV_MAN}/nvidia-xconfig.1.gz" - fi - - # Helper Apps - dobin ${NV_EXEC}/nvidia-xconfig || die - dobin ${NV_EXEC}/nvidia-bug-report.sh || die - if use kernel_linux; then - dobin ${NV_EXEC}/nvidia-smi || die - fi - - 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 - - is_final_abi || die "failed to iterate through all ABIs" -} - -# Install nvidia library: -# the first parameter is the place where to install it -# the second parameter is the base name of the library -# the third parameter is the provided soversion -donvidia() { - dodir $1 - exeinto $1 - - libname=$(basename $2) - - doexe $2.$3 || die "failed to install $2" - dosym ${libname}.$3 $1/${libname} || die "failed to symlink $2" - [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1 -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local NV_ROOT="/usr/${inslibdir}/opengl/nvidia" - local libdir= sover= - - if use kernel_linux; then - if has_multilib_profile && [[ ${ABI} == "x86" ]] ; then - libdir=usr/lib32 - else - libdir=usr/lib - fi - sover=${PV} - else - libdir=obj - # on FreeBSD it has just .1 suffix - sover=1 - fi - - # The GLX libraries - donvidia ${NV_ROOT}/lib ${libdir}/libGL.so ${sover} - donvidia ${NV_ROOT}/lib ${libdir}/libGLcore.so ${sover} - if use x86-fbsd; then - donvidia ${NV_ROOT}/lib ${libdir}/libnvidia-tls.so ${sover} - else - donvidia ${NV_ROOT}/lib ${libdir}/tls/libnvidia-tls.so ${sover} - fi - - #cuda - if [[ -f ${libdir}/libcuda.so.${sover} ]]; then - dolib.so ${libdir}/libcuda.so.${sover} - [[ "${sover}" != "1" ]] && dosym libcuda.so.${sover} /usr/${inslibdir}/libcuda.so.1 - dosym libcuda.so.1 /usr/${inslibdir}/libcuda.so - fi - - #vdpau - if [[ -f ${libdir}/libvdpau_nvidia.so.${sover} ]]; then - dolib.so ${libdir}/libvdpau_nvidia.so.${sover} - dosym libvdpau_nvidia.so.${sover} /usr/${inslibdir}/libvdpau_nvidia.so - fi - - # OpenCL - # NOTE: This isn't currently available in the publicly released drivers. - if [[ -f ${libdir}/libOpenCL.so.1.0.0 ]]; then - - dolib.so ${libdir}/libnvcompiler.so.${sover} - [[ "${sover}" != "1" ]] && dosym libnvcompiler.so.${sover} /usr/${inslibdir}/libnvcompiler.so.1 - dosym libnvcompiler.so.1 /usr/${inslibdir}/libnvcompiler.so - - dolib.so ${libdir}/libOpenCL.so.1.0.0 - dosym libOpenCL.so.1.0.0 /usr/${inslibdir}/libOpenCL.so.1 - dosym libOpenCL.so.1 /usr/${inslibdir}/libOpenCL.so - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - eselect opengl set --use-old nvidia - - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /usr/bin/nvidia-bug-report.sh included." - elog - elog "To work with compiz, you must enable the AddARGBGLXVisuals option." - elog - elog "If you are having resolution problems, try disabling DynamicTwinView." -} - -pkg_postrm() { - eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-275.09.07.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-275.09.07.ebuild deleted file mode 100644 index 6e988b89..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-275.09.07.ebuild +++ /dev/null @@ -1,414 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="2" - -inherit eutils unpacker multilib portability versionator flag-o-matic - -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI="x86? ( http://download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run ) - amd64? ( http://download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run ) - x86-fbsd? ( http://download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )" - -LICENSE="NVIDIA" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd" -IUSE="multilib kernel_linux" -RESTRICT="strip" -EMULTILIB_PKG="true" - -COMMON="<x11-base/xorg-server-1.10.99 - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - multilib? ( app-emulation/emul-linux-x86-xlibs ) - >=app-admin/eselect-opengl-1.0.9 - !<media-video/nvidia-settings-256.52" -DEPEND="${COMMON}" -RDEPEND="${COMMON} - x11-libs/libXvMC - !<x11-drivers/nvidia-userspace-${PV} - !>x11-drivers/nvidia-userspace-${PV}" -PDEPEND=">=x11-libs/libvdpau-0.3-r1" - -QA_TEXTRELS_x86=" - usr/lib/libOpenCL.so.1.0.0 - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/libnvcuvid.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_x86_fbsd="boot/modules/nvidia.ko - usr/lib/opengl/nvidia/lib/libGL.so.1 - usr/lib/libnvidia-glcore.so.1 - usr/lib/libnvidia-cfg.so.1 - usr/lib/libnvidia-ml.so.1 - usr/lib/opengl/nvidia/extensions/libglx.so.1 - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_amd64="usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_EXECSTACK_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib/libXvMCNVIDIA.a:NVXVMC.o - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/libOpenCL.so.1.0.0" - -QA_EXECSTACK_amd64="usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.a:NVXVMC.o - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/libOpenCL.so.1.0.0 - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig - usr/bin/nvidia-settings" - -QA_WX_LOAD_x86="usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/libXvMCNVIDIA.a - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_WX_LOAD_amd64="usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_SONAME_x86="usr/lib/libnvidia-compiler.so.${PV}" - -QA_SONAME_amd64="usr/lib64/libnvidia-compiler.so.${PV} - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_DT_HASH_amd64="usr/lib32/libcuda.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/libnvcuvid.so.${PV} - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig - usr/bin/nvidia-settings" - -QA_DT_HASH_x86="usr/lib/libcuda.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/libOpenCL.so.1.0.0 - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvcuvid.so.${PV} - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig - usr/bin/nvidia-settings" - - -S="${WORKDIR}/" - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use amd64 && has_multilib_profile && [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default abi." - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # On BSD userland it wants real make command - use userland_BSD && MAKE="$(get_bmake)" - - export _POSIX2_VERSION="199209" - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - NV_DOC="${S}/doc" - NV_EXEC="${S}/obj" - NV_LIB="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}" - NV_EXEC="${S}" - NV_LIB="${S}" - NV_SRC="${S}/kernel" - NV_MAN="${S}" - NV_X11="${S}" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use x86-fbsd; then - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - use x86-fbsd && cd doc -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use x86-fbsd; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi -} - -src_install() { - if use kernel_linux; then - VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)" - if [ -z "$VIDEOGROUP" ]; then - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi - - # Add the aliases - [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR" - sed -e 's:PACKAGE:'${PF}':g' \ - -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \ - "${WORKDIR}"/nvidia - insinto /etc/modprobe.d - newins "${WORKDIR}"/nvidia nvidia.conf || die - fi - - # NVIDIA kernel <-> userspace driver config lib - dolib.so ${NV_LIB}/libnvidia-cfg.so.${NV_SOVER} || \ - die "failed to install libnvidia-cfg" - dosym /usr/$(get_libdir)/libnvidia-cfg.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-cfg.so || \ - die "failed to create libnvidia-cfg.so symlink" - - # NVIDIA monitoring library - dolib.so ${NV_LIB}/libnvidia-ml.so.${NV_SOVER} || \ - die "failed to install libnvidia-ml" - dosym /usr/$(get_libdir)/libnvidia-ml.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-ml.so || \ - die "failed to create libnvidia-ml.so symlink" - - # NVIDIA video decode <-> CUDA - dolib.so ${NV_LIB}/libnvcuvid.so.${NV_SOVER} || \ - die "failed to install libnvcuvid.so" - dosym /usr/$(get_libdir)/libnvcuvid.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvcuvid.so || \ - die "failed to create libnvcuvid.so symlink" - - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11_DRV}/nvidia_drv.so || die "failed to install nvidia_drv.so" - - # Xorg GLX driver - insinto /usr/$(get_libdir)/opengl/nvidia/extensions - doins ${NV_X11_EXT}/libglx.so.${NV_SOVER} || \ - die "failed to install libglx.so" - dosym /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so.${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so || \ - die "failed to create libglx.so symlink" - - # XvMC driver - dolib.a ${NV_X11}/libXvMCNVIDIA.a || \ - die "failed to install libXvMCNVIDIA.so" - dolib.so ${NV_X11}/libXvMCNVIDIA.so.${NV_SOVER} || \ - die "failed to install libXvMCNVIDIA.so" - dosym libXvMCNVIDIA.so.${NV_SOVER} /usr/$(get_libdir)/libXvMCNVIDIA.so || \ - die "failed to create libXvMCNVIDIA.so symlink" - - # OpenCL ICD for NVIDIA - if use kernel_linux; then - dodir /etc/OpenCL/vendors - insinto /etc/OpenCL/vendors - doins nvidia.icd - fi - - # Documentation - dohtml ${NV_DOC}/html/* - if use x86-fbsd; then - dodoc "${NV_DOC}/README" - doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" - doman "${NV_MAN}/nvidia-smi.1.gz" - doman "${NV_MAN}/nvidia-xconfig.1.gz" - fi - - # Helper Apps - dobin ${NV_EXEC}/nvidia-xconfig || die - dobin ${NV_EXEC}/nvidia-bug-report.sh || die - if use kernel_linux; then - dobin ${NV_EXEC}/nvidia-smi || die - fi - - 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 - - is_final_abi || die "failed to iterate through all ABIs" -} - -# Install nvidia library: -# the first parameter is the place where to install it -# the second parameter is the base name of the library -# the third parameter is the provided soversion -donvidia() { - dodir $1 - exeinto $1 - - libname=$(basename $2) - - doexe $2.$3 || die "failed to install $2" - dosym ${libname}.$3 $1/${libname} || die "failed to symlink $2" - [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1 -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local NV_ROOT="/usr/${inslibdir}/opengl/nvidia" - local libdir= sover= - - if use kernel_linux; then - if has_multilib_profile && [[ ${ABI} == "x86" ]] ; then - libdir=32 - else - libdir=. - fi - sover=${PV} - else - libdir=obj - # on FreeBSD it has just .1 suffix - sover=1 - fi - - # The GLX libraries - donvidia ${NV_ROOT}/lib ${libdir}/libGL.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-glcore.so ${sover} - if use x86-fbsd; then - donvidia ${NV_ROOT}/lib ${libdir}/libnvidia-tls.so ${sover} - else - donvidia ${NV_ROOT}/lib ${libdir}/tls/libnvidia-tls.so ${sover} - fi - - # VDPAU - donvidia /usr/${inslibdir} ${libdir}/libvdpau_nvidia.so ${sover} - - # CUDA & OpenCL - if use kernel_linux; then - donvidia /usr/${inslibdir} ${libdir}/libcuda.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-compiler.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libOpenCL.so 1.0.0 - dosym libOpenCL.so.1 /usr/${inslibdir}/libOpenCL.so - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - eselect opengl set --use-old nvidia - - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /usr/bin/nvidia-bug-report.sh included." - elog - elog "To work with compiz, you must enable the AddARGBGLXVisuals option." - elog - elog "If you are having resolution problems, try disabling DynamicTwinView." - elog -} - -pkg_postrm() { - eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-280.13.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-280.13.ebuild deleted file mode 100644 index 6e988b89..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-280.13.ebuild +++ /dev/null @@ -1,414 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="2" - -inherit eutils unpacker multilib portability versionator flag-o-matic - -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI="x86? ( http://download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run ) - amd64? ( http://download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run ) - x86-fbsd? ( http://download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )" - -LICENSE="NVIDIA" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd" -IUSE="multilib kernel_linux" -RESTRICT="strip" -EMULTILIB_PKG="true" - -COMMON="<x11-base/xorg-server-1.10.99 - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - multilib? ( app-emulation/emul-linux-x86-xlibs ) - >=app-admin/eselect-opengl-1.0.9 - !<media-video/nvidia-settings-256.52" -DEPEND="${COMMON}" -RDEPEND="${COMMON} - x11-libs/libXvMC - !<x11-drivers/nvidia-userspace-${PV} - !>x11-drivers/nvidia-userspace-${PV}" -PDEPEND=">=x11-libs/libvdpau-0.3-r1" - -QA_TEXTRELS_x86=" - usr/lib/libOpenCL.so.1.0.0 - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/libnvcuvid.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_x86_fbsd="boot/modules/nvidia.ko - usr/lib/opengl/nvidia/lib/libGL.so.1 - usr/lib/libnvidia-glcore.so.1 - usr/lib/libnvidia-cfg.so.1 - usr/lib/libnvidia-ml.so.1 - usr/lib/opengl/nvidia/extensions/libglx.so.1 - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_amd64="usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_EXECSTACK_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib/libXvMCNVIDIA.a:NVXVMC.o - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/libOpenCL.so.1.0.0" - -QA_EXECSTACK_amd64="usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.a:NVXVMC.o - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/libOpenCL.so.1.0.0 - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig - usr/bin/nvidia-settings" - -QA_WX_LOAD_x86="usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/libXvMCNVIDIA.a - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_WX_LOAD_amd64="usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_SONAME_x86="usr/lib/libnvidia-compiler.so.${PV}" - -QA_SONAME_amd64="usr/lib64/libnvidia-compiler.so.${PV} - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_DT_HASH_amd64="usr/lib32/libcuda.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/libnvcuvid.so.${PV} - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig - usr/bin/nvidia-settings" - -QA_DT_HASH_x86="usr/lib/libcuda.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/libOpenCL.so.1.0.0 - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvcuvid.so.${PV} - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig - usr/bin/nvidia-settings" - - -S="${WORKDIR}/" - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use amd64 && has_multilib_profile && [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default abi." - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # On BSD userland it wants real make command - use userland_BSD && MAKE="$(get_bmake)" - - export _POSIX2_VERSION="199209" - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - NV_DOC="${S}/doc" - NV_EXEC="${S}/obj" - NV_LIB="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}" - NV_EXEC="${S}" - NV_LIB="${S}" - NV_SRC="${S}/kernel" - NV_MAN="${S}" - NV_X11="${S}" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use x86-fbsd; then - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - use x86-fbsd && cd doc -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use x86-fbsd; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi -} - -src_install() { - if use kernel_linux; then - VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)" - if [ -z "$VIDEOGROUP" ]; then - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi - - # Add the aliases - [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR" - sed -e 's:PACKAGE:'${PF}':g' \ - -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \ - "${WORKDIR}"/nvidia - insinto /etc/modprobe.d - newins "${WORKDIR}"/nvidia nvidia.conf || die - fi - - # NVIDIA kernel <-> userspace driver config lib - dolib.so ${NV_LIB}/libnvidia-cfg.so.${NV_SOVER} || \ - die "failed to install libnvidia-cfg" - dosym /usr/$(get_libdir)/libnvidia-cfg.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-cfg.so || \ - die "failed to create libnvidia-cfg.so symlink" - - # NVIDIA monitoring library - dolib.so ${NV_LIB}/libnvidia-ml.so.${NV_SOVER} || \ - die "failed to install libnvidia-ml" - dosym /usr/$(get_libdir)/libnvidia-ml.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-ml.so || \ - die "failed to create libnvidia-ml.so symlink" - - # NVIDIA video decode <-> CUDA - dolib.so ${NV_LIB}/libnvcuvid.so.${NV_SOVER} || \ - die "failed to install libnvcuvid.so" - dosym /usr/$(get_libdir)/libnvcuvid.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvcuvid.so || \ - die "failed to create libnvcuvid.so symlink" - - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11_DRV}/nvidia_drv.so || die "failed to install nvidia_drv.so" - - # Xorg GLX driver - insinto /usr/$(get_libdir)/opengl/nvidia/extensions - doins ${NV_X11_EXT}/libglx.so.${NV_SOVER} || \ - die "failed to install libglx.so" - dosym /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so.${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so || \ - die "failed to create libglx.so symlink" - - # XvMC driver - dolib.a ${NV_X11}/libXvMCNVIDIA.a || \ - die "failed to install libXvMCNVIDIA.so" - dolib.so ${NV_X11}/libXvMCNVIDIA.so.${NV_SOVER} || \ - die "failed to install libXvMCNVIDIA.so" - dosym libXvMCNVIDIA.so.${NV_SOVER} /usr/$(get_libdir)/libXvMCNVIDIA.so || \ - die "failed to create libXvMCNVIDIA.so symlink" - - # OpenCL ICD for NVIDIA - if use kernel_linux; then - dodir /etc/OpenCL/vendors - insinto /etc/OpenCL/vendors - doins nvidia.icd - fi - - # Documentation - dohtml ${NV_DOC}/html/* - if use x86-fbsd; then - dodoc "${NV_DOC}/README" - doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" - doman "${NV_MAN}/nvidia-smi.1.gz" - doman "${NV_MAN}/nvidia-xconfig.1.gz" - fi - - # Helper Apps - dobin ${NV_EXEC}/nvidia-xconfig || die - dobin ${NV_EXEC}/nvidia-bug-report.sh || die - if use kernel_linux; then - dobin ${NV_EXEC}/nvidia-smi || die - fi - - 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 - - is_final_abi || die "failed to iterate through all ABIs" -} - -# Install nvidia library: -# the first parameter is the place where to install it -# the second parameter is the base name of the library -# the third parameter is the provided soversion -donvidia() { - dodir $1 - exeinto $1 - - libname=$(basename $2) - - doexe $2.$3 || die "failed to install $2" - dosym ${libname}.$3 $1/${libname} || die "failed to symlink $2" - [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1 -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local NV_ROOT="/usr/${inslibdir}/opengl/nvidia" - local libdir= sover= - - if use kernel_linux; then - if has_multilib_profile && [[ ${ABI} == "x86" ]] ; then - libdir=32 - else - libdir=. - fi - sover=${PV} - else - libdir=obj - # on FreeBSD it has just .1 suffix - sover=1 - fi - - # The GLX libraries - donvidia ${NV_ROOT}/lib ${libdir}/libGL.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-glcore.so ${sover} - if use x86-fbsd; then - donvidia ${NV_ROOT}/lib ${libdir}/libnvidia-tls.so ${sover} - else - donvidia ${NV_ROOT}/lib ${libdir}/tls/libnvidia-tls.so ${sover} - fi - - # VDPAU - donvidia /usr/${inslibdir} ${libdir}/libvdpau_nvidia.so ${sover} - - # CUDA & OpenCL - if use kernel_linux; then - donvidia /usr/${inslibdir} ${libdir}/libcuda.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-compiler.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libOpenCL.so 1.0.0 - dosym libOpenCL.so.1 /usr/${inslibdir}/libOpenCL.so - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - eselect opengl set --use-old nvidia - - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /usr/bin/nvidia-bug-report.sh included." - elog - elog "To work with compiz, you must enable the AddARGBGLXVisuals option." - elog - elog "If you are having resolution problems, try disabling DynamicTwinView." - elog -} - -pkg_postrm() { - eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-285.05.09.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-285.05.09.ebuild deleted file mode 100644 index 6e988b89..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-285.05.09.ebuild +++ /dev/null @@ -1,414 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="2" - -inherit eutils unpacker multilib portability versionator flag-o-matic - -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI="x86? ( http://download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run ) - amd64? ( http://download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run ) - x86-fbsd? ( http://download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )" - -LICENSE="NVIDIA" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd" -IUSE="multilib kernel_linux" -RESTRICT="strip" -EMULTILIB_PKG="true" - -COMMON="<x11-base/xorg-server-1.10.99 - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - multilib? ( app-emulation/emul-linux-x86-xlibs ) - >=app-admin/eselect-opengl-1.0.9 - !<media-video/nvidia-settings-256.52" -DEPEND="${COMMON}" -RDEPEND="${COMMON} - x11-libs/libXvMC - !<x11-drivers/nvidia-userspace-${PV} - !>x11-drivers/nvidia-userspace-${PV}" -PDEPEND=">=x11-libs/libvdpau-0.3-r1" - -QA_TEXTRELS_x86=" - usr/lib/libOpenCL.so.1.0.0 - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/libnvcuvid.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_x86_fbsd="boot/modules/nvidia.ko - usr/lib/opengl/nvidia/lib/libGL.so.1 - usr/lib/libnvidia-glcore.so.1 - usr/lib/libnvidia-cfg.so.1 - usr/lib/libnvidia-ml.so.1 - usr/lib/opengl/nvidia/extensions/libglx.so.1 - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_amd64="usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_EXECSTACK_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib/libXvMCNVIDIA.a:NVXVMC.o - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/libOpenCL.so.1.0.0" - -QA_EXECSTACK_amd64="usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.a:NVXVMC.o - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/libOpenCL.so.1.0.0 - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig - usr/bin/nvidia-settings" - -QA_WX_LOAD_x86="usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/libXvMCNVIDIA.a - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_WX_LOAD_amd64="usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_SONAME_x86="usr/lib/libnvidia-compiler.so.${PV}" - -QA_SONAME_amd64="usr/lib64/libnvidia-compiler.so.${PV} - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_DT_HASH_amd64="usr/lib32/libcuda.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/libnvcuvid.so.${PV} - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig - usr/bin/nvidia-settings" - -QA_DT_HASH_x86="usr/lib/libcuda.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/libOpenCL.so.1.0.0 - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvcuvid.so.${PV} - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig - usr/bin/nvidia-settings" - - -S="${WORKDIR}/" - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use amd64 && has_multilib_profile && [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default abi." - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # On BSD userland it wants real make command - use userland_BSD && MAKE="$(get_bmake)" - - export _POSIX2_VERSION="199209" - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - NV_DOC="${S}/doc" - NV_EXEC="${S}/obj" - NV_LIB="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}" - NV_EXEC="${S}" - NV_LIB="${S}" - NV_SRC="${S}/kernel" - NV_MAN="${S}" - NV_X11="${S}" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use x86-fbsd; then - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - use x86-fbsd && cd doc -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use x86-fbsd; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi -} - -src_install() { - if use kernel_linux; then - VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)" - if [ -z "$VIDEOGROUP" ]; then - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi - - # Add the aliases - [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR" - sed -e 's:PACKAGE:'${PF}':g' \ - -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \ - "${WORKDIR}"/nvidia - insinto /etc/modprobe.d - newins "${WORKDIR}"/nvidia nvidia.conf || die - fi - - # NVIDIA kernel <-> userspace driver config lib - dolib.so ${NV_LIB}/libnvidia-cfg.so.${NV_SOVER} || \ - die "failed to install libnvidia-cfg" - dosym /usr/$(get_libdir)/libnvidia-cfg.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-cfg.so || \ - die "failed to create libnvidia-cfg.so symlink" - - # NVIDIA monitoring library - dolib.so ${NV_LIB}/libnvidia-ml.so.${NV_SOVER} || \ - die "failed to install libnvidia-ml" - dosym /usr/$(get_libdir)/libnvidia-ml.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-ml.so || \ - die "failed to create libnvidia-ml.so symlink" - - # NVIDIA video decode <-> CUDA - dolib.so ${NV_LIB}/libnvcuvid.so.${NV_SOVER} || \ - die "failed to install libnvcuvid.so" - dosym /usr/$(get_libdir)/libnvcuvid.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvcuvid.so || \ - die "failed to create libnvcuvid.so symlink" - - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11_DRV}/nvidia_drv.so || die "failed to install nvidia_drv.so" - - # Xorg GLX driver - insinto /usr/$(get_libdir)/opengl/nvidia/extensions - doins ${NV_X11_EXT}/libglx.so.${NV_SOVER} || \ - die "failed to install libglx.so" - dosym /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so.${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so || \ - die "failed to create libglx.so symlink" - - # XvMC driver - dolib.a ${NV_X11}/libXvMCNVIDIA.a || \ - die "failed to install libXvMCNVIDIA.so" - dolib.so ${NV_X11}/libXvMCNVIDIA.so.${NV_SOVER} || \ - die "failed to install libXvMCNVIDIA.so" - dosym libXvMCNVIDIA.so.${NV_SOVER} /usr/$(get_libdir)/libXvMCNVIDIA.so || \ - die "failed to create libXvMCNVIDIA.so symlink" - - # OpenCL ICD for NVIDIA - if use kernel_linux; then - dodir /etc/OpenCL/vendors - insinto /etc/OpenCL/vendors - doins nvidia.icd - fi - - # Documentation - dohtml ${NV_DOC}/html/* - if use x86-fbsd; then - dodoc "${NV_DOC}/README" - doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" - doman "${NV_MAN}/nvidia-smi.1.gz" - doman "${NV_MAN}/nvidia-xconfig.1.gz" - fi - - # Helper Apps - dobin ${NV_EXEC}/nvidia-xconfig || die - dobin ${NV_EXEC}/nvidia-bug-report.sh || die - if use kernel_linux; then - dobin ${NV_EXEC}/nvidia-smi || die - fi - - 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 - - is_final_abi || die "failed to iterate through all ABIs" -} - -# Install nvidia library: -# the first parameter is the place where to install it -# the second parameter is the base name of the library -# the third parameter is the provided soversion -donvidia() { - dodir $1 - exeinto $1 - - libname=$(basename $2) - - doexe $2.$3 || die "failed to install $2" - dosym ${libname}.$3 $1/${libname} || die "failed to symlink $2" - [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1 -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local NV_ROOT="/usr/${inslibdir}/opengl/nvidia" - local libdir= sover= - - if use kernel_linux; then - if has_multilib_profile && [[ ${ABI} == "x86" ]] ; then - libdir=32 - else - libdir=. - fi - sover=${PV} - else - libdir=obj - # on FreeBSD it has just .1 suffix - sover=1 - fi - - # The GLX libraries - donvidia ${NV_ROOT}/lib ${libdir}/libGL.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-glcore.so ${sover} - if use x86-fbsd; then - donvidia ${NV_ROOT}/lib ${libdir}/libnvidia-tls.so ${sover} - else - donvidia ${NV_ROOT}/lib ${libdir}/tls/libnvidia-tls.so ${sover} - fi - - # VDPAU - donvidia /usr/${inslibdir} ${libdir}/libvdpau_nvidia.so ${sover} - - # CUDA & OpenCL - if use kernel_linux; then - donvidia /usr/${inslibdir} ${libdir}/libcuda.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-compiler.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libOpenCL.so 1.0.0 - dosym libOpenCL.so.1 /usr/${inslibdir}/libOpenCL.so - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - eselect opengl set --use-old nvidia - - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /usr/bin/nvidia-bug-report.sh included." - elog - elog "To work with compiz, you must enable the AddARGBGLXVisuals option." - elog - elog "If you are having resolution problems, try disabling DynamicTwinView." - elog -} - -pkg_postrm() { - eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-290.10.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-290.10.ebuild deleted file mode 100644 index b893f2d7..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-290.10.ebuild +++ /dev/null @@ -1,436 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="2" - -inherit eutils unpacker multilib portability versionator flag-o-matic - -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI="x86? ( http://download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run ) - amd64? ( http://download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run ) - x86-fbsd? ( http://download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )" - -LICENSE="NVIDIA" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd" -IUSE="multilib kernel_linux" -RESTRICT="strip" -EMULTILIB_PKG="true" - -COMMON="<x11-base/xorg-server-1.11.99 - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - multilib? ( app-emulation/emul-linux-x86-xlibs ) - >=app-admin/eselect-opengl-1.0.9 - app-admin/eselect-opencl - !<media-video/nvidia-settings-256.52" -DEPEND="${COMMON}" -RDEPEND="${COMMON} - x11-libs/libXvMC - !<x11-drivers/nvidia-userspace-${PV} - !>x11-drivers/nvidia-userspace-${PV}" -PDEPEND=">=x11-libs/libvdpau-0.3-r1" - -QA_TEXTRELS_x86=" - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/libnvcuvid.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_x86_fbsd="boot/modules/nvidia.ko - usr/lib/opengl/nvidia/lib/libGL.so.1 - usr/lib/libnvidia-glcore.so.1 - usr/lib/libnvidia-cfg.so.1 - usr/lib/libnvidia-ml.so.1 - usr/lib/opengl/nvidia/extensions/libglx.so.1 - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_amd64="usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_EXECSTACK_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib/libXvMCNVIDIA.a:NVXVMC.o - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0" - -QA_EXECSTACK_amd64="usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.a:NVXVMC.o - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig - usr/bin/nvidia-settings" - -QA_WX_LOAD_x86="usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/libXvMCNVIDIA.a - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_WX_LOAD_amd64="usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_SONAME_x86="usr/lib/libnvidia-compiler.so.${PV}" - -QA_SONAME_amd64="usr/lib64/libnvidia-compiler.so.${PV} - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_DT_HASH_amd64="usr/lib32/libcuda.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/libnvcuvid.so.${PV} - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig - usr/bin/nvidia-settings" - -QA_DT_HASH_x86="usr/lib/libcuda.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvcuvid.so.${PV} - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig - usr/bin/nvidia-settings" - - -S="${WORKDIR}/" - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use amd64 && has_multilib_profile && [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default abi." - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # On BSD userland it wants real make command - use userland_BSD && MAKE="$(get_bmake)" - - export _POSIX2_VERSION="199209" - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - NV_DOC="${S}/doc" - NV_EXEC="${S}/obj" - NV_LIB="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}" - NV_EXEC="${S}" - NV_LIB="${S}" - NV_SRC="${S}/kernel" - NV_MAN="${S}" - NV_X11="${S}" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use x86-fbsd; then - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - use x86-fbsd && cd doc -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use x86-fbsd; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi - cat <<- EOF > "${S}"/nvidia.icd - /usr/$(get_libdir)/libcuda.so - EOF -} - -src_install() { - if use kernel_linux; then - VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)" - if [ -z "$VIDEOGROUP" ]; then - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi - - # Add the aliases - [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR" - sed -e 's:PACKAGE:'${PF}':g' \ - -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \ - "${WORKDIR}"/nvidia - insinto /etc/modprobe.d - newins "${WORKDIR}"/nvidia nvidia.conf || die - fi - - # NVIDIA kernel <-> userspace driver config lib - dolib.so ${NV_LIB}/libnvidia-cfg.so.${NV_SOVER} || \ - die "failed to install libnvidia-cfg" - dosym libnvidia-cfg.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-cfg.so.1 || \ - die "failed to create libnvidia-cfg.so symlink" - dosym libnvidia-cfg.so.1 \ - /usr/$(get_libdir)/libnvidia-cfg.so || \ - die "failed to create libnvidia-cfg.so symlink" - - # NVIDIA monitoring library - dolib.so ${NV_LIB}/libnvidia-ml.so.${NV_SOVER} || \ - die "failed to install libnvidia-ml" - dosym libnvidia-ml.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-ml.so.1 || \ - die "failed to create libnvidia-ml.so symlink" - dosym libnvidia-ml.so.1 \ - /usr/$(get_libdir)/libnvidia-ml.so || \ - die "failed to create libnvidia-ml.so symlink" - - # NVIDIA video decode <-> CUDA - dolib.so ${NV_LIB}/libnvcuvid.so.${NV_SOVER} || \ - die "failed to install libnvcuvid.so" - dosym libnvcuvid.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvcuvid.so.1 || \ - die "failed to create libnvcuvid.so symlink" - dosym libnvcuvid.so.1 \ - /usr/$(get_libdir)/libnvcuvid.so || \ - die "failed to create libnvcuvid.so symlink" - - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11_DRV}/nvidia_drv.so || die "failed to install nvidia_drv.so" - - # Xorg GLX driver - insinto /usr/$(get_libdir)/opengl/nvidia/extensions - doins ${NV_X11_EXT}/libglx.so.${NV_SOVER} || \ - die "failed to install libglx.so" - dosym libglx.so.${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so || \ - die "failed to create libglx.so symlink" - - # XvMC driver - dolib.a ${NV_X11}/libXvMCNVIDIA.a || \ - die "failed to install libXvMCNVIDIA.so" - dolib.so ${NV_X11}/libXvMCNVIDIA.so.${NV_SOVER} || \ - die "failed to install libXvMCNVIDIA.so" - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA.so.1 || \ - die "failed to create libXvMCNVIDIA.so symlink" - dosym libXvMCNVIDIA.so.1 /usr/$(get_libdir)/libXvMCNVIDIA.so || \ - die "failed to create libXvMCNVIDIA.so symlink" - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA_dynamic.so.1 || \ - die "failed to create libXvMCNVIDIA_dynamic.so symlink" - - # OpenCL ICD for NVIDIA - if use kernel_linux; then - insinto /etc/OpenCL/vendors - doins nvidia.icd - fi - - # Documentation - dohtml ${NV_DOC}/html/* - if use x86-fbsd; then - dodoc "${NV_DOC}/README" - doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" - doman "${NV_MAN}/nvidia-smi.1.gz" - doman "${NV_MAN}/nvidia-xconfig.1.gz" - fi - - # Helper Apps - dobin ${NV_EXEC}/nvidia-xconfig || die - dobin ${NV_EXEC}/nvidia-bug-report.sh || die - if use kernel_linux; then - dobin ${NV_EXEC}/nvidia-smi || die - fi - - 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 - - is_final_abi || die "failed to iterate through all ABIs" -} - -# Install nvidia library: -# the first parameter is the place where to install it -# the second parameter is the base name of the library -# the third parameter is the provided soversion -donvidia() { - dodir $1 - exeinto $1 - - libname=$(basename $2) - - doexe $2.$3 || die "failed to install $2" - dosym ${libname}.$3 $1/${libname} || die "failed to symlink $2" - [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1 -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local NV_ROOT="/usr/${inslibdir}/opengl/nvidia" - local CL_ROOT=/usr/${inslibdir}/OpenCL/vendors/nvidia - local libdir= sover= - - if use kernel_linux; then - if has_multilib_profile && [[ ${ABI} == "x86" ]] ; then - libdir=32 - else - libdir=. - fi - sover=${PV} - else - libdir=obj - # on FreeBSD it has just .1 suffix - sover=1 - fi - - # The GLX libraries - donvidia ${NV_ROOT}/lib ${libdir}/libGL.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-glcore.so ${sover} - if use x86-fbsd; then - donvidia ${NV_ROOT}/lib ${libdir}/libnvidia-tls.so ${sover} - else - donvidia ${NV_ROOT}/lib ${libdir}/tls/libnvidia-tls.so ${sover} - fi - - # VDPAU - donvidia /usr/${inslibdir} ${libdir}/libvdpau_nvidia.so ${sover} - - # CUDA & OpenCL - if use kernel_linux; then - donvidia /usr/${inslibdir} ${libdir}/libcuda.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-compiler.so ${sover} - donvidia ${CL_ROOT} ${libdir}/libOpenCL.so 1.0.0 - #dosym libOpenCL.so.1 ${CL_ROOT}/libOpenCL.so - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - eselect opengl set --use-old nvidia - eselect opencl set --use-old nvidia - - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "To use the NVIDIA CUDA/OpenCL, run \"eselect opencl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /usr/bin/nvidia-bug-report.sh included." - elog - elog "To work with compiz, you must enable the AddARGBGLXVisuals option." - elog - elog "If you are having resolution problems, try disabling DynamicTwinView." - elog -} - -pkg_postrm() { - eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-295.20.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-295.20.ebuild deleted file mode 100644 index b893f2d7..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-295.20.ebuild +++ /dev/null @@ -1,436 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="2" - -inherit eutils unpacker multilib portability versionator flag-o-matic - -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI="x86? ( http://download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run ) - amd64? ( http://download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run ) - x86-fbsd? ( http://download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )" - -LICENSE="NVIDIA" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd" -IUSE="multilib kernel_linux" -RESTRICT="strip" -EMULTILIB_PKG="true" - -COMMON="<x11-base/xorg-server-1.11.99 - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - multilib? ( app-emulation/emul-linux-x86-xlibs ) - >=app-admin/eselect-opengl-1.0.9 - app-admin/eselect-opencl - !<media-video/nvidia-settings-256.52" -DEPEND="${COMMON}" -RDEPEND="${COMMON} - x11-libs/libXvMC - !<x11-drivers/nvidia-userspace-${PV} - !>x11-drivers/nvidia-userspace-${PV}" -PDEPEND=">=x11-libs/libvdpau-0.3-r1" - -QA_TEXTRELS_x86=" - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/libnvcuvid.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_x86_fbsd="boot/modules/nvidia.ko - usr/lib/opengl/nvidia/lib/libGL.so.1 - usr/lib/libnvidia-glcore.so.1 - usr/lib/libnvidia-cfg.so.1 - usr/lib/libnvidia-ml.so.1 - usr/lib/opengl/nvidia/extensions/libglx.so.1 - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_amd64="usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_EXECSTACK_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib/libXvMCNVIDIA.a:NVXVMC.o - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0" - -QA_EXECSTACK_amd64="usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.a:NVXVMC.o - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig - usr/bin/nvidia-settings" - -QA_WX_LOAD_x86="usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/libXvMCNVIDIA.a - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_WX_LOAD_amd64="usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_SONAME_x86="usr/lib/libnvidia-compiler.so.${PV}" - -QA_SONAME_amd64="usr/lib64/libnvidia-compiler.so.${PV} - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_DT_HASH_amd64="usr/lib32/libcuda.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/libnvcuvid.so.${PV} - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig - usr/bin/nvidia-settings" - -QA_DT_HASH_x86="usr/lib/libcuda.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvcuvid.so.${PV} - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig - usr/bin/nvidia-settings" - - -S="${WORKDIR}/" - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use amd64 && has_multilib_profile && [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default abi." - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # On BSD userland it wants real make command - use userland_BSD && MAKE="$(get_bmake)" - - export _POSIX2_VERSION="199209" - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - NV_DOC="${S}/doc" - NV_EXEC="${S}/obj" - NV_LIB="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}" - NV_EXEC="${S}" - NV_LIB="${S}" - NV_SRC="${S}/kernel" - NV_MAN="${S}" - NV_X11="${S}" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use x86-fbsd; then - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - use x86-fbsd && cd doc -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use x86-fbsd; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi - cat <<- EOF > "${S}"/nvidia.icd - /usr/$(get_libdir)/libcuda.so - EOF -} - -src_install() { - if use kernel_linux; then - VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)" - if [ -z "$VIDEOGROUP" ]; then - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi - - # Add the aliases - [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR" - sed -e 's:PACKAGE:'${PF}':g' \ - -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \ - "${WORKDIR}"/nvidia - insinto /etc/modprobe.d - newins "${WORKDIR}"/nvidia nvidia.conf || die - fi - - # NVIDIA kernel <-> userspace driver config lib - dolib.so ${NV_LIB}/libnvidia-cfg.so.${NV_SOVER} || \ - die "failed to install libnvidia-cfg" - dosym libnvidia-cfg.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-cfg.so.1 || \ - die "failed to create libnvidia-cfg.so symlink" - dosym libnvidia-cfg.so.1 \ - /usr/$(get_libdir)/libnvidia-cfg.so || \ - die "failed to create libnvidia-cfg.so symlink" - - # NVIDIA monitoring library - dolib.so ${NV_LIB}/libnvidia-ml.so.${NV_SOVER} || \ - die "failed to install libnvidia-ml" - dosym libnvidia-ml.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-ml.so.1 || \ - die "failed to create libnvidia-ml.so symlink" - dosym libnvidia-ml.so.1 \ - /usr/$(get_libdir)/libnvidia-ml.so || \ - die "failed to create libnvidia-ml.so symlink" - - # NVIDIA video decode <-> CUDA - dolib.so ${NV_LIB}/libnvcuvid.so.${NV_SOVER} || \ - die "failed to install libnvcuvid.so" - dosym libnvcuvid.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvcuvid.so.1 || \ - die "failed to create libnvcuvid.so symlink" - dosym libnvcuvid.so.1 \ - /usr/$(get_libdir)/libnvcuvid.so || \ - die "failed to create libnvcuvid.so symlink" - - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11_DRV}/nvidia_drv.so || die "failed to install nvidia_drv.so" - - # Xorg GLX driver - insinto /usr/$(get_libdir)/opengl/nvidia/extensions - doins ${NV_X11_EXT}/libglx.so.${NV_SOVER} || \ - die "failed to install libglx.so" - dosym libglx.so.${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so || \ - die "failed to create libglx.so symlink" - - # XvMC driver - dolib.a ${NV_X11}/libXvMCNVIDIA.a || \ - die "failed to install libXvMCNVIDIA.so" - dolib.so ${NV_X11}/libXvMCNVIDIA.so.${NV_SOVER} || \ - die "failed to install libXvMCNVIDIA.so" - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA.so.1 || \ - die "failed to create libXvMCNVIDIA.so symlink" - dosym libXvMCNVIDIA.so.1 /usr/$(get_libdir)/libXvMCNVIDIA.so || \ - die "failed to create libXvMCNVIDIA.so symlink" - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA_dynamic.so.1 || \ - die "failed to create libXvMCNVIDIA_dynamic.so symlink" - - # OpenCL ICD for NVIDIA - if use kernel_linux; then - insinto /etc/OpenCL/vendors - doins nvidia.icd - fi - - # Documentation - dohtml ${NV_DOC}/html/* - if use x86-fbsd; then - dodoc "${NV_DOC}/README" - doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" - doman "${NV_MAN}/nvidia-smi.1.gz" - doman "${NV_MAN}/nvidia-xconfig.1.gz" - fi - - # Helper Apps - dobin ${NV_EXEC}/nvidia-xconfig || die - dobin ${NV_EXEC}/nvidia-bug-report.sh || die - if use kernel_linux; then - dobin ${NV_EXEC}/nvidia-smi || die - fi - - 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 - - is_final_abi || die "failed to iterate through all ABIs" -} - -# Install nvidia library: -# the first parameter is the place where to install it -# the second parameter is the base name of the library -# the third parameter is the provided soversion -donvidia() { - dodir $1 - exeinto $1 - - libname=$(basename $2) - - doexe $2.$3 || die "failed to install $2" - dosym ${libname}.$3 $1/${libname} || die "failed to symlink $2" - [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1 -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local NV_ROOT="/usr/${inslibdir}/opengl/nvidia" - local CL_ROOT=/usr/${inslibdir}/OpenCL/vendors/nvidia - local libdir= sover= - - if use kernel_linux; then - if has_multilib_profile && [[ ${ABI} == "x86" ]] ; then - libdir=32 - else - libdir=. - fi - sover=${PV} - else - libdir=obj - # on FreeBSD it has just .1 suffix - sover=1 - fi - - # The GLX libraries - donvidia ${NV_ROOT}/lib ${libdir}/libGL.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-glcore.so ${sover} - if use x86-fbsd; then - donvidia ${NV_ROOT}/lib ${libdir}/libnvidia-tls.so ${sover} - else - donvidia ${NV_ROOT}/lib ${libdir}/tls/libnvidia-tls.so ${sover} - fi - - # VDPAU - donvidia /usr/${inslibdir} ${libdir}/libvdpau_nvidia.so ${sover} - - # CUDA & OpenCL - if use kernel_linux; then - donvidia /usr/${inslibdir} ${libdir}/libcuda.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-compiler.so ${sover} - donvidia ${CL_ROOT} ${libdir}/libOpenCL.so 1.0.0 - #dosym libOpenCL.so.1 ${CL_ROOT}/libOpenCL.so - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - eselect opengl set --use-old nvidia - eselect opencl set --use-old nvidia - - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "To use the NVIDIA CUDA/OpenCL, run \"eselect opencl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /usr/bin/nvidia-bug-report.sh included." - elog - elog "To work with compiz, you must enable the AddARGBGLXVisuals option." - elog - elog "If you are having resolution problems, try disabling DynamicTwinView." - elog -} - -pkg_postrm() { - eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-295.33.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-295.33.ebuild deleted file mode 100644 index b8e99462..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-295.33.ebuild +++ /dev/null @@ -1,452 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="2" - -inherit eutils unpacker multilib portability versionator flag-o-matic - -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI="x86? ( http://us.download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run ) - amd64? ( http://us.download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run ) - x86-fbsd? ( http://us.download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )" - -LICENSE="NVIDIA" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd" -IUSE="acpi multilib kernel_linux" -RESTRICT="strip" -EMULTILIB_PKG="true" - -COMMON="<x11-base/xorg-server-1.12.99 - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - multilib? ( app-emulation/emul-linux-x86-xlibs ) - >=app-admin/eselect-opengl-1.0.9 - app-admin/eselect-opencl - !<media-video/nvidia-settings-256.52" -DEPEND="${COMMON}" -RDEPEND="${COMMON} - x11-libs/libXvMC - !<x11-drivers/nvidia-userspace-${PV} - !>x11-drivers/nvidia-userspace-${PV} - acpi? ( sys-power/acpid )" -PDEPEND=">=x11-libs/libvdpau-0.3-r1" - -QA_TEXTRELS_x86=" - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/libnvcuvid.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_x86_fbsd="boot/modules/nvidia.ko - usr/lib/opengl/nvidia/lib/libGL.so.1 - usr/lib/libnvidia-glcore.so.1 - usr/lib/libnvidia-cfg.so.1 - usr/lib/libnvidia-ml.so.1 - usr/lib/opengl/nvidia/extensions/libglx.so.1 - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_amd64="usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_EXECSTACK_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib/libXvMCNVIDIA.a:NVXVMC.o - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0" - -QA_EXECSTACK_amd64="usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.a:NVXVMC.o - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - opt/bin/nvidia-smi - opt/bin/nvidia-xconfig - opt/bin/nvidia-debugdump - opt/bin/nvidia-settings" - -QA_WX_LOAD_x86="usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/libXvMCNVIDIA.a - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_WX_LOAD_amd64="usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_SONAME_x86="usr/lib/libnvidia-compiler.so.${PV}" - -QA_SONAME_amd64="usr/lib64/libnvidia-compiler.so.${PV} - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_DT_HASH_amd64="usr/lib32/libcuda.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/libnvcuvid.so.${PV} - opt/bin/nvidia-smi - opt/bin/nvidia-xconfig - opt/bin/nvidia-debugdump - opt/bin/nvidia-settings" - -QA_DT_HASH_x86="usr/lib/libcuda.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvcuvid.so.${PV} - opt/bin/nvidia-smi - opt/bin/nvidia-xconfig - opt/bin/nvidia-debugdump - opt/bin/nvidia-settings" - - -S="${WORKDIR}/" - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use amd64 && has_multilib_profile && [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default abi." - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # On BSD userland it wants real make command - use userland_BSD && MAKE="$(get_bmake)" - - export _POSIX2_VERSION="199209" - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - NV_DOC="${S}/doc" - NV_EXEC="${S}/obj" - NV_LIB="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}" - NV_EXEC="${S}" - NV_LIB="${S}" - NV_SRC="${S}/kernel" - NV_MAN="${S}" - NV_X11="${S}" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use x86-fbsd; then - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - use x86-fbsd && cd doc - cat <<- EOF > "${S}"/nvidia.icd - /usr/$(get_libdir)/libcuda.so - EOF -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use x86-fbsd; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi -} - -src_install() { - if use kernel_linux; then - VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)" - if [ -z "$VIDEOGROUP" ]; then - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi - - # Add the aliases - [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR" - sed -e 's:PACKAGE:'${PF}':g' \ - -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \ - "${WORKDIR}"/nvidia - insinto /etc/modprobe.d - newins "${WORKDIR}"/nvidia nvidia.conf || die - - # Ensures that our device nodes are created when not using X - exeinto /lib/udev - doexe "${FILESDIR}"/nvidia-udev.sh - - insinto /lib/udev/rules.d - newins "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules - fi - - # NVIDIA kernel <-> userspace driver config lib - dolib.so ${NV_LIB}/libnvidia-cfg.so.${NV_SOVER} || \ - die "failed to install libnvidia-cfg" - dosym libnvidia-cfg.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-cfg.so.1 || \ - die "failed to create libnvidia-cfg.so symlink" - dosym libnvidia-cfg.so.1 \ - /usr/$(get_libdir)/libnvidia-cfg.so || \ - die "failed to create libnvidia-cfg.so symlink" - - # NVIDIA monitoring library - dolib.so ${NV_LIB}/libnvidia-ml.so.${NV_SOVER} || \ - die "failed to install libnvidia-ml" - dosym libnvidia-ml.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-ml.so.1 || \ - die "failed to create libnvidia-ml.so symlink" - dosym libnvidia-ml.so.1 \ - /usr/$(get_libdir)/libnvidia-ml.so || \ - die "failed to create libnvidia-ml.so symlink" - - # NVIDIA video decode <-> CUDA - dolib.so ${NV_LIB}/libnvcuvid.so.${NV_SOVER} || \ - die "failed to install libnvcuvid.so" - dosym libnvcuvid.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvcuvid.so.1 || \ - die "failed to create libnvcuvid.so symlink" - dosym libnvcuvid.so.1 \ - /usr/$(get_libdir)/libnvcuvid.so || \ - die "failed to create libnvcuvid.so symlink" - - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11_DRV}/nvidia_drv.so || die "failed to install nvidia_drv.so" - - # Xorg GLX driver - insinto /usr/$(get_libdir)/opengl/nvidia/extensions - doins ${NV_X11_EXT}/libglx.so.${NV_SOVER} || \ - die "failed to install libglx.so" - dosym libglx.so.${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so || \ - die "failed to create libglx.so symlink" - - # XvMC driver - dolib.a ${NV_X11}/libXvMCNVIDIA.a || \ - die "failed to install libXvMCNVIDIA.so" - dolib.so ${NV_X11}/libXvMCNVIDIA.so.${NV_SOVER} || \ - die "failed to install libXvMCNVIDIA.so" - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA.so.1 || \ - die "failed to create libXvMCNVIDIA.so symlink" - dosym libXvMCNVIDIA.so.1 /usr/$(get_libdir)/libXvMCNVIDIA.so || \ - die "failed to create libXvMCNVIDIA.so symlink" - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA_dynamic.so.1 || \ - die "failed to create libXvMCNVIDIA_dynamic.so symlink" - - # OpenCL ICD for NVIDIA - if use kernel_linux; then - insinto /etc/OpenCL/vendors - doins nvidia.icd - fi - - # Documentation - dohtml ${NV_DOC}/html/* - if use x86-fbsd; then - dodoc "${NV_DOC}/README" - doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" - doman "${NV_MAN}/nvidia-smi.1.gz" - doman "${NV_MAN}/nvidia-xconfig.1.gz" - fi - - # Helper Apps - exeinto /opt/bin/ - doexe ${NV_EXEC}/nvidia-xconfig || die - doexe ${NV_EXEC}/nvidia-debugdump || die - if use gtk; then - doexe ${NV_EXEC}/nvidia-settings || die - fi - doexe ${NV_EXEC}/nvidia-bug-report.sh || die - if use kernel_linux; then - doexe ${NV_EXEC}/nvidia-smi || die - fi - - 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 - - is_final_abi || die "failed to iterate through all ABIs" -} - -# Install nvidia library: -# the first parameter is the place where to install it -# the second parameter is the base name of the library -# the third parameter is the provided soversion -donvidia() { - dodir $1 - exeinto $1 - - libname=$(basename $2) - - doexe $2.$3 || die "failed to install $2" - dosym ${libname}.$3 $1/${libname} || die "failed to symlink $2" - [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1 -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local NV_ROOT="/usr/${inslibdir}/opengl/nvidia" - local CL_ROOT=/usr/${inslibdir}/OpenCL/vendors/nvidia - local libdir= sover= - - if use kernel_linux; then - if has_multilib_profile && [[ ${ABI} == "x86" ]] ; then - libdir=32 - else - libdir=. - fi - sover=${PV} - else - libdir=obj - # on FreeBSD it has just .1 suffix - sover=1 - fi - - # The GLX libraries - donvidia ${NV_ROOT}/lib ${libdir}/libGL.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-glcore.so ${sover} - if use x86-fbsd; then - donvidia ${NV_ROOT}/lib ${libdir}/libnvidia-tls.so ${sover} - else - donvidia ${NV_ROOT}/lib ${libdir}/tls/libnvidia-tls.so ${sover} - fi - - # VDPAU - donvidia /usr/${inslibdir} ${libdir}/libvdpau_nvidia.so ${sover} - - # CUDA & OpenCL - if use kernel_linux; then - donvidia /usr/${inslibdir} ${libdir}/libcuda.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-compiler.so ${sover} - donvidia ${CL_ROOT} ${libdir}/libOpenCL.so 1.0.0 - #dosym libOpenCL.so.1 ${CL_ROOT}/libOpenCL.so - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia - - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "To use the NVIDIA CUDA/OpenCL, run \"eselect opencl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /opt/bin/nvidia-bug-report.sh included." - elog - elog "To work with compiz, you must enable the AddARGBGLXVisuals option." - elog - elog "If you are having resolution problems, try disabling DynamicTwinView." - elog -} - -pkg_postrm() { - "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-295.40.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-295.40.ebuild deleted file mode 100644 index 72cf90fd..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-295.40.ebuild +++ /dev/null @@ -1,456 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="2" - -inherit eutils unpacker multilib portability versionator flag-o-matic - -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI="x86? ( http://us.download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run ) - amd64? ( http://us.download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run ) - x86-fbsd? ( http://us.download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )" - -LICENSE="NVIDIA" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd" -IUSE="acpi multilib kernel_linux" -RESTRICT="strip" -EMULTILIB_PKG="true" - -COMMON="<x11-base/xorg-server-1.12.99 - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - multilib? ( app-emulation/emul-linux-x86-xlibs ) - >=app-admin/eselect-opengl-1.0.9 - app-admin/eselect-opencl - !<media-video/nvidia-settings-256.52" -DEPEND="${COMMON}" -RDEPEND="${COMMON} - x11-libs/libXvMC - !<x11-drivers/nvidia-userspace-${PV} - !>x11-drivers/nvidia-userspace-${PV} - acpi? ( sys-power/acpid )" -PDEPEND=">=x11-libs/libvdpau-0.3-r1" - -QA_TEXTRELS_x86=" - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/libnvcuvid.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_x86_fbsd="boot/modules/nvidia.ko - usr/lib/opengl/nvidia/lib/libGL.so.1 - usr/lib/libnvidia-glcore.so.1 - usr/lib/libnvidia-cfg.so.1 - usr/lib/libnvidia-ml.so.1 - usr/lib/opengl/nvidia/extensions/libglx.so.1 - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_amd64="usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_EXECSTACK_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib/libXvMCNVIDIA.a:NVXVMC.o - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0" - -QA_EXECSTACK_amd64="usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.a:NVXVMC.o - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - opt/bin/nvidia-smi - opt/bin/nvidia-xconfig - opt/bin/nvidia-debugdump - opt/bin/nvidia-settings" - -QA_WX_LOAD_x86="usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/libXvMCNVIDIA.a - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_WX_LOAD_amd64="usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_SONAME_x86="usr/lib/libnvidia-compiler.so.${PV}" - -QA_SONAME_amd64="usr/lib64/libnvidia-compiler.so.${PV} - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_DT_HASH_amd64="usr/lib32/libcuda.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/libnvcuvid.so.${PV} - opt/bin/nvidia-smi - opt/bin/nvidia-xconfig - opt/bin/nvidia-debugdump - opt/bin/nvidia-settings" - -QA_DT_HASH_x86="usr/lib/libcuda.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvcuvid.so.${PV} - opt/bin/nvidia-smi - opt/bin/nvidia-xconfig - opt/bin/nvidia-debugdump - opt/bin/nvidia-settings" - - -S="${WORKDIR}/" - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use amd64 && has_multilib_profile && [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default abi." - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # On BSD userland it wants real make command - use userland_BSD && MAKE="$(get_bmake)" - - export _POSIX2_VERSION="199209" - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - NV_DOC="${S}/doc" - NV_EXEC="${S}/obj" - NV_LIB="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}" - NV_EXEC="${S}" - NV_LIB="${S}" - NV_SRC="${S}/kernel" - NV_MAN="${S}" - NV_X11="${S}" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use x86-fbsd; then - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - use x86-fbsd && cd doc - cat <<- EOF > "${S}"/nvidia.icd - /usr/$(get_libdir)/libcuda.so - EOF -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use x86-fbsd; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi -} - -src_install() { - if use kernel_linux; then - VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)" - if [ -z "$VIDEOGROUP" ]; then - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi - - # Add the aliases - [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR" - sed -e 's:PACKAGE:'${PF}':g' \ - -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \ - "${WORKDIR}"/nvidia - insinto /etc/modprobe.d - newins "${WORKDIR}"/nvidia nvidia.conf || die - - # Ensures that our device nodes are created when not using X - exeinto /lib/udev - doexe "${FILESDIR}"/nvidia-udev.sh - - insinto /lib/udev/rules.d - newins "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules - fi - - # NVIDIA kernel <-> userspace driver config lib - dolib.so ${NV_LIB}/libnvidia-cfg.so.${NV_SOVER} || \ - die "failed to install libnvidia-cfg" - dosym libnvidia-cfg.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-cfg.so.1 || \ - die "failed to create libnvidia-cfg.so symlink" - dosym libnvidia-cfg.so.1 \ - /usr/$(get_libdir)/libnvidia-cfg.so || \ - die "failed to create libnvidia-cfg.so symlink" - - # NVIDIA monitoring library - dolib.so ${NV_LIB}/libnvidia-ml.so.${NV_SOVER} || \ - die "failed to install libnvidia-ml" - dosym libnvidia-ml.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-ml.so.1 || \ - die "failed to create libnvidia-ml.so symlink" - dosym libnvidia-ml.so.1 \ - /usr/$(get_libdir)/libnvidia-ml.so || \ - die "failed to create libnvidia-ml.so symlink" - - # NVIDIA video decode <-> CUDA - dolib.so ${NV_LIB}/libnvcuvid.so.${NV_SOVER} || \ - die "failed to install libnvcuvid.so" - dosym libnvcuvid.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvcuvid.so.1 || \ - die "failed to create libnvcuvid.so symlink" - dosym libnvcuvid.so.1 \ - /usr/$(get_libdir)/libnvcuvid.so || \ - die "failed to create libnvcuvid.so symlink" - - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11_DRV}/nvidia_drv.so || die "failed to install nvidia_drv.so" - - # Xorg GLX driver - insinto /usr/$(get_libdir)/opengl/nvidia/extensions - doins ${NV_X11_EXT}/libglx.so.${NV_SOVER} || \ - die "failed to install libglx.so" - dosym libglx.so.${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so || \ - die "failed to create libglx.so symlink" - - # XvMC driver - dolib.a ${NV_X11}/libXvMCNVIDIA.a || \ - die "failed to install libXvMCNVIDIA.so" - dolib.so ${NV_X11}/libXvMCNVIDIA.so.${NV_SOVER} || \ - die "failed to install libXvMCNVIDIA.so" - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA.so.1 || \ - die "failed to create libXvMCNVIDIA.so symlink" - dosym libXvMCNVIDIA.so.1 /usr/$(get_libdir)/libXvMCNVIDIA.so || \ - die "failed to create libXvMCNVIDIA.so symlink" - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA_dynamic.so.1 || \ - die "failed to create libXvMCNVIDIA_dynamic.so symlink" - - # OpenCL ICD for NVIDIA - if use kernel_linux; then - insinto /etc/OpenCL/vendors - doins nvidia.icd - fi - - # Documentation - dohtml ${NV_DOC}/html/* - if use x86-fbsd; then - dodoc "${NV_DOC}/README" - doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" - doman "${NV_MAN}/nvidia-smi.1.gz" - doman "${NV_MAN}/nvidia-xconfig.1.gz" - fi - - # Helper Apps - exeinto /opt/bin/ - doexe ${NV_EXEC}/nvidia-xconfig || die - doexe ${NV_EXEC}/nvidia-debugdump || die - if use gtk; then - doexe ${NV_EXEC}/nvidia-settings || die - fi - doexe ${NV_EXEC}/nvidia-bug-report.sh || die - if use kernel_linux; then - doexe ${NV_EXEC}/nvidia-smi || die - fi - - 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 - - is_final_abi || die "failed to iterate through all ABIs" - - # GNOME3 gnome-terminal redraw bug workaround, - # see: https://bugzilla.gnome.org/show_bug.cgi?id=664858 - doenvd "${FILESDIR}/90mutter-disable-culling" -} - -# Install nvidia library: -# the first parameter is the place where to install it -# the second parameter is the base name of the library -# the third parameter is the provided soversion -donvidia() { - dodir $1 - exeinto $1 - - libname=$(basename $2) - - doexe $2.$3 || die "failed to install $2" - dosym ${libname}.$3 $1/${libname} || die "failed to symlink $2" - [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1 -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local NV_ROOT="/usr/${inslibdir}/opengl/nvidia" - local CL_ROOT=/usr/${inslibdir}/OpenCL/vendors/nvidia - local libdir= sover= - - if use kernel_linux; then - if has_multilib_profile && [[ ${ABI} == "x86" ]] ; then - libdir=32 - else - libdir=. - fi - sover=${PV} - else - libdir=obj - # on FreeBSD it has just .1 suffix - sover=1 - fi - - # The GLX libraries - donvidia ${NV_ROOT}/lib ${libdir}/libGL.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-glcore.so ${sover} - if use x86-fbsd; then - donvidia ${NV_ROOT}/lib ${libdir}/libnvidia-tls.so ${sover} - else - donvidia ${NV_ROOT}/lib ${libdir}/tls/libnvidia-tls.so ${sover} - fi - - # VDPAU - donvidia /usr/${inslibdir} ${libdir}/libvdpau_nvidia.so ${sover} - - # CUDA & OpenCL - if use kernel_linux; then - donvidia /usr/${inslibdir} ${libdir}/libcuda.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-compiler.so ${sover} - donvidia ${CL_ROOT} ${libdir}/libOpenCL.so 1.0.0 - #dosym libOpenCL.so.1 ${CL_ROOT}/libOpenCL.so - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia - - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "To use the NVIDIA CUDA/OpenCL, run \"eselect opencl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /opt/bin/nvidia-bug-report.sh included." - elog - elog "To work with compiz, you must enable the AddARGBGLXVisuals option." - elog - elog "If you are having resolution problems, try disabling DynamicTwinView." - elog -} - -pkg_postrm() { - "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-295.49.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-295.49.ebuild deleted file mode 100644 index df7bcaea..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-295.49.ebuild +++ /dev/null @@ -1,453 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="2" - -inherit eutils unpacker multilib portability versionator flag-o-matic - -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI="x86? ( http://us.download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run ) - amd64? ( http://us.download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run ) - x86-fbsd? ( http://us.download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )" - -LICENSE="NVIDIA" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd" -IUSE="acpi multilib kernel_linux" -RESTRICT="strip" -EMULTILIB_PKG="true" - -COMMON="<x11-base/xorg-server-1.12.99 - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - multilib? ( app-emulation/emul-linux-x86-xlibs ) - >=app-admin/eselect-opengl-1.0.9 - app-admin/eselect-opencl - !<media-video/nvidia-settings-256.52" -DEPEND="${COMMON}" -RDEPEND="${COMMON} - x11-libs/libXvMC - !<x11-drivers/nvidia-userspace-${PV} - !>x11-drivers/nvidia-userspace-${PV} - acpi? ( sys-power/acpid )" -PDEPEND=">=x11-libs/libvdpau-0.3-r1" - -QA_TEXTRELS_x86=" - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/libnvcuvid.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_x86_fbsd="boot/modules/nvidia.ko - usr/lib/opengl/nvidia/lib/libGL.so.1 - usr/lib/libnvidia-glcore.so.1 - usr/lib/libnvidia-cfg.so.1 - usr/lib/libnvidia-ml.so.1 - usr/lib/opengl/nvidia/extensions/libglx.so.1 - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_amd64="usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_EXECSTACK_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib/libXvMCNVIDIA.a:NVXVMC.o - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0" - -QA_EXECSTACK_amd64="usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.a:NVXVMC.o - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - opt/bin/nvidia-smi - opt/bin/nvidia-xconfig - opt/bin/nvidia-debugdump - opt/bin/nvidia-settings" - -QA_WX_LOAD_x86="usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/libXvMCNVIDIA.a - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_WX_LOAD_amd64="usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_SONAME_x86="usr/lib/libnvidia-compiler.so.${PV}" - -QA_SONAME_amd64="usr/lib64/libnvidia-compiler.so.${PV} - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_DT_HASH_amd64="usr/lib32/libcuda.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/libnvcuvid.so.${PV} - opt/bin/nvidia-smi - opt/bin/nvidia-xconfig - opt/bin/nvidia-debugdump - opt/bin/nvidia-settings" - -QA_DT_HASH_x86="usr/lib/libcuda.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvcuvid.so.${PV} - opt/bin/nvidia-smi - opt/bin/nvidia-xconfig - opt/bin/nvidia-debugdump - opt/bin/nvidia-settings" - - -S="${WORKDIR}/" - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use amd64 && has_multilib_profile && [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default abi." - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # On BSD userland it wants real make command - use userland_BSD && MAKE="$(get_bmake)" - - export _POSIX2_VERSION="199209" - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - NV_DOC="${S}/doc" - NV_EXEC="${S}/obj" - NV_LIB="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}" - NV_EXEC="${S}" - NV_LIB="${S}" - NV_SRC="${S}/kernel" - NV_MAN="${S}" - NV_X11="${S}" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use x86-fbsd; then - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - use x86-fbsd && cd doc - cat <<- EOF > "${S}"/nvidia.icd - /usr/$(get_libdir)/libcuda.so - EOF -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use x86-fbsd; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi -} - -src_install() { - if use kernel_linux; then - VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)" - if [ -z "$VIDEOGROUP" ]; then - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi - - # Add the aliases - [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR" - sed -e 's:PACKAGE:'${PF}':g' \ - -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \ - "${WORKDIR}"/nvidia - insinto /etc/modprobe.d - newins "${WORKDIR}"/nvidia nvidia.conf || die - - # Ensures that our device nodes are created when not using X - exeinto /lib/udev - doexe "${FILESDIR}"/nvidia-udev.sh - - insinto /lib/udev/rules.d - newins "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules - fi - - # NVIDIA kernel <-> userspace driver config lib - dolib.so ${NV_LIB}/libnvidia-cfg.so.${NV_SOVER} || \ - die "failed to install libnvidia-cfg" - dosym libnvidia-cfg.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-cfg.so.1 || \ - die "failed to create libnvidia-cfg.so symlink" - dosym libnvidia-cfg.so.1 \ - /usr/$(get_libdir)/libnvidia-cfg.so || \ - die "failed to create libnvidia-cfg.so symlink" - - # NVIDIA monitoring library - dolib.so ${NV_LIB}/libnvidia-ml.so.${NV_SOVER} || \ - die "failed to install libnvidia-ml" - dosym libnvidia-ml.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-ml.so.1 || \ - die "failed to create libnvidia-ml.so symlink" - dosym libnvidia-ml.so.1 \ - /usr/$(get_libdir)/libnvidia-ml.so || \ - die "failed to create libnvidia-ml.so symlink" - - # NVIDIA video decode <-> CUDA - dolib.so ${NV_LIB}/libnvcuvid.so.${NV_SOVER} || \ - die "failed to install libnvcuvid.so" - dosym libnvcuvid.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvcuvid.so.1 || \ - die "failed to create libnvcuvid.so symlink" - dosym libnvcuvid.so.1 \ - /usr/$(get_libdir)/libnvcuvid.so || \ - die "failed to create libnvcuvid.so symlink" - - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11_DRV}/nvidia_drv.so || die "failed to install nvidia_drv.so" - - # Xorg GLX driver - insinto /usr/$(get_libdir)/opengl/nvidia/extensions - doins ${NV_X11_EXT}/libglx.so.${NV_SOVER} || \ - die "failed to install libglx.so" - dosym libglx.so.${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so || \ - die "failed to create libglx.so symlink" - - # XvMC driver - dolib.a ${NV_X11}/libXvMCNVIDIA.a || \ - die "failed to install libXvMCNVIDIA.so" - dolib.so ${NV_X11}/libXvMCNVIDIA.so.${NV_SOVER} || \ - die "failed to install libXvMCNVIDIA.so" - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA.so.1 || \ - die "failed to create libXvMCNVIDIA.so symlink" - dosym libXvMCNVIDIA.so.1 /usr/$(get_libdir)/libXvMCNVIDIA.so || \ - die "failed to create libXvMCNVIDIA.so symlink" - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA_dynamic.so.1 || \ - die "failed to create libXvMCNVIDIA_dynamic.so symlink" - - # OpenCL ICD for NVIDIA - if use kernel_linux; then - insinto /etc/OpenCL/vendors - doins nvidia.icd - fi - - # Documentation - dohtml ${NV_DOC}/html/* - if use x86-fbsd; then - dodoc "${NV_DOC}/README" - doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" - doman "${NV_MAN}/nvidia-smi.1.gz" - doman "${NV_MAN}/nvidia-xconfig.1.gz" - fi - - # Helper Apps - exeinto /opt/bin/ - doexe ${NV_EXEC}/nvidia-xconfig || die - doexe ${NV_EXEC}/nvidia-debugdump || die - doexe ${NV_EXEC}/nvidia-bug-report.sh || die - if use kernel_linux; then - doexe ${NV_EXEC}/nvidia-smi || die - fi - - 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 - - is_final_abi || die "failed to iterate through all ABIs" - - # GNOME3 gnome-terminal redraw bug workaround, - # see: https://bugzilla.gnome.org/show_bug.cgi?id=664858 - doenvd "${FILESDIR}/90mutter-disable-culling" -} - -# Install nvidia library: -# the first parameter is the place where to install it -# the second parameter is the base name of the library -# the third parameter is the provided soversion -donvidia() { - dodir $1 - exeinto $1 - - libname=$(basename $2) - - doexe $2.$3 || die "failed to install $2" - dosym ${libname}.$3 $1/${libname} || die "failed to symlink $2" - [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1 -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local NV_ROOT="/usr/${inslibdir}/opengl/nvidia" - local CL_ROOT=/usr/${inslibdir}/OpenCL/vendors/nvidia - local libdir= sover= - - if use kernel_linux; then - if has_multilib_profile && [[ ${ABI} == "x86" ]] ; then - libdir=32 - else - libdir=. - fi - sover=${PV} - else - libdir=obj - # on FreeBSD it has just .1 suffix - sover=1 - fi - - # The GLX libraries - donvidia ${NV_ROOT}/lib ${libdir}/libGL.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-glcore.so ${sover} - if use x86-fbsd; then - donvidia ${NV_ROOT}/lib ${libdir}/libnvidia-tls.so ${sover} - else - donvidia ${NV_ROOT}/lib ${libdir}/tls/libnvidia-tls.so ${sover} - fi - - # VDPAU - donvidia /usr/${inslibdir} ${libdir}/libvdpau_nvidia.so ${sover} - - # CUDA & OpenCL - if use kernel_linux; then - donvidia /usr/${inslibdir} ${libdir}/libcuda.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-compiler.so ${sover} - donvidia ${CL_ROOT} ${libdir}/libOpenCL.so 1.0.0 - #dosym libOpenCL.so.1 ${CL_ROOT}/libOpenCL.so - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia - - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "To use the NVIDIA CUDA/OpenCL, run \"eselect opencl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /opt/bin/nvidia-bug-report.sh included." - elog - elog "To work with compiz, you must enable the AddARGBGLXVisuals option." - elog - elog "If you are having resolution problems, try disabling DynamicTwinView." - elog -} - -pkg_postrm() { - "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-295.53.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-295.53.ebuild deleted file mode 100644 index 301d8462..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-295.53.ebuild +++ /dev/null @@ -1,453 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="2" - -inherit eutils unpacker multilib portability versionator flag-o-matic - -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI="x86? ( http://us.download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run ) - amd64? ( http://us.download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run ) - x86-fbsd? ( http://us.download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )" - -LICENSE="NVIDIA" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd" -IUSE="acpi multilib kernel_linux" -RESTRICT="strip" -EMULTILIB_PKG="true" - -COMMON="<x11-base/xorg-server-1.12.99 - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - multilib? ( app-emulation/emul-linux-x86-xlibs ) - >=app-admin/eselect-opengl-1.0.9 - app-admin/eselect-opencl - !<media-video/nvidia-settings-256.52" -DEPEND="${COMMON}" -RDEPEND="${COMMON} - x11-libs/libXvMC - !<x11-drivers/nvidia-userspace-${PV} - !>x11-drivers/nvidia-userspace-${PV} - acpi? ( sys-power/acpid )" -PDEPEND=">=x11-libs/libvdpau-0.3-r1" - -QA_TEXTRELS_x86=" - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/libnvcuvid.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_x86_fbsd="boot/modules/nvidia.ko - usr/lib/opengl/nvidia/lib/libGL.so.1 - usr/lib/libnvidia-glcore.so.1 - usr/lib/libvdpau_nvidia.so.1 - usr/lib/libnvidia-cfg.so.1 - usr/lib/opengl/nvidia/extensions/libglx.so.1 - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_amd64="usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_EXECSTACK_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib/libXvMCNVIDIA.a:NVXVMC.o - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0" - -QA_EXECSTACK_amd64="usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.a:NVXVMC.o - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - opt/bin/nvidia-smi - opt/bin/nvidia-xconfig - opt/bin/nvidia-debugdump - opt/bin/nvidia-settings" - -QA_WX_LOAD_x86="usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/libXvMCNVIDIA.a - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_WX_LOAD_amd64="usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_SONAME_x86="usr/lib/libnvidia-compiler.so.${PV}" - -QA_SONAME_amd64="usr/lib64/libnvidia-compiler.so.${PV} - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_DT_HASH_amd64="usr/lib32/libcuda.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/libnvcuvid.so.${PV} - opt/bin/nvidia-smi - opt/bin/nvidia-xconfig - opt/bin/nvidia-debugdump - opt/bin/nvidia-settings" - -QA_DT_HASH_x86="usr/lib/libcuda.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvcuvid.so.${PV} - opt/bin/nvidia-smi - opt/bin/nvidia-xconfig - opt/bin/nvidia-debugdump - opt/bin/nvidia-settings" - - -S="${WORKDIR}/" - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use amd64 && has_multilib_profile && [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default abi." - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # On BSD userland it wants real make command - use userland_BSD && MAKE="$(get_bmake)" - - export _POSIX2_VERSION="199209" - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - NV_DOC="${S}/doc" - NV_EXEC="${S}/obj" - NV_LIB="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}" - NV_EXEC="${S}" - NV_LIB="${S}" - NV_SRC="${S}/kernel" - NV_MAN="${S}" - NV_X11="${S}" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use x86-fbsd; then - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - use x86-fbsd && cd doc - cat <<- EOF > "${S}"/nvidia.icd - /usr/$(get_libdir)/libcuda.so - EOF -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use x86-fbsd; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi -} - -src_install() { - if use kernel_linux; then - VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)" - if [ -z "$VIDEOGROUP" ]; then - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi - - # Add the aliases - [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR" - sed -e 's:PACKAGE:'${PF}':g' \ - -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \ - "${WORKDIR}"/nvidia - insinto /etc/modprobe.d - newins "${WORKDIR}"/nvidia nvidia.conf || die - - # Ensures that our device nodes are created when not using X - exeinto /lib/udev - doexe "${FILESDIR}"/nvidia-udev.sh - - insinto /lib/udev/rules.d - newins "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules - fi - - # NVIDIA kernel <-> userspace driver config lib - dolib.so ${NV_LIB}/libnvidia-cfg.so.${NV_SOVER} || \ - die "failed to install libnvidia-cfg" - dosym libnvidia-cfg.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-cfg.so.1 || \ - die "failed to create libnvidia-cfg.so symlink" - dosym libnvidia-cfg.so.1 \ - /usr/$(get_libdir)/libnvidia-cfg.so || \ - die "failed to create libnvidia-cfg.so symlink" - - # NVIDIA monitoring library - dolib.so ${NV_LIB}/libnvidia-ml.so.${NV_SOVER} || \ - die "failed to install libnvidia-ml" - dosym libnvidia-ml.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-ml.so.1 || \ - die "failed to create libnvidia-ml.so symlink" - dosym libnvidia-ml.so.1 \ - /usr/$(get_libdir)/libnvidia-ml.so || \ - die "failed to create libnvidia-ml.so symlink" - - # NVIDIA video decode <-> CUDA - dolib.so ${NV_LIB}/libnvcuvid.so.${NV_SOVER} || \ - die "failed to install libnvcuvid.so" - dosym libnvcuvid.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvcuvid.so.1 || \ - die "failed to create libnvcuvid.so symlink" - dosym libnvcuvid.so.1 \ - /usr/$(get_libdir)/libnvcuvid.so || \ - die "failed to create libnvcuvid.so symlink" - - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11_DRV}/nvidia_drv.so || die "failed to install nvidia_drv.so" - - # Xorg GLX driver - insinto /usr/$(get_libdir)/opengl/nvidia/extensions - doins ${NV_X11_EXT}/libglx.so.${NV_SOVER} || \ - die "failed to install libglx.so" - dosym libglx.so.${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so || \ - die "failed to create libglx.so symlink" - - # XvMC driver - dolib.a ${NV_X11}/libXvMCNVIDIA.a || \ - die "failed to install libXvMCNVIDIA.so" - dolib.so ${NV_X11}/libXvMCNVIDIA.so.${NV_SOVER} || \ - die "failed to install libXvMCNVIDIA.so" - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA.so.1 || \ - die "failed to create libXvMCNVIDIA.so symlink" - dosym libXvMCNVIDIA.so.1 /usr/$(get_libdir)/libXvMCNVIDIA.so || \ - die "failed to create libXvMCNVIDIA.so symlink" - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA_dynamic.so.1 || \ - die "failed to create libXvMCNVIDIA_dynamic.so symlink" - - # OpenCL ICD for NVIDIA - if use kernel_linux; then - insinto /etc/OpenCL/vendors - doins nvidia.icd - fi - - # Documentation - dohtml ${NV_DOC}/html/* - if use x86-fbsd; then - dodoc "${NV_DOC}/README" - doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" - doman "${NV_MAN}/nvidia-smi.1.gz" - doman "${NV_MAN}/nvidia-xconfig.1.gz" - fi - - # Helper Apps - exeinto /opt/bin/ - doexe ${NV_EXEC}/nvidia-xconfig || die - doexe ${NV_EXEC}/nvidia-debugdump || die - doexe ${NV_EXEC}/nvidia-bug-report.sh || die - if use kernel_linux; then - doexe ${NV_EXEC}/nvidia-smi || die - fi - - 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 - - is_final_abi || die "failed to iterate through all ABIs" - - # GNOME3 gnome-terminal redraw bug workaround, - # see: https://bugzilla.gnome.org/show_bug.cgi?id=664858 - doenvd "${FILESDIR}/90mutter-disable-culling" -} - -# Install nvidia library: -# the first parameter is the place where to install it -# the second parameter is the base name of the library -# the third parameter is the provided soversion -donvidia() { - dodir $1 - exeinto $1 - - libname=$(basename $2) - - doexe $2.$3 || die "failed to install $2" - dosym ${libname}.$3 $1/${libname} || die "failed to symlink $2" - [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1 -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local NV_ROOT="/usr/${inslibdir}/opengl/nvidia" - local CL_ROOT=/usr/${inslibdir}/OpenCL/vendors/nvidia - local libdir= sover= - - if use kernel_linux; then - if has_multilib_profile && [[ ${ABI} == "x86" ]] ; then - libdir=32 - else - libdir=. - fi - sover=${PV} - else - libdir=obj - # on FreeBSD it has just .1 suffix - sover=1 - fi - - # The GLX libraries - donvidia ${NV_ROOT}/lib ${libdir}/libGL.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-glcore.so ${sover} - if use x86-fbsd; then - donvidia ${NV_ROOT}/lib ${libdir}/libnvidia-tls.so ${sover} - else - donvidia ${NV_ROOT}/lib ${libdir}/tls/libnvidia-tls.so ${sover} - fi - - # VDPAU - donvidia /usr/${inslibdir} ${libdir}/libvdpau_nvidia.so ${sover} - - # CUDA & OpenCL - if use kernel_linux; then - donvidia /usr/${inslibdir} ${libdir}/libcuda.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-compiler.so ${sover} - donvidia ${CL_ROOT} ${libdir}/libOpenCL.so 1.0.0 - #dosym libOpenCL.so.1 ${CL_ROOT}/libOpenCL.so - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia - - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "To use the NVIDIA CUDA/OpenCL, run \"eselect opencl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /opt/bin/nvidia-bug-report.sh included." - elog - elog "To work with compiz, you must enable the AddARGBGLXVisuals option." - elog - elog "If you are having resolution problems, try disabling DynamicTwinView." - elog -} - -pkg_postrm() { - "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-295.59.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-295.59.ebuild deleted file mode 100644 index 301d8462..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-295.59.ebuild +++ /dev/null @@ -1,453 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="2" - -inherit eutils unpacker multilib portability versionator flag-o-matic - -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI="x86? ( http://us.download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run ) - amd64? ( http://us.download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run ) - x86-fbsd? ( http://us.download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )" - -LICENSE="NVIDIA" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd" -IUSE="acpi multilib kernel_linux" -RESTRICT="strip" -EMULTILIB_PKG="true" - -COMMON="<x11-base/xorg-server-1.12.99 - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - multilib? ( app-emulation/emul-linux-x86-xlibs ) - >=app-admin/eselect-opengl-1.0.9 - app-admin/eselect-opencl - !<media-video/nvidia-settings-256.52" -DEPEND="${COMMON}" -RDEPEND="${COMMON} - x11-libs/libXvMC - !<x11-drivers/nvidia-userspace-${PV} - !>x11-drivers/nvidia-userspace-${PV} - acpi? ( sys-power/acpid )" -PDEPEND=">=x11-libs/libvdpau-0.3-r1" - -QA_TEXTRELS_x86=" - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/libnvcuvid.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_x86_fbsd="boot/modules/nvidia.ko - usr/lib/opengl/nvidia/lib/libGL.so.1 - usr/lib/libnvidia-glcore.so.1 - usr/lib/libvdpau_nvidia.so.1 - usr/lib/libnvidia-cfg.so.1 - usr/lib/opengl/nvidia/extensions/libglx.so.1 - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_amd64="usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_EXECSTACK_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib/libXvMCNVIDIA.a:NVXVMC.o - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0" - -QA_EXECSTACK_amd64="usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.a:NVXVMC.o - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - opt/bin/nvidia-smi - opt/bin/nvidia-xconfig - opt/bin/nvidia-debugdump - opt/bin/nvidia-settings" - -QA_WX_LOAD_x86="usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/libXvMCNVIDIA.a - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_WX_LOAD_amd64="usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_SONAME_x86="usr/lib/libnvidia-compiler.so.${PV}" - -QA_SONAME_amd64="usr/lib64/libnvidia-compiler.so.${PV} - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_DT_HASH_amd64="usr/lib32/libcuda.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/libnvcuvid.so.${PV} - opt/bin/nvidia-smi - opt/bin/nvidia-xconfig - opt/bin/nvidia-debugdump - opt/bin/nvidia-settings" - -QA_DT_HASH_x86="usr/lib/libcuda.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvcuvid.so.${PV} - opt/bin/nvidia-smi - opt/bin/nvidia-xconfig - opt/bin/nvidia-debugdump - opt/bin/nvidia-settings" - - -S="${WORKDIR}/" - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use amd64 && has_multilib_profile && [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default abi." - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # On BSD userland it wants real make command - use userland_BSD && MAKE="$(get_bmake)" - - export _POSIX2_VERSION="199209" - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - NV_DOC="${S}/doc" - NV_EXEC="${S}/obj" - NV_LIB="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}" - NV_EXEC="${S}" - NV_LIB="${S}" - NV_SRC="${S}/kernel" - NV_MAN="${S}" - NV_X11="${S}" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use x86-fbsd; then - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - use x86-fbsd && cd doc - cat <<- EOF > "${S}"/nvidia.icd - /usr/$(get_libdir)/libcuda.so - EOF -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use x86-fbsd; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi -} - -src_install() { - if use kernel_linux; then - VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)" - if [ -z "$VIDEOGROUP" ]; then - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi - - # Add the aliases - [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR" - sed -e 's:PACKAGE:'${PF}':g' \ - -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \ - "${WORKDIR}"/nvidia - insinto /etc/modprobe.d - newins "${WORKDIR}"/nvidia nvidia.conf || die - - # Ensures that our device nodes are created when not using X - exeinto /lib/udev - doexe "${FILESDIR}"/nvidia-udev.sh - - insinto /lib/udev/rules.d - newins "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules - fi - - # NVIDIA kernel <-> userspace driver config lib - dolib.so ${NV_LIB}/libnvidia-cfg.so.${NV_SOVER} || \ - die "failed to install libnvidia-cfg" - dosym libnvidia-cfg.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-cfg.so.1 || \ - die "failed to create libnvidia-cfg.so symlink" - dosym libnvidia-cfg.so.1 \ - /usr/$(get_libdir)/libnvidia-cfg.so || \ - die "failed to create libnvidia-cfg.so symlink" - - # NVIDIA monitoring library - dolib.so ${NV_LIB}/libnvidia-ml.so.${NV_SOVER} || \ - die "failed to install libnvidia-ml" - dosym libnvidia-ml.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-ml.so.1 || \ - die "failed to create libnvidia-ml.so symlink" - dosym libnvidia-ml.so.1 \ - /usr/$(get_libdir)/libnvidia-ml.so || \ - die "failed to create libnvidia-ml.so symlink" - - # NVIDIA video decode <-> CUDA - dolib.so ${NV_LIB}/libnvcuvid.so.${NV_SOVER} || \ - die "failed to install libnvcuvid.so" - dosym libnvcuvid.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvcuvid.so.1 || \ - die "failed to create libnvcuvid.so symlink" - dosym libnvcuvid.so.1 \ - /usr/$(get_libdir)/libnvcuvid.so || \ - die "failed to create libnvcuvid.so symlink" - - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11_DRV}/nvidia_drv.so || die "failed to install nvidia_drv.so" - - # Xorg GLX driver - insinto /usr/$(get_libdir)/opengl/nvidia/extensions - doins ${NV_X11_EXT}/libglx.so.${NV_SOVER} || \ - die "failed to install libglx.so" - dosym libglx.so.${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so || \ - die "failed to create libglx.so symlink" - - # XvMC driver - dolib.a ${NV_X11}/libXvMCNVIDIA.a || \ - die "failed to install libXvMCNVIDIA.so" - dolib.so ${NV_X11}/libXvMCNVIDIA.so.${NV_SOVER} || \ - die "failed to install libXvMCNVIDIA.so" - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA.so.1 || \ - die "failed to create libXvMCNVIDIA.so symlink" - dosym libXvMCNVIDIA.so.1 /usr/$(get_libdir)/libXvMCNVIDIA.so || \ - die "failed to create libXvMCNVIDIA.so symlink" - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA_dynamic.so.1 || \ - die "failed to create libXvMCNVIDIA_dynamic.so symlink" - - # OpenCL ICD for NVIDIA - if use kernel_linux; then - insinto /etc/OpenCL/vendors - doins nvidia.icd - fi - - # Documentation - dohtml ${NV_DOC}/html/* - if use x86-fbsd; then - dodoc "${NV_DOC}/README" - doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" - doman "${NV_MAN}/nvidia-smi.1.gz" - doman "${NV_MAN}/nvidia-xconfig.1.gz" - fi - - # Helper Apps - exeinto /opt/bin/ - doexe ${NV_EXEC}/nvidia-xconfig || die - doexe ${NV_EXEC}/nvidia-debugdump || die - doexe ${NV_EXEC}/nvidia-bug-report.sh || die - if use kernel_linux; then - doexe ${NV_EXEC}/nvidia-smi || die - fi - - 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 - - is_final_abi || die "failed to iterate through all ABIs" - - # GNOME3 gnome-terminal redraw bug workaround, - # see: https://bugzilla.gnome.org/show_bug.cgi?id=664858 - doenvd "${FILESDIR}/90mutter-disable-culling" -} - -# Install nvidia library: -# the first parameter is the place where to install it -# the second parameter is the base name of the library -# the third parameter is the provided soversion -donvidia() { - dodir $1 - exeinto $1 - - libname=$(basename $2) - - doexe $2.$3 || die "failed to install $2" - dosym ${libname}.$3 $1/${libname} || die "failed to symlink $2" - [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1 -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local NV_ROOT="/usr/${inslibdir}/opengl/nvidia" - local CL_ROOT=/usr/${inslibdir}/OpenCL/vendors/nvidia - local libdir= sover= - - if use kernel_linux; then - if has_multilib_profile && [[ ${ABI} == "x86" ]] ; then - libdir=32 - else - libdir=. - fi - sover=${PV} - else - libdir=obj - # on FreeBSD it has just .1 suffix - sover=1 - fi - - # The GLX libraries - donvidia ${NV_ROOT}/lib ${libdir}/libGL.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-glcore.so ${sover} - if use x86-fbsd; then - donvidia ${NV_ROOT}/lib ${libdir}/libnvidia-tls.so ${sover} - else - donvidia ${NV_ROOT}/lib ${libdir}/tls/libnvidia-tls.so ${sover} - fi - - # VDPAU - donvidia /usr/${inslibdir} ${libdir}/libvdpau_nvidia.so ${sover} - - # CUDA & OpenCL - if use kernel_linux; then - donvidia /usr/${inslibdir} ${libdir}/libcuda.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-compiler.so ${sover} - donvidia ${CL_ROOT} ${libdir}/libOpenCL.so 1.0.0 - #dosym libOpenCL.so.1 ${CL_ROOT}/libOpenCL.so - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia - - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "To use the NVIDIA CUDA/OpenCL, run \"eselect opencl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /opt/bin/nvidia-bug-report.sh included." - elog - elog "To work with compiz, you must enable the AddARGBGLXVisuals option." - elog - elog "If you are having resolution problems, try disabling DynamicTwinView." - elog -} - -pkg_postrm() { - "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-302.17.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-302.17.ebuild deleted file mode 100644 index 301d8462..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-302.17.ebuild +++ /dev/null @@ -1,453 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="2" - -inherit eutils unpacker multilib portability versionator flag-o-matic - -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI="x86? ( http://us.download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run ) - amd64? ( http://us.download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run ) - x86-fbsd? ( http://us.download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )" - -LICENSE="NVIDIA" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd" -IUSE="acpi multilib kernel_linux" -RESTRICT="strip" -EMULTILIB_PKG="true" - -COMMON="<x11-base/xorg-server-1.12.99 - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - multilib? ( app-emulation/emul-linux-x86-xlibs ) - >=app-admin/eselect-opengl-1.0.9 - app-admin/eselect-opencl - !<media-video/nvidia-settings-256.52" -DEPEND="${COMMON}" -RDEPEND="${COMMON} - x11-libs/libXvMC - !<x11-drivers/nvidia-userspace-${PV} - !>x11-drivers/nvidia-userspace-${PV} - acpi? ( sys-power/acpid )" -PDEPEND=">=x11-libs/libvdpau-0.3-r1" - -QA_TEXTRELS_x86=" - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/libnvcuvid.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_x86_fbsd="boot/modules/nvidia.ko - usr/lib/opengl/nvidia/lib/libGL.so.1 - usr/lib/libnvidia-glcore.so.1 - usr/lib/libvdpau_nvidia.so.1 - usr/lib/libnvidia-cfg.so.1 - usr/lib/opengl/nvidia/extensions/libglx.so.1 - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_amd64="usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_EXECSTACK_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib/libXvMCNVIDIA.a:NVXVMC.o - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0" - -QA_EXECSTACK_amd64="usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.a:NVXVMC.o - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - opt/bin/nvidia-smi - opt/bin/nvidia-xconfig - opt/bin/nvidia-debugdump - opt/bin/nvidia-settings" - -QA_WX_LOAD_x86="usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/libXvMCNVIDIA.a - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_WX_LOAD_amd64="usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_SONAME_x86="usr/lib/libnvidia-compiler.so.${PV}" - -QA_SONAME_amd64="usr/lib64/libnvidia-compiler.so.${PV} - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_DT_HASH_amd64="usr/lib32/libcuda.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/libnvcuvid.so.${PV} - opt/bin/nvidia-smi - opt/bin/nvidia-xconfig - opt/bin/nvidia-debugdump - opt/bin/nvidia-settings" - -QA_DT_HASH_x86="usr/lib/libcuda.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvcuvid.so.${PV} - opt/bin/nvidia-smi - opt/bin/nvidia-xconfig - opt/bin/nvidia-debugdump - opt/bin/nvidia-settings" - - -S="${WORKDIR}/" - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use amd64 && has_multilib_profile && [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default abi." - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # On BSD userland it wants real make command - use userland_BSD && MAKE="$(get_bmake)" - - export _POSIX2_VERSION="199209" - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - NV_DOC="${S}/doc" - NV_EXEC="${S}/obj" - NV_LIB="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}" - NV_EXEC="${S}" - NV_LIB="${S}" - NV_SRC="${S}/kernel" - NV_MAN="${S}" - NV_X11="${S}" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use x86-fbsd; then - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - use x86-fbsd && cd doc - cat <<- EOF > "${S}"/nvidia.icd - /usr/$(get_libdir)/libcuda.so - EOF -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use x86-fbsd; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi -} - -src_install() { - if use kernel_linux; then - VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)" - if [ -z "$VIDEOGROUP" ]; then - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi - - # Add the aliases - [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR" - sed -e 's:PACKAGE:'${PF}':g' \ - -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \ - "${WORKDIR}"/nvidia - insinto /etc/modprobe.d - newins "${WORKDIR}"/nvidia nvidia.conf || die - - # Ensures that our device nodes are created when not using X - exeinto /lib/udev - doexe "${FILESDIR}"/nvidia-udev.sh - - insinto /lib/udev/rules.d - newins "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules - fi - - # NVIDIA kernel <-> userspace driver config lib - dolib.so ${NV_LIB}/libnvidia-cfg.so.${NV_SOVER} || \ - die "failed to install libnvidia-cfg" - dosym libnvidia-cfg.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-cfg.so.1 || \ - die "failed to create libnvidia-cfg.so symlink" - dosym libnvidia-cfg.so.1 \ - /usr/$(get_libdir)/libnvidia-cfg.so || \ - die "failed to create libnvidia-cfg.so symlink" - - # NVIDIA monitoring library - dolib.so ${NV_LIB}/libnvidia-ml.so.${NV_SOVER} || \ - die "failed to install libnvidia-ml" - dosym libnvidia-ml.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-ml.so.1 || \ - die "failed to create libnvidia-ml.so symlink" - dosym libnvidia-ml.so.1 \ - /usr/$(get_libdir)/libnvidia-ml.so || \ - die "failed to create libnvidia-ml.so symlink" - - # NVIDIA video decode <-> CUDA - dolib.so ${NV_LIB}/libnvcuvid.so.${NV_SOVER} || \ - die "failed to install libnvcuvid.so" - dosym libnvcuvid.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvcuvid.so.1 || \ - die "failed to create libnvcuvid.so symlink" - dosym libnvcuvid.so.1 \ - /usr/$(get_libdir)/libnvcuvid.so || \ - die "failed to create libnvcuvid.so symlink" - - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11_DRV}/nvidia_drv.so || die "failed to install nvidia_drv.so" - - # Xorg GLX driver - insinto /usr/$(get_libdir)/opengl/nvidia/extensions - doins ${NV_X11_EXT}/libglx.so.${NV_SOVER} || \ - die "failed to install libglx.so" - dosym libglx.so.${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so || \ - die "failed to create libglx.so symlink" - - # XvMC driver - dolib.a ${NV_X11}/libXvMCNVIDIA.a || \ - die "failed to install libXvMCNVIDIA.so" - dolib.so ${NV_X11}/libXvMCNVIDIA.so.${NV_SOVER} || \ - die "failed to install libXvMCNVIDIA.so" - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA.so.1 || \ - die "failed to create libXvMCNVIDIA.so symlink" - dosym libXvMCNVIDIA.so.1 /usr/$(get_libdir)/libXvMCNVIDIA.so || \ - die "failed to create libXvMCNVIDIA.so symlink" - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA_dynamic.so.1 || \ - die "failed to create libXvMCNVIDIA_dynamic.so symlink" - - # OpenCL ICD for NVIDIA - if use kernel_linux; then - insinto /etc/OpenCL/vendors - doins nvidia.icd - fi - - # Documentation - dohtml ${NV_DOC}/html/* - if use x86-fbsd; then - dodoc "${NV_DOC}/README" - doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" - doman "${NV_MAN}/nvidia-smi.1.gz" - doman "${NV_MAN}/nvidia-xconfig.1.gz" - fi - - # Helper Apps - exeinto /opt/bin/ - doexe ${NV_EXEC}/nvidia-xconfig || die - doexe ${NV_EXEC}/nvidia-debugdump || die - doexe ${NV_EXEC}/nvidia-bug-report.sh || die - if use kernel_linux; then - doexe ${NV_EXEC}/nvidia-smi || die - fi - - 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 - - is_final_abi || die "failed to iterate through all ABIs" - - # GNOME3 gnome-terminal redraw bug workaround, - # see: https://bugzilla.gnome.org/show_bug.cgi?id=664858 - doenvd "${FILESDIR}/90mutter-disable-culling" -} - -# Install nvidia library: -# the first parameter is the place where to install it -# the second parameter is the base name of the library -# the third parameter is the provided soversion -donvidia() { - dodir $1 - exeinto $1 - - libname=$(basename $2) - - doexe $2.$3 || die "failed to install $2" - dosym ${libname}.$3 $1/${libname} || die "failed to symlink $2" - [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1 -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local NV_ROOT="/usr/${inslibdir}/opengl/nvidia" - local CL_ROOT=/usr/${inslibdir}/OpenCL/vendors/nvidia - local libdir= sover= - - if use kernel_linux; then - if has_multilib_profile && [[ ${ABI} == "x86" ]] ; then - libdir=32 - else - libdir=. - fi - sover=${PV} - else - libdir=obj - # on FreeBSD it has just .1 suffix - sover=1 - fi - - # The GLX libraries - donvidia ${NV_ROOT}/lib ${libdir}/libGL.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-glcore.so ${sover} - if use x86-fbsd; then - donvidia ${NV_ROOT}/lib ${libdir}/libnvidia-tls.so ${sover} - else - donvidia ${NV_ROOT}/lib ${libdir}/tls/libnvidia-tls.so ${sover} - fi - - # VDPAU - donvidia /usr/${inslibdir} ${libdir}/libvdpau_nvidia.so ${sover} - - # CUDA & OpenCL - if use kernel_linux; then - donvidia /usr/${inslibdir} ${libdir}/libcuda.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-compiler.so ${sover} - donvidia ${CL_ROOT} ${libdir}/libOpenCL.so 1.0.0 - #dosym libOpenCL.so.1 ${CL_ROOT}/libOpenCL.so - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia - - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "To use the NVIDIA CUDA/OpenCL, run \"eselect opencl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /opt/bin/nvidia-bug-report.sh included." - elog - elog "To work with compiz, you must enable the AddARGBGLXVisuals option." - elog - elog "If you are having resolution problems, try disabling DynamicTwinView." - elog -} - -pkg_postrm() { - "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-304.119.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-304.119.ebuild deleted file mode 100644 index b8feefa7..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-304.119.ebuild +++ /dev/null @@ -1,379 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI=4 - -inherit eutils flag-o-matic linux-info linux-mod multilib nvidia-driver \ - portability toolchain-funcs unpacker user versionator udev - -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI="x86? ( ftp://download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run ) - amd64? ( ftp://download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run ) - amd64-fbsd? ( ftp://download.nvidia.com/XFree86/FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz ) - x86-fbsd? ( ftp://download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )" - -LICENSE="NVIDIA" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~amd64-fbsd ~x86-fbsd" -IUSE="acpi multilib x-multilib kernel_FreeBSD kernel_linux tools +X" -RESTRICT="strip" -EMULTILIB_PKG="true" - -COMMON="app-admin/eselect-opencl - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - x-multilib? ( app-emulation/emul-linux-x86-xlibs ) - multilib? ( app-emulation/emul-linux-x86-baselibs ) - X? ( - <x11-base/xorg-server-1.15.99 - >=app-admin/eselect-opengl-1.0.9 - )" -DEPEND="${COMMON}" -# Note: do not add !>nvidia-userspace-ver or !<nvidia-userspace-ver -# because it would cause pkg_postrm to set the wrong opengl implementation -RDEPEND="${COMMON} - X? ( x11-libs/libXvMC ) - acpi? ( sys-power/acpid ) - tools? ( media-video/nvidia-settings )" -PDEPEND="X? ( >=x11-libs/libvdpau-0.3-r1 )" - -REQUIRED_USE="tools? ( X )" -QA_PREBUILT="opt/* usr/lib*" -S="${WORKDIR}/" - -pkg_pretend() { - if use amd64 && has_multilib_profile && \ - [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default ABI" - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # Kernel features/options to check for - CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP" - use x86 && CONFIG_CHECK+=" ~HIGHMEM" - - # Now do the above checks - use kernel_linux && check_extra_config -} - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use kernel_linux; then - linux-mod_pkg_setup - MODULE_NAMES="nvidia(video:${S}/kernel)" - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \ - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC)" - # linux-mod_src_compile calls set_arch_to_kernel, which - # sets the ARCH to x86 but NVIDIA's wrapping Makefile - # expects x86_64 or i386 and then converts it to x86 - # later on in the build process - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')" - fi - - # Since Nvidia ships 3 different series of drivers, we need to give the user - # some kind of guidance as to what version they should install. This tries - # to point the user in the right direction but can't be perfect. check - # nvidia-driver.eclass - nvidia-driver-check-warning - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}" - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}" - NV_DOC="${S}/doc" - NV_OBJ="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}" - NV_OBJ="${S}" - NV_SRC="${S}/kernel" - NV_MAN="${S}" - NV_X11="${S}" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use kernel_FreeBSD; then - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - cat <<- EOF > "${S}"/nvidia.icd - /usr/$(get_libdir)/libnvidia-opencl.so - EOF - - # Allow user patches so they can support RC kernels and whatever else - epatch_user -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use kernel_FreeBSD; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi -} - -# Install nvidia library: -# the first parameter is the library to install -# the second parameter is the provided soversion -# the third parameter is the target directory if its not /usr/lib -donvidia() { - # Full path to library minus SOVER - MY_LIB="$1" - - # SOVER to use - MY_SOVER="$2" - - # Where to install - MY_DEST="$3" - - if [[ -z "${MY_DEST}" ]]; then - MY_DEST="/usr/$(get_libdir)" - action="dolib.so" - else - exeinto ${MY_DEST} - action="doexe" - fi - - # Get just the library name - libname=$(basename $1) - - # Install the library with the correct SOVER - ${action} ${MY_LIB}.${MY_SOVER} || \ - die "failed to install ${libname}" - - # If SOVER wasn't 1, then we need to create a .1 symlink - if [[ "${MY_SOVER}" != "1" ]]; then - dosym ${libname}.${MY_SOVER} \ - ${MY_DEST}/${libname}.1 || \ - die "failed to create ${libname} symlink" - fi - - # Always create the symlink from the raw lib to the .1 - dosym ${libname}.1 \ - ${MY_DEST}/${libname} || \ - die "failed to create ${libname} symlink" -} - -src_install() { - if use kernel_linux; then - # Add the aliases - # This file is tweaked with the appropriate video group in - # pkg_postinst, see bug #491414 - newins "${FILESDIR}"/nvidia-169.07 nvidia.conf - - # Ensures that our device nodes are created when not using X - exeinto "$(udev_get_udevdir)" - doexe "${FILESDIR}"/nvidia-udev.sh - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules - - elif use kernel_FreeBSD; then - if use x86-fbsd; then - insinto /boot/modules - doins "${S}/src/nvidia.kld" || die - fi - - exeinto /boot/modules - doexe "${S}/src/nvidia.ko" || die - fi - - # NVIDIA kernel <-> userspace driver config lib - donvidia ${NV_OBJ}/libnvidia-cfg.so ${NV_SOVER} - - if use kernel_linux; then - # NVIDIA video decode <-> CUDA - donvidia ${NV_OBJ}/libnvcuvid.so ${NV_SOVER} - fi - - if use X; then - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11}/nvidia_drv.so || die "failed to install nvidia_drv.so" - - # Xorg GLX driver - donvidia ${NV_X11}/libglx.so ${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions - - # XvMC driver - dolib.a ${NV_X11}/libXvMCNVIDIA.a || \ - die "failed to install libXvMCNVIDIA.so" - donvidia ${NV_X11}/libXvMCNVIDIA.so ${NV_SOVER} - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA_dynamic.so.1 || \ - die "failed to create libXvMCNVIDIA_dynamic.so symlink" - fi - - # OpenCL ICD for NVIDIA - if use kernel_linux; then - insinto /etc/OpenCL/vendors - doins nvidia.icd - donvidia ${NV_OBJ}/libnvidia-opencl.so ${NV_SOVER} - fi - - # Documentation - dohtml ${NV_DOC}/html/* - if use kernel_FreeBSD; then - dodoc "${NV_DOC}/README" - use X && doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" - doman "${NV_MAN}/nvidia-smi.1.gz" - use X && doman "${NV_MAN}/nvidia-xconfig.1.gz" - doman "${NV_MAN}/nvidia-cuda-proxy-control.1.gz" - fi - - # Helper Apps - exeinto /opt/bin/ - if use X; then - doexe ${NV_OBJ}/nvidia-xconfig || die - fi - - if use kernel_linux ; then - doexe ${NV_OBJ}/nvidia-debugdump || die - doexe ${NV_OBJ}/nvidia-cuda-proxy-control || die - doexe ${NV_OBJ}/nvidia-cuda-proxy-server || die - doexe ${NV_OBJ}/nvidia-smi || die - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi - fi - - exeinto /usr/bin/ - doexe ${NV_OBJ}/nvidia-bug-report.sh || die - - if has_multilib_profile && use multilib ; then - local OABI=${ABI} - for ABI in $(get_install_abis) ; do - src_install-libs - done - ABI=${OABI} - unset OABI - else - src_install-libs - fi - - is_final_abi || die "failed to iterate through all ABIs" - - # GNOME3 gnome-terminal redraw bug workaround, - # see: https://bugzilla.gnome.org/show_bug.cgi?id=664858 - doenvd "${FILESDIR}/90mutter-disable-culling" -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib" - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia" - local libdir=${NV_OBJ} - - if use kernel_linux && has_multilib_profile && \ - [[ ${ABI} == "x86" ]] ; then - libdir=${NV_OBJ}/32 - fi - - if use X; then - # The GLX libraries - donvidia ${libdir}/libGL.so ${NV_SOVER} ${GL_ROOT} - donvidia ${libdir}/libnvidia-glcore.so ${NV_SOVER} - if use kernel_FreeBSD; then - donvidia ${libdir}/libnvidia-tls.so ${NV_SOVER} ${GL_ROOT} - else - donvidia ${libdir}/tls/libnvidia-tls.so ${NV_SOVER} ${GL_ROOT} - fi - - # VDPAU - donvidia ${libdir}/libvdpau_nvidia.so ${NV_SOVER} - fi - - # NVIDIA monitoring library - if use kernel_linux ; then - donvidia ${libdir}/libnvidia-ml.so ${NV_SOVER} - fi - - # CUDA & OpenCL - if use kernel_linux; then - donvidia ${libdir}/libcuda.so ${NV_SOVER} - donvidia ${libdir}/libnvidia-compiler.so ${NV_SOVER} - donvidia ${libdir}/libOpenCL.so 1.0.0 ${CL_ROOT} - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia - - elog "You must be in the video group to use the NVIDIA device" - elog "For more info, read the docs at" - elog "http://www.gentoo.org/doc/en/nvidia-guide.xml#doc_chap3_sect6" - elog - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "To use the NVIDIA CUDA/OpenCL, run \"eselect opencl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /opt/bin/nvidia-bug-report.sh included." - elog - if ! use X; then - elog "You have elected to not install the X.org driver. Along with" - elog "this the OpenGL libraries, XvMC, and VDPAU libraries were not" - elog "installed. Additionally, once the driver is loaded your card" - elog "and fan will run at max speed which may not be desirable." - elog "Use the 'nvidia-smi' init script to have your card and fan" - elog "speed scale appropriately." - elog - fi - - local videogroup="$(egetent group video | cut -d ':' -f 3)" - if [ -n "${videogroup}" ]; then - sed -i -e "s:PACKAGE:${PF}:g" \ - -e "s:VIDEOGID:${videogroup}:" "${ROOT}"/etc/modprobe.d/nvidia.conf - else - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi -} - -pkg_prerm() { - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} - -pkg_postrm() { - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-304.121.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-304.121.ebuild deleted file mode 100644 index c9401d56..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-304.121.ebuild +++ /dev/null @@ -1,379 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI=4 - -inherit eutils flag-o-matic linux-info linux-mod multilib nvidia-driver \ - portability toolchain-funcs unpacker user versionator udev - -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI="x86? ( http://us.download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run ) - amd64? ( http://us.download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run ) - amd64-fbsd? ( http://us.download.nvidia.com/XFree86/FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz ) - x86-fbsd? ( http://us.download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )" - -LICENSE="NVIDIA" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~amd64-fbsd ~x86-fbsd" -IUSE="acpi multilib x-multilib kernel_FreeBSD kernel_linux tools +X" -RESTRICT="strip" -EMULTILIB_PKG="true" - -COMMON="app-admin/eselect-opencl - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - x-multilib? ( app-emulation/emul-linux-x86-xlibs ) - multilib? ( app-emulation/emul-linux-x86-baselibs ) - X? ( - <x11-base/xorg-server-1.15.99 - >=app-admin/eselect-opengl-1.0.9 - )" -DEPEND="${COMMON}" -# Note: do not add !>nvidia-userspace-ver or !<nvidia-userspace-ver -# because it would cause pkg_postrm to set the wrong opengl implementation -RDEPEND="${COMMON} - X? ( x11-libs/libXvMC ) - acpi? ( sys-power/acpid ) - tools? ( media-video/nvidia-settings )" -PDEPEND="X? ( >=x11-libs/libvdpau-0.3-r1 )" - -REQUIRED_USE="tools? ( X )" -QA_PREBUILT="opt/* usr/lib*" -S="${WORKDIR}/" - -pkg_pretend() { - if use amd64 && has_multilib_profile && \ - [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default ABI" - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # Kernel features/options to check for - CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP" - use x86 && CONFIG_CHECK+=" ~HIGHMEM" - - # Now do the above checks - use kernel_linux && check_extra_config -} - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use kernel_linux; then - linux-mod_pkg_setup - MODULE_NAMES="nvidia(video:${S}/kernel)" - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \ - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC)" - # linux-mod_src_compile calls set_arch_to_kernel, which - # sets the ARCH to x86 but NVIDIA's wrapping Makefile - # expects x86_64 or i386 and then converts it to x86 - # later on in the build process - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')" - fi - - # Since Nvidia ships 3 different series of drivers, we need to give the user - # some kind of guidance as to what version they should install. This tries - # to point the user in the right direction but can't be perfect. check - # nvidia-driver.eclass - nvidia-driver-check-warning - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}" - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}" - NV_DOC="${S}/doc" - NV_OBJ="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}" - NV_OBJ="${S}" - NV_SRC="${S}/kernel" - NV_MAN="${S}" - NV_X11="${S}" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use kernel_FreeBSD; then - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - cat <<- EOF > "${S}"/nvidia.icd - /usr/$(get_libdir)/libnvidia-opencl.so - EOF - - # Allow user patches so they can support RC kernels and whatever else - epatch_user -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use kernel_FreeBSD; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi -} - -# Install nvidia library: -# the first parameter is the library to install -# the second parameter is the provided soversion -# the third parameter is the target directory if its not /usr/lib -donvidia() { - # Full path to library minus SOVER - MY_LIB="$1" - - # SOVER to use - MY_SOVER="$2" - - # Where to install - MY_DEST="$3" - - if [[ -z "${MY_DEST}" ]]; then - MY_DEST="/usr/$(get_libdir)" - action="dolib.so" - else - exeinto ${MY_DEST} - action="doexe" - fi - - # Get just the library name - libname=$(basename $1) - - # Install the library with the correct SOVER - ${action} ${MY_LIB}.${MY_SOVER} || \ - die "failed to install ${libname}" - - # If SOVER wasn't 1, then we need to create a .1 symlink - if [[ "${MY_SOVER}" != "1" ]]; then - dosym ${libname}.${MY_SOVER} \ - ${MY_DEST}/${libname}.1 || \ - die "failed to create ${libname} symlink" - fi - - # Always create the symlink from the raw lib to the .1 - dosym ${libname}.1 \ - ${MY_DEST}/${libname} || \ - die "failed to create ${libname} symlink" -} - -src_install() { - if use kernel_linux; then - # Add the aliases - # This file is tweaked with the appropriate video group in - # pkg_postinst, see bug #491414 - newins "${FILESDIR}"/nvidia-169.07 nvidia.conf - - # Ensures that our device nodes are created when not using X - exeinto "$(get_udevdir)" - doexe "${FILESDIR}"/nvidia-udev.sh - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules - - elif use kernel_FreeBSD; then - if use x86-fbsd; then - insinto /boot/modules - doins "${S}/src/nvidia.kld" || die - fi - - exeinto /boot/modules - doexe "${S}/src/nvidia.ko" || die - fi - - # NVIDIA kernel <-> userspace driver config lib - donvidia ${NV_OBJ}/libnvidia-cfg.so ${NV_SOVER} - - if use kernel_linux; then - # NVIDIA video decode <-> CUDA - donvidia ${NV_OBJ}/libnvcuvid.so ${NV_SOVER} - fi - - if use X; then - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11}/nvidia_drv.so || die "failed to install nvidia_drv.so" - - # Xorg GLX driver - donvidia ${NV_X11}/libglx.so ${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions - - # XvMC driver - dolib.a ${NV_X11}/libXvMCNVIDIA.a || \ - die "failed to install libXvMCNVIDIA.so" - donvidia ${NV_X11}/libXvMCNVIDIA.so ${NV_SOVER} - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA_dynamic.so.1 || \ - die "failed to create libXvMCNVIDIA_dynamic.so symlink" - fi - - # OpenCL ICD for NVIDIA - if use kernel_linux; then - insinto /etc/OpenCL/vendors - doins nvidia.icd - donvidia ${NV_OBJ}/libnvidia-opencl.so ${NV_SOVER} - fi - - # Documentation - dohtml ${NV_DOC}/html/* - if use kernel_FreeBSD; then - dodoc "${NV_DOC}/README" - use X && doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" - doman "${NV_MAN}/nvidia-smi.1.gz" - use X && doman "${NV_MAN}/nvidia-xconfig.1.gz" - doman "${NV_MAN}/nvidia-cuda-proxy-control.1.gz" - fi - - # Helper Apps - exeinto /opt/bin/ - if use X; then - doexe ${NV_OBJ}/nvidia-xconfig || die - fi - - if use kernel_linux ; then - doexe ${NV_OBJ}/nvidia-debugdump || die - doexe ${NV_OBJ}/nvidia-cuda-proxy-control || die - doexe ${NV_OBJ}/nvidia-cuda-proxy-server || die - doexe ${NV_OBJ}/nvidia-smi || die - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi - fi - - exeinto /usr/bin/ - doexe ${NV_OBJ}/nvidia-bug-report.sh || die - - if has_multilib_profile && use multilib ; then - local OABI=${ABI} - for ABI in $(get_install_abis) ; do - src_install-libs - done - ABI=${OABI} - unset OABI - else - src_install-libs - fi - - is_final_abi || die "failed to iterate through all ABIs" - - # GNOME3 gnome-terminal redraw bug workaround, - # see: https://bugzilla.gnome.org/show_bug.cgi?id=664858 - doenvd "${FILESDIR}/90mutter-disable-culling" -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib" - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia" - local libdir=${NV_OBJ} - - if use kernel_linux && has_multilib_profile && \ - [[ ${ABI} == "x86" ]] ; then - libdir=${NV_OBJ}/32 - fi - - if use X; then - # The GLX libraries - donvidia ${libdir}/libGL.so ${NV_SOVER} ${GL_ROOT} - donvidia ${libdir}/libnvidia-glcore.so ${NV_SOVER} - if use kernel_FreeBSD; then - donvidia ${libdir}/libnvidia-tls.so ${NV_SOVER} ${GL_ROOT} - else - donvidia ${libdir}/tls/libnvidia-tls.so ${NV_SOVER} ${GL_ROOT} - fi - - # VDPAU - donvidia ${libdir}/libvdpau_nvidia.so ${NV_SOVER} - fi - - # NVIDIA monitoring library - if use kernel_linux ; then - donvidia ${libdir}/libnvidia-ml.so ${NV_SOVER} - fi - - # CUDA & OpenCL - if use kernel_linux; then - donvidia ${libdir}/libcuda.so ${NV_SOVER} - donvidia ${libdir}/libnvidia-compiler.so ${NV_SOVER} - donvidia ${libdir}/libOpenCL.so 1.0.0 ${CL_ROOT} - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi - - local videogroup="$(egetent group video | cut -d ':' -f 3)" - if [ -n "${videogroup}" ]; then - sed -i -e "s:PACKAGE:${PF}:g" \ - -e "s:VIDEOGID:${videogroup}:" "${ROOT}"/etc/modprobe.d/nvidia.conf - else - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia - - elog "You must be in the video group to use the NVIDIA device" - elog "For more info, read the docs at" - elog "http://www.gentoo.org/doc/en/nvidia-guide.xml#doc_chap3_sect6" - elog - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "To use the NVIDIA CUDA/OpenCL, run \"eselect opencl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /opt/bin/nvidia-bug-report.sh included." - elog - if ! use X; then - elog "You have elected to not install the X.org driver. Along with" - elog "this the OpenGL libraries, XvMC, and VDPAU libraries were not" - elog "installed. Additionally, once the driver is loaded your card" - elog "and fan will run at max speed which may not be desirable." - elog "Use the 'nvidia-smi' init script to have your card and fan" - elog "speed scale appropriately." - elog - fi -} - -pkg_prerm() { - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} - -pkg_postrm() { - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-304.22.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-304.22.ebuild deleted file mode 100644 index 301d8462..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-304.22.ebuild +++ /dev/null @@ -1,453 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="2" - -inherit eutils unpacker multilib portability versionator flag-o-matic - -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI="x86? ( http://us.download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run ) - amd64? ( http://us.download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run ) - x86-fbsd? ( http://us.download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )" - -LICENSE="NVIDIA" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd" -IUSE="acpi multilib kernel_linux" -RESTRICT="strip" -EMULTILIB_PKG="true" - -COMMON="<x11-base/xorg-server-1.12.99 - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - multilib? ( app-emulation/emul-linux-x86-xlibs ) - >=app-admin/eselect-opengl-1.0.9 - app-admin/eselect-opencl - !<media-video/nvidia-settings-256.52" -DEPEND="${COMMON}" -RDEPEND="${COMMON} - x11-libs/libXvMC - !<x11-drivers/nvidia-userspace-${PV} - !>x11-drivers/nvidia-userspace-${PV} - acpi? ( sys-power/acpid )" -PDEPEND=">=x11-libs/libvdpau-0.3-r1" - -QA_TEXTRELS_x86=" - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/libnvcuvid.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_x86_fbsd="boot/modules/nvidia.ko - usr/lib/opengl/nvidia/lib/libGL.so.1 - usr/lib/libnvidia-glcore.so.1 - usr/lib/libvdpau_nvidia.so.1 - usr/lib/libnvidia-cfg.so.1 - usr/lib/opengl/nvidia/extensions/libglx.so.1 - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_amd64="usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_EXECSTACK_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib/libXvMCNVIDIA.a:NVXVMC.o - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libcuda.so.${PV} - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0" - -QA_EXECSTACK_amd64="usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.a:NVXVMC.o - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - opt/bin/nvidia-smi - opt/bin/nvidia-xconfig - opt/bin/nvidia-debugdump - opt/bin/nvidia-settings" - -QA_WX_LOAD_x86="usr/lib/libnvidia-glcore.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/libXvMCNVIDIA.a - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_WX_LOAD_amd64="usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV}" - -QA_SONAME_x86="usr/lib/libnvidia-compiler.so.${PV}" - -QA_SONAME_amd64="usr/lib64/libnvidia-compiler.so.${PV} - usr/lib32/libnvidia-compiler.so.${PV}" - -QA_DT_HASH_amd64="usr/lib32/libcuda.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libnvidia-glcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib32/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib32/libnvidia-compiler.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/libnvidia-glcore.so.${PV} - usr/lib64/libnvidia-ml.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/lib64/libvdpau_nvidia.so.${PV} - usr/lib64/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib64/libnvidia-compiler.so.${PV} - usr/lib64/libnvcuvid.so.${PV} - opt/bin/nvidia-smi - opt/bin/nvidia-xconfig - opt/bin/nvidia-debugdump - opt/bin/nvidia-settings" - -QA_DT_HASH_x86="usr/lib/libcuda.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libnvidia-glcore.so.${PV} - usr/lib/libnvidia-ml.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/OpenCL/vendors/nvidia/libOpenCL.so.1.0.0 - usr/lib/libnvidia-compiler.so.${PV} - usr/lib/libnvcuvid.so.${PV} - opt/bin/nvidia-smi - opt/bin/nvidia-xconfig - opt/bin/nvidia-debugdump - opt/bin/nvidia-settings" - - -S="${WORKDIR}/" - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use amd64 && has_multilib_profile && [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default abi." - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # On BSD userland it wants real make command - use userland_BSD && MAKE="$(get_bmake)" - - export _POSIX2_VERSION="199209" - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - NV_DOC="${S}/doc" - NV_EXEC="${S}/obj" - NV_LIB="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}" - NV_EXEC="${S}" - NV_LIB="${S}" - NV_SRC="${S}/kernel" - NV_MAN="${S}" - NV_X11="${S}" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use x86-fbsd; then - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - use x86-fbsd && cd doc - cat <<- EOF > "${S}"/nvidia.icd - /usr/$(get_libdir)/libcuda.so - EOF -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use x86-fbsd; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi -} - -src_install() { - if use kernel_linux; then - VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)" - if [ -z "$VIDEOGROUP" ]; then - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi - - # Add the aliases - [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR" - sed -e 's:PACKAGE:'${PF}':g' \ - -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \ - "${WORKDIR}"/nvidia - insinto /etc/modprobe.d - newins "${WORKDIR}"/nvidia nvidia.conf || die - - # Ensures that our device nodes are created when not using X - exeinto /lib/udev - doexe "${FILESDIR}"/nvidia-udev.sh - - insinto /lib/udev/rules.d - newins "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules - fi - - # NVIDIA kernel <-> userspace driver config lib - dolib.so ${NV_LIB}/libnvidia-cfg.so.${NV_SOVER} || \ - die "failed to install libnvidia-cfg" - dosym libnvidia-cfg.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-cfg.so.1 || \ - die "failed to create libnvidia-cfg.so symlink" - dosym libnvidia-cfg.so.1 \ - /usr/$(get_libdir)/libnvidia-cfg.so || \ - die "failed to create libnvidia-cfg.so symlink" - - # NVIDIA monitoring library - dolib.so ${NV_LIB}/libnvidia-ml.so.${NV_SOVER} || \ - die "failed to install libnvidia-ml" - dosym libnvidia-ml.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvidia-ml.so.1 || \ - die "failed to create libnvidia-ml.so symlink" - dosym libnvidia-ml.so.1 \ - /usr/$(get_libdir)/libnvidia-ml.so || \ - die "failed to create libnvidia-ml.so symlink" - - # NVIDIA video decode <-> CUDA - dolib.so ${NV_LIB}/libnvcuvid.so.${NV_SOVER} || \ - die "failed to install libnvcuvid.so" - dosym libnvcuvid.so.${NV_SOVER} \ - /usr/$(get_libdir)/libnvcuvid.so.1 || \ - die "failed to create libnvcuvid.so symlink" - dosym libnvcuvid.so.1 \ - /usr/$(get_libdir)/libnvcuvid.so || \ - die "failed to create libnvcuvid.so symlink" - - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11_DRV}/nvidia_drv.so || die "failed to install nvidia_drv.so" - - # Xorg GLX driver - insinto /usr/$(get_libdir)/opengl/nvidia/extensions - doins ${NV_X11_EXT}/libglx.so.${NV_SOVER} || \ - die "failed to install libglx.so" - dosym libglx.so.${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so || \ - die "failed to create libglx.so symlink" - - # XvMC driver - dolib.a ${NV_X11}/libXvMCNVIDIA.a || \ - die "failed to install libXvMCNVIDIA.so" - dolib.so ${NV_X11}/libXvMCNVIDIA.so.${NV_SOVER} || \ - die "failed to install libXvMCNVIDIA.so" - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA.so.1 || \ - die "failed to create libXvMCNVIDIA.so symlink" - dosym libXvMCNVIDIA.so.1 /usr/$(get_libdir)/libXvMCNVIDIA.so || \ - die "failed to create libXvMCNVIDIA.so symlink" - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA_dynamic.so.1 || \ - die "failed to create libXvMCNVIDIA_dynamic.so symlink" - - # OpenCL ICD for NVIDIA - if use kernel_linux; then - insinto /etc/OpenCL/vendors - doins nvidia.icd - fi - - # Documentation - dohtml ${NV_DOC}/html/* - if use x86-fbsd; then - dodoc "${NV_DOC}/README" - doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" - doman "${NV_MAN}/nvidia-smi.1.gz" - doman "${NV_MAN}/nvidia-xconfig.1.gz" - fi - - # Helper Apps - exeinto /opt/bin/ - doexe ${NV_EXEC}/nvidia-xconfig || die - doexe ${NV_EXEC}/nvidia-debugdump || die - doexe ${NV_EXEC}/nvidia-bug-report.sh || die - if use kernel_linux; then - doexe ${NV_EXEC}/nvidia-smi || die - fi - - 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 - - is_final_abi || die "failed to iterate through all ABIs" - - # GNOME3 gnome-terminal redraw bug workaround, - # see: https://bugzilla.gnome.org/show_bug.cgi?id=664858 - doenvd "${FILESDIR}/90mutter-disable-culling" -} - -# Install nvidia library: -# the first parameter is the place where to install it -# the second parameter is the base name of the library -# the third parameter is the provided soversion -donvidia() { - dodir $1 - exeinto $1 - - libname=$(basename $2) - - doexe $2.$3 || die "failed to install $2" - dosym ${libname}.$3 $1/${libname} || die "failed to symlink $2" - [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1 -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local NV_ROOT="/usr/${inslibdir}/opengl/nvidia" - local CL_ROOT=/usr/${inslibdir}/OpenCL/vendors/nvidia - local libdir= sover= - - if use kernel_linux; then - if has_multilib_profile && [[ ${ABI} == "x86" ]] ; then - libdir=32 - else - libdir=. - fi - sover=${PV} - else - libdir=obj - # on FreeBSD it has just .1 suffix - sover=1 - fi - - # The GLX libraries - donvidia ${NV_ROOT}/lib ${libdir}/libGL.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-glcore.so ${sover} - if use x86-fbsd; then - donvidia ${NV_ROOT}/lib ${libdir}/libnvidia-tls.so ${sover} - else - donvidia ${NV_ROOT}/lib ${libdir}/tls/libnvidia-tls.so ${sover} - fi - - # VDPAU - donvidia /usr/${inslibdir} ${libdir}/libvdpau_nvidia.so ${sover} - - # CUDA & OpenCL - if use kernel_linux; then - donvidia /usr/${inslibdir} ${libdir}/libcuda.so ${sover} - donvidia /usr/${inslibdir} ${libdir}/libnvidia-compiler.so ${sover} - donvidia ${CL_ROOT} ${libdir}/libOpenCL.so 1.0.0 - #dosym libOpenCL.so.1 ${CL_ROOT}/libOpenCL.so - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia - - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "To use the NVIDIA CUDA/OpenCL, run \"eselect opencl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /opt/bin/nvidia-bug-report.sh included." - elog - elog "To work with compiz, you must enable the AddARGBGLXVisuals option." - elog - elog "If you are having resolution problems, try disabling DynamicTwinView." - elog -} - -pkg_postrm() { - "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-304.37.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-304.37.ebuild deleted file mode 100644 index 636221f7..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-304.37.ebuild +++ /dev/null @@ -1,385 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI=4 - -inherit eutils flag-o-matic linux-info linux-mod multilib nvidia-driver \ - portability toolchain-funcs unpacker user versionator - -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI="x86? ( http://us.download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run ) - amd64? ( http://us.download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run ) - amd64-fbsd? ( http://us.download.nvidia.com/XFree86/FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz ) - x86-fbsd? ( http://us.download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )" - -LICENSE="NVIDIA" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~amd64-fbsd ~x86-fbsd" -IUSE="acpi multilib x-multilib kernel_FreeBSD kernel_linux tools +X" -RESTRICT="strip" -EMULTILIB_PKG="true" - -COMMON="app-admin/eselect-opencl - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - x-multilib? ( app-emulation/emul-linux-x86-xlibs ) - multilib? ( app-emulation/emul-linux-x86-baselibs ) - X? ( - <x11-base/xorg-server-1.12.99 - >=app-admin/eselect-opengl-1.0.9 - )" -DEPEND="${COMMON}" -RDEPEND="${COMMON} - X? ( x11-libs/libXvMC ) - !<x11-drivers/nvidia-userspace-${PV} - !>x11-drivers/nvidia-userspace-${PV} - acpi? ( sys-power/acpid ) - tools? ( media-video/nvidia-settings )" -PDEPEND="X? ( >=x11-libs/libvdpau-0.3-r1 )" - -REQUIRED_USE="tools? ( X )" -QA_PREBUILT="" -S="${WORKDIR}/" - -pkg_pretend() { - if use amd64 && has_multilib_profile && \ - [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default ABI" - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # Kernel features/options to check for - CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP" - use x86 && CONFIG_CHECK+=" ~HIGHMEM" - - # Now do the above checks - use kernel_linux && check_extra_config -} - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use kernel_linux; then - linux-mod_pkg_setup - MODULE_NAMES="nvidia(video:${S}/kernel)" - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \ - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC)" - # linux-mod_src_compile calls set_arch_to_kernel, which - # sets the ARCH to x86 but NVIDIA's wrapping Makefile - # expects x86_64 or i386 and then converts it to x86 - # later on in the build process - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')" - fi - - # Since Nvidia ships 3 different series of drivers, we need to give the user - # some kind of guidance as to what version they should install. This tries - # to point the user in the right direction but can't be perfect. check - # nvidia-driver.eclass - nvidia-driver-check-warning - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}" - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}" - NV_DOC="${S}/doc" - NV_OBJ="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}" - NV_OBJ="${S}" - NV_SRC="${S}/kernel" - NV_MAN="${S}" - NV_X11="${S}" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use kernel_FreeBSD; then - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - cat <<- EOF > "${S}"/nvidia.icd - /usr/$(get_libdir)/libcuda.so - EOF - - # Allow user patches so they can support RC kernels and whatever else - epatch_user -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use kernel_FreeBSD; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi -} - -# Install nvidia library: -# the first parameter is the library to install -# the second parameter is the provided soversion -# the third parameter is the target directory if its not /usr/lib -donvidia() { - # Full path to library minus SOVER - MY_LIB="$1" - - # SOVER to use - MY_SOVER="$2" - - # Where to install - MY_DEST="$3" - - if [[ -z "${MY_DEST}" ]]; then - MY_DEST="/usr/$(get_libdir)" - action="dolib.so" - else - exeinto ${MY_DEST} - action="doexe" - fi - - # Get just the library name - libname=$(basename $1) - - # Add it to QA_PREBUILT - QA_PREBUILT+=" ${MY_DEST}/${libname}.${MY_SOVER}" - - # Install the library with the correct SOVER - ${action} ${MY_LIB}.${MY_SOVER} || \ - die "failed to install ${libname}" - - # If SOVER wasn't 1, then we need to create a .1 symlink - if [[ "${MY_SOVER}" != "1" ]]; then - dosym ${libname}.${MY_SOVER} \ - ${MY_DEST}/${libname}.1 || \ - die "failed to create ${libname} symlink" - fi - - # Always create the symlink from the raw lib to the .1 - dosym ${libname}.1 \ - ${MY_DEST}/${libname} || \ - die "failed to create ${libname} symlink" -} - -src_install() { - if use kernel_linux; then - VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)" - if [ -z "$VIDEOGROUP" ]; then - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi - - # Add the aliases - [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR" - sed -e 's:PACKAGE:'${PF}':g' \ - -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \ - "${WORKDIR}"/nvidia - insinto /etc/modprobe.d - newins "${WORKDIR}"/nvidia nvidia.conf || die - - local udevdir=/lib/udev - has_version sys-fs/udev && udevdir="$($(tc-getPKG_CONFIG) --variable=udevdir udev)" - - # Ensures that our device nodes are created when not using X - exeinto "${udevdir}" - doexe "${FILESDIR}"/nvidia-udev.sh - - insinto "${udevdir}"/rules.d - newins "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules - elif use kernel_FreeBSD; then - if use x86-fbsd; then - insinto /boot/modules - doins "${S}/src/nvidia.kld" || die - fi - - exeinto /boot/modules - doexe "${S}/src/nvidia.ko" || die - fi - - # NVIDIA kernel <-> userspace driver config lib - donvidia ${NV_OBJ}/libnvidia-cfg.so ${NV_SOVER} - - if use kernel_linux; then - # NVIDIA video decode <-> CUDA - donvidia ${NV_OBJ}/libnvcuvid.so ${NV_SOVER} - fi - - if use X; then - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11}/nvidia_drv.so || die "failed to install nvidia_drv.so" - - # Xorg GLX driver - donvidia ${NV_X11}/libglx.so ${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions - - # XvMC driver - dolib.a ${NV_X11}/libXvMCNVIDIA.a || \ - die "failed to install libXvMCNVIDIA.so" - donvidia ${NV_X11}/libXvMCNVIDIA.so ${NV_SOVER} - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA_dynamic.so.1 || \ - die "failed to create libXvMCNVIDIA_dynamic.so symlink" - fi - - # OpenCL ICD for NVIDIA - if use kernel_linux; then - insinto /etc/OpenCL/vendors - doins nvidia.icd - fi - - # Documentation - dohtml ${NV_DOC}/html/* - if use kernel_FreeBSD; then - dodoc "${NV_DOC}/README" - use X && doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" - doman "${NV_MAN}/nvidia-smi.1.gz" - use X && doman "${NV_MAN}/nvidia-xconfig.1.gz" - doman "${NV_MAN}/nvidia-cuda-proxy-control.1.gz" - fi - - # Helper Apps - exeinto /opt/bin/ - if use X; then - doexe ${NV_OBJ}/nvidia-xconfig || die - fi - - if use kernel_linux ; then - doexe ${NV_OBJ}/nvidia-debugdump || die - doexe ${NV_OBJ}/nvidia-cuda-proxy-control || die - doexe ${NV_OBJ}/nvidia-cuda-proxy-server || die - doexe ${NV_OBJ}/nvidia-smi || die - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi - fi - - exeinto /usr/bin/ - doexe ${NV_OBJ}/nvidia-bug-report.sh || die - - if has_multilib_profile && use multilib ; then - local OABI=${ABI} - for ABI in $(get_install_abis) ; do - src_install-libs - done - ABI=${OABI} - unset OABI - else - src_install-libs - fi - - is_final_abi || die "failed to iterate through all ABIs" - - # GNOME3 gnome-terminal redraw bug workaround, - # see: https://bugzilla.gnome.org/show_bug.cgi?id=664858 - doenvd "${FILESDIR}/90mutter-disable-culling" -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib" - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia" - local libdir=${NV_OBJ} - - if use kernel_linux && has_multilib_profile && \ - [[ ${ABI} == "x86" ]] ; then - libdir=${NV_OBJ}/32 - fi - - if use X; then - # The GLX libraries - donvidia ${libdir}/libGL.so ${NV_SOVER} ${GL_ROOT} - donvidia ${libdir}/libnvidia-glcore.so ${NV_SOVER} - if use kernel_FreeBSD; then - donvidia ${libdir}/libnvidia-tls.so ${NV_SOVER} ${GL_ROOT} - else - donvidia ${libdir}/tls/libnvidia-tls.so ${NV_SOVER} ${GL_ROOT} - fi - - # VDPAU - donvidia ${libdir}/libvdpau_nvidia.so ${NV_SOVER} - fi - - # NVIDIA monitoring library - if use kernel_linux ; then - donvidia ${libdir}/libnvidia-ml.so ${NV_SOVER} - fi - - # CUDA & OpenCL - if use kernel_linux; then - donvidia ${libdir}/libcuda.so ${NV_SOVER} - donvidia ${libdir}/libnvidia-compiler.so ${NV_SOVER} - donvidia ${libdir}/libOpenCL.so 1.0.0 ${CL_ROOT} - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia - - elog "You must be in the video group to use the NVIDIA device" - elog "For more info, read the docs at" - elog "http://www.gentoo.org/doc/en/nvidia-guide.xml#doc_chap3_sect6" - elog - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "To use the NVIDIA CUDA/OpenCL, run \"eselect opencl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /opt/bin/nvidia-bug-report.sh included." - elog - if ! use X; then - elog "You have elected to not install the X.org driver. Along with" - elog "this the OpenGL libraries, XvMC, and VDPAU libraries were not" - elog "installed. Additionally, once the driver is loaded your card" - elog "and fan will run at max speed which may not be desirable." - elog "Use the 'nvidia-smi' init script to have your card and fan" - elog "speed scale appropriately." - elog - fi -} - -pkg_prerm() { - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} - -pkg_postrm() { - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-304.88.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-304.88.ebuild deleted file mode 100644 index eabac720..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-304.88.ebuild +++ /dev/null @@ -1,379 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI=4 - -inherit eutils flag-o-matic linux-info linux-mod multilib nvidia-driver \ - portability toolchain-funcs unpacker user versionator udev - -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI="x86? ( ftp://download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run ) - amd64? ( ftp://download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run ) - amd64-fbsd? ( ftp://download.nvidia.com/XFree86/FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz ) - x86-fbsd? ( ftp://download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )" - -LICENSE="NVIDIA" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~amd64-fbsd ~x86-fbsd" -IUSE="acpi multilib x-multilib kernel_FreeBSD kernel_linux tools +X" -RESTRICT="strip" -EMULTILIB_PKG="true" - -COMMON="app-admin/eselect-opencl - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - x-multilib? ( app-emulation/emul-linux-x86-xlibs ) - multilib? ( app-emulation/emul-linux-x86-baselibs ) - X? ( - <x11-base/xorg-server-1.14.99 - >=app-admin/eselect-opengl-1.0.9 - )" -DEPEND="${COMMON}" -RDEPEND="${COMMON} - X? ( x11-libs/libXvMC ) - !<x11-drivers/nvidia-userspace-${PV} - !>x11-drivers/nvidia-userspace-${PV} - acpi? ( sys-power/acpid ) - tools? ( media-video/nvidia-settings )" -PDEPEND="X? ( >=x11-libs/libvdpau-0.3-r1 )" - -REQUIRED_USE="tools? ( X )" -QA_PREBUILT="opt/* usr/lib*" -S="${WORKDIR}/" - -pkg_pretend() { - if use amd64 && has_multilib_profile && \ - [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default ABI" - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # Kernel features/options to check for - CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP" - use x86 && CONFIG_CHECK+=" ~HIGHMEM" - - # Now do the above checks - use kernel_linux && check_extra_config -} - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use kernel_linux; then - linux-mod_pkg_setup - MODULE_NAMES="nvidia(video:${S}/kernel)" - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \ - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC)" - # linux-mod_src_compile calls set_arch_to_kernel, which - # sets the ARCH to x86 but NVIDIA's wrapping Makefile - # expects x86_64 or i386 and then converts it to x86 - # later on in the build process - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')" - fi - - # Since Nvidia ships 3 different series of drivers, we need to give the user - # some kind of guidance as to what version they should install. This tries - # to point the user in the right direction but can't be perfect. check - # nvidia-driver.eclass - nvidia-driver-check-warning - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}" - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}" - NV_DOC="${S}/doc" - NV_OBJ="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}" - NV_OBJ="${S}" - NV_SRC="${S}/kernel" - NV_MAN="${S}" - NV_X11="${S}" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use kernel_FreeBSD; then - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - cat <<- EOF > "${S}"/nvidia.icd - /usr/$(get_libdir)/libnvidia-opencl.so - EOF - - # Allow user patches so they can support RC kernels and whatever else - epatch_user -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use kernel_FreeBSD; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi -} - -# Install nvidia library: -# the first parameter is the library to install -# the second parameter is the provided soversion -# the third parameter is the target directory if its not /usr/lib -donvidia() { - # Full path to library minus SOVER - MY_LIB="$1" - - # SOVER to use - MY_SOVER="$2" - - # Where to install - MY_DEST="$3" - - if [[ -z "${MY_DEST}" ]]; then - MY_DEST="/usr/$(get_libdir)" - action="dolib.so" - else - exeinto ${MY_DEST} - action="doexe" - fi - - # Get just the library name - libname=$(basename $1) - - # Install the library with the correct SOVER - ${action} ${MY_LIB}.${MY_SOVER} || \ - die "failed to install ${libname}" - - # If SOVER wasn't 1, then we need to create a .1 symlink - if [[ "${MY_SOVER}" != "1" ]]; then - dosym ${libname}.${MY_SOVER} \ - ${MY_DEST}/${libname}.1 || \ - die "failed to create ${libname} symlink" - fi - - # Always create the symlink from the raw lib to the .1 - dosym ${libname}.1 \ - ${MY_DEST}/${libname} || \ - die "failed to create ${libname} symlink" -} - -src_install() { - if use kernel_linux; then - VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)" - if [ -z "$VIDEOGROUP" ]; then - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi - - # Add the aliases - [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR" - sed -e 's:PACKAGE:'${PF}':g' \ - -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \ - "${WORKDIR}"/nvidia - insinto /etc/modprobe.d - newins "${WORKDIR}"/nvidia nvidia.conf || die - - # Ensures that our device nodes are created when not using X - exeinto "$(udev_get_udevdir)" - doexe "${FILESDIR}"/nvidia-udev.sh - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules - - elif use kernel_FreeBSD; then - if use x86-fbsd; then - insinto /boot/modules - doins "${S}/src/nvidia.kld" || die - fi - - exeinto /boot/modules - doexe "${S}/src/nvidia.ko" || die - fi - - # NVIDIA kernel <-> userspace driver config lib - donvidia ${NV_OBJ}/libnvidia-cfg.so ${NV_SOVER} - - if use kernel_linux; then - # NVIDIA video decode <-> CUDA - donvidia ${NV_OBJ}/libnvcuvid.so ${NV_SOVER} - fi - - if use X; then - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11}/nvidia_drv.so || die "failed to install nvidia_drv.so" - - # Xorg GLX driver - donvidia ${NV_X11}/libglx.so ${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions - - # XvMC driver - dolib.a ${NV_X11}/libXvMCNVIDIA.a || \ - die "failed to install libXvMCNVIDIA.so" - donvidia ${NV_X11}/libXvMCNVIDIA.so ${NV_SOVER} - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA_dynamic.so.1 || \ - die "failed to create libXvMCNVIDIA_dynamic.so symlink" - fi - - # OpenCL ICD for NVIDIA - if use kernel_linux; then - insinto /etc/OpenCL/vendors - doins nvidia.icd - donvidia ${NV_OBJ}/libnvidia-opencl.so ${NV_SOVER} - fi - - # Documentation - dohtml ${NV_DOC}/html/* - if use kernel_FreeBSD; then - dodoc "${NV_DOC}/README" - use X && doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" - doman "${NV_MAN}/nvidia-smi.1.gz" - use X && doman "${NV_MAN}/nvidia-xconfig.1.gz" - doman "${NV_MAN}/nvidia-cuda-proxy-control.1.gz" - fi - - # Helper Apps - exeinto /opt/bin/ - if use X; then - doexe ${NV_OBJ}/nvidia-xconfig || die - fi - - if use kernel_linux ; then - doexe ${NV_OBJ}/nvidia-debugdump || die - doexe ${NV_OBJ}/nvidia-cuda-proxy-control || die - doexe ${NV_OBJ}/nvidia-cuda-proxy-server || die - doexe ${NV_OBJ}/nvidia-smi || die - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi - fi - - exeinto /usr/bin/ - doexe ${NV_OBJ}/nvidia-bug-report.sh || die - - if has_multilib_profile && use multilib ; then - local OABI=${ABI} - for ABI in $(get_install_abis) ; do - src_install-libs - done - ABI=${OABI} - unset OABI - else - src_install-libs - fi - - is_final_abi || die "failed to iterate through all ABIs" - - # GNOME3 gnome-terminal redraw bug workaround, - # see: https://bugzilla.gnome.org/show_bug.cgi?id=664858 - doenvd "${FILESDIR}/90mutter-disable-culling" -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib" - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia" - local libdir=${NV_OBJ} - - if use kernel_linux && has_multilib_profile && \ - [[ ${ABI} == "x86" ]] ; then - libdir=${NV_OBJ}/32 - fi - - if use X; then - # The GLX libraries - donvidia ${libdir}/libGL.so ${NV_SOVER} ${GL_ROOT} - donvidia ${libdir}/libnvidia-glcore.so ${NV_SOVER} - if use kernel_FreeBSD; then - donvidia ${libdir}/libnvidia-tls.so ${NV_SOVER} ${GL_ROOT} - else - donvidia ${libdir}/tls/libnvidia-tls.so ${NV_SOVER} ${GL_ROOT} - fi - - # VDPAU - donvidia ${libdir}/libvdpau_nvidia.so ${NV_SOVER} - fi - - # NVIDIA monitoring library - if use kernel_linux ; then - donvidia ${libdir}/libnvidia-ml.so ${NV_SOVER} - fi - - # CUDA & OpenCL - if use kernel_linux; then - donvidia ${libdir}/libcuda.so ${NV_SOVER} - donvidia ${libdir}/libnvidia-compiler.so ${NV_SOVER} - donvidia ${libdir}/libOpenCL.so 1.0.0 ${CL_ROOT} - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia - - elog "You must be in the video group to use the NVIDIA device" - elog "For more info, read the docs at" - elog "http://www.gentoo.org/doc/en/nvidia-guide.xml#doc_chap3_sect6" - elog - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "To use the NVIDIA CUDA/OpenCL, run \"eselect opencl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /opt/bin/nvidia-bug-report.sh included." - elog - if ! use X; then - elog "You have elected to not install the X.org driver. Along with" - elog "this the OpenGL libraries, XvMC, and VDPAU libraries were not" - elog "installed. Additionally, once the driver is loaded your card" - elog "and fan will run at max speed which may not be desirable." - elog "Use the 'nvidia-smi' init script to have your card and fan" - elog "speed scale appropriately." - elog - fi -} - -pkg_prerm() { - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} - -pkg_postrm() { - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-310.19.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-310.19.ebuild deleted file mode 100644 index 636221f7..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-310.19.ebuild +++ /dev/null @@ -1,385 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI=4 - -inherit eutils flag-o-matic linux-info linux-mod multilib nvidia-driver \ - portability toolchain-funcs unpacker user versionator - -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI="x86? ( http://us.download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run ) - amd64? ( http://us.download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run ) - amd64-fbsd? ( http://us.download.nvidia.com/XFree86/FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz ) - x86-fbsd? ( http://us.download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )" - -LICENSE="NVIDIA" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~amd64-fbsd ~x86-fbsd" -IUSE="acpi multilib x-multilib kernel_FreeBSD kernel_linux tools +X" -RESTRICT="strip" -EMULTILIB_PKG="true" - -COMMON="app-admin/eselect-opencl - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - x-multilib? ( app-emulation/emul-linux-x86-xlibs ) - multilib? ( app-emulation/emul-linux-x86-baselibs ) - X? ( - <x11-base/xorg-server-1.12.99 - >=app-admin/eselect-opengl-1.0.9 - )" -DEPEND="${COMMON}" -RDEPEND="${COMMON} - X? ( x11-libs/libXvMC ) - !<x11-drivers/nvidia-userspace-${PV} - !>x11-drivers/nvidia-userspace-${PV} - acpi? ( sys-power/acpid ) - tools? ( media-video/nvidia-settings )" -PDEPEND="X? ( >=x11-libs/libvdpau-0.3-r1 )" - -REQUIRED_USE="tools? ( X )" -QA_PREBUILT="" -S="${WORKDIR}/" - -pkg_pretend() { - if use amd64 && has_multilib_profile && \ - [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default ABI" - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # Kernel features/options to check for - CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP" - use x86 && CONFIG_CHECK+=" ~HIGHMEM" - - # Now do the above checks - use kernel_linux && check_extra_config -} - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use kernel_linux; then - linux-mod_pkg_setup - MODULE_NAMES="nvidia(video:${S}/kernel)" - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \ - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC)" - # linux-mod_src_compile calls set_arch_to_kernel, which - # sets the ARCH to x86 but NVIDIA's wrapping Makefile - # expects x86_64 or i386 and then converts it to x86 - # later on in the build process - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')" - fi - - # Since Nvidia ships 3 different series of drivers, we need to give the user - # some kind of guidance as to what version they should install. This tries - # to point the user in the right direction but can't be perfect. check - # nvidia-driver.eclass - nvidia-driver-check-warning - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}" - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}" - NV_DOC="${S}/doc" - NV_OBJ="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}" - NV_OBJ="${S}" - NV_SRC="${S}/kernel" - NV_MAN="${S}" - NV_X11="${S}" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use kernel_FreeBSD; then - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - cat <<- EOF > "${S}"/nvidia.icd - /usr/$(get_libdir)/libcuda.so - EOF - - # Allow user patches so they can support RC kernels and whatever else - epatch_user -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use kernel_FreeBSD; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi -} - -# Install nvidia library: -# the first parameter is the library to install -# the second parameter is the provided soversion -# the third parameter is the target directory if its not /usr/lib -donvidia() { - # Full path to library minus SOVER - MY_LIB="$1" - - # SOVER to use - MY_SOVER="$2" - - # Where to install - MY_DEST="$3" - - if [[ -z "${MY_DEST}" ]]; then - MY_DEST="/usr/$(get_libdir)" - action="dolib.so" - else - exeinto ${MY_DEST} - action="doexe" - fi - - # Get just the library name - libname=$(basename $1) - - # Add it to QA_PREBUILT - QA_PREBUILT+=" ${MY_DEST}/${libname}.${MY_SOVER}" - - # Install the library with the correct SOVER - ${action} ${MY_LIB}.${MY_SOVER} || \ - die "failed to install ${libname}" - - # If SOVER wasn't 1, then we need to create a .1 symlink - if [[ "${MY_SOVER}" != "1" ]]; then - dosym ${libname}.${MY_SOVER} \ - ${MY_DEST}/${libname}.1 || \ - die "failed to create ${libname} symlink" - fi - - # Always create the symlink from the raw lib to the .1 - dosym ${libname}.1 \ - ${MY_DEST}/${libname} || \ - die "failed to create ${libname} symlink" -} - -src_install() { - if use kernel_linux; then - VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)" - if [ -z "$VIDEOGROUP" ]; then - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi - - # Add the aliases - [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR" - sed -e 's:PACKAGE:'${PF}':g' \ - -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \ - "${WORKDIR}"/nvidia - insinto /etc/modprobe.d - newins "${WORKDIR}"/nvidia nvidia.conf || die - - local udevdir=/lib/udev - has_version sys-fs/udev && udevdir="$($(tc-getPKG_CONFIG) --variable=udevdir udev)" - - # Ensures that our device nodes are created when not using X - exeinto "${udevdir}" - doexe "${FILESDIR}"/nvidia-udev.sh - - insinto "${udevdir}"/rules.d - newins "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules - elif use kernel_FreeBSD; then - if use x86-fbsd; then - insinto /boot/modules - doins "${S}/src/nvidia.kld" || die - fi - - exeinto /boot/modules - doexe "${S}/src/nvidia.ko" || die - fi - - # NVIDIA kernel <-> userspace driver config lib - donvidia ${NV_OBJ}/libnvidia-cfg.so ${NV_SOVER} - - if use kernel_linux; then - # NVIDIA video decode <-> CUDA - donvidia ${NV_OBJ}/libnvcuvid.so ${NV_SOVER} - fi - - if use X; then - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11}/nvidia_drv.so || die "failed to install nvidia_drv.so" - - # Xorg GLX driver - donvidia ${NV_X11}/libglx.so ${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions - - # XvMC driver - dolib.a ${NV_X11}/libXvMCNVIDIA.a || \ - die "failed to install libXvMCNVIDIA.so" - donvidia ${NV_X11}/libXvMCNVIDIA.so ${NV_SOVER} - dosym libXvMCNVIDIA.so.${NV_SOVER} \ - /usr/$(get_libdir)/libXvMCNVIDIA_dynamic.so.1 || \ - die "failed to create libXvMCNVIDIA_dynamic.so symlink" - fi - - # OpenCL ICD for NVIDIA - if use kernel_linux; then - insinto /etc/OpenCL/vendors - doins nvidia.icd - fi - - # Documentation - dohtml ${NV_DOC}/html/* - if use kernel_FreeBSD; then - dodoc "${NV_DOC}/README" - use X && doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" - doman "${NV_MAN}/nvidia-smi.1.gz" - use X && doman "${NV_MAN}/nvidia-xconfig.1.gz" - doman "${NV_MAN}/nvidia-cuda-proxy-control.1.gz" - fi - - # Helper Apps - exeinto /opt/bin/ - if use X; then - doexe ${NV_OBJ}/nvidia-xconfig || die - fi - - if use kernel_linux ; then - doexe ${NV_OBJ}/nvidia-debugdump || die - doexe ${NV_OBJ}/nvidia-cuda-proxy-control || die - doexe ${NV_OBJ}/nvidia-cuda-proxy-server || die - doexe ${NV_OBJ}/nvidia-smi || die - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi - fi - - exeinto /usr/bin/ - doexe ${NV_OBJ}/nvidia-bug-report.sh || die - - if has_multilib_profile && use multilib ; then - local OABI=${ABI} - for ABI in $(get_install_abis) ; do - src_install-libs - done - ABI=${OABI} - unset OABI - else - src_install-libs - fi - - is_final_abi || die "failed to iterate through all ABIs" - - # GNOME3 gnome-terminal redraw bug workaround, - # see: https://bugzilla.gnome.org/show_bug.cgi?id=664858 - doenvd "${FILESDIR}/90mutter-disable-culling" -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib" - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia" - local libdir=${NV_OBJ} - - if use kernel_linux && has_multilib_profile && \ - [[ ${ABI} == "x86" ]] ; then - libdir=${NV_OBJ}/32 - fi - - if use X; then - # The GLX libraries - donvidia ${libdir}/libGL.so ${NV_SOVER} ${GL_ROOT} - donvidia ${libdir}/libnvidia-glcore.so ${NV_SOVER} - if use kernel_FreeBSD; then - donvidia ${libdir}/libnvidia-tls.so ${NV_SOVER} ${GL_ROOT} - else - donvidia ${libdir}/tls/libnvidia-tls.so ${NV_SOVER} ${GL_ROOT} - fi - - # VDPAU - donvidia ${libdir}/libvdpau_nvidia.so ${NV_SOVER} - fi - - # NVIDIA monitoring library - if use kernel_linux ; then - donvidia ${libdir}/libnvidia-ml.so ${NV_SOVER} - fi - - # CUDA & OpenCL - if use kernel_linux; then - donvidia ${libdir}/libcuda.so ${NV_SOVER} - donvidia ${libdir}/libnvidia-compiler.so ${NV_SOVER} - donvidia ${libdir}/libOpenCL.so 1.0.0 ${CL_ROOT} - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia - - elog "You must be in the video group to use the NVIDIA device" - elog "For more info, read the docs at" - elog "http://www.gentoo.org/doc/en/nvidia-guide.xml#doc_chap3_sect6" - elog - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "To use the NVIDIA CUDA/OpenCL, run \"eselect opencl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /opt/bin/nvidia-bug-report.sh included." - elog - if ! use X; then - elog "You have elected to not install the X.org driver. Along with" - elog "this the OpenGL libraries, XvMC, and VDPAU libraries were not" - elog "installed. Additionally, once the driver is loaded your card" - elog "and fan will run at max speed which may not be desirable." - elog "Use the 'nvidia-smi' init script to have your card and fan" - elog "speed scale appropriately." - elog - fi -} - -pkg_prerm() { - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} - -pkg_postrm() { - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-313.30.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-313.30.ebuild deleted file mode 100644 index 97a23ea4..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-313.30.ebuild +++ /dev/null @@ -1,368 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI=5 - -inherit eutils flag-o-matic linux-info linux-mod multilib nvidia-driver \ - portability toolchain-funcs unpacker user udev - -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI="x86? ( ftp://download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run ) - amd64? ( ftp://download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run ) - amd64-fbsd? ( ftp://download.nvidia.com/XFree86/FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz ) - x86-fbsd? ( ftp://download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )" - -LICENSE="NVIDIA" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~amd64-fbsd ~x86-fbsd" -IUSE="acpi multilib x-multilib kernel_FreeBSD kernel_linux tools +X" -RESTRICT="strip" -EMULTILIB_PKG="true" - -COMMON="app-admin/eselect-opencl - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - x-multilib? ( app-emulation/emul-linux-x86-xlibs ) - multilib? ( app-emulation/emul-linux-x86-baselibs ) - X? ( - <x11-base/xorg-server-1.14.99 - >=app-admin/eselect-opengl-1.0.9 - )" -DEPEND="${COMMON}" -RDEPEND="${COMMON} - X? ( x11-libs/libXvMC ) - !<x11-drivers/nvidia-userspace-${PV} - !>x11-drivers/nvidia-userspace-${PV} - acpi? ( sys-power/acpid ) - tools? ( media-video/nvidia-settings )" -PDEPEND="X? ( >=x11-libs/libvdpau-0.3-r1 )" - -REQUIRED_USE="tools? ( X )" -QA_PREBUILT="opt/* usr/lib*" -S="${WORKDIR}/" - -pkg_pretend() { - if use amd64 && has_multilib_profile && \ - [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default ABI" - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # Kernel features/options to check for - CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP" - use x86 && CONFIG_CHECK+=" ~HIGHMEM" - - # Now do the above checks - use kernel_linux && check_extra_config -} - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use kernel_linux; then - linux-mod_pkg_setup - MODULE_NAMES="nvidia(video:${S}/kernel)" - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \ - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC)" - # linux-mod_src_compile calls set_arch_to_kernel, which - # sets the ARCH to x86 but NVIDIA's wrapping Makefile - # expects x86_64 or i386 and then converts it to x86 - # later on in the build process - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')" - fi - - # Since Nvidia ships 3 different series of drivers, we need to give the user - # some kind of guidance as to what version they should install. This tries - # to point the user in the right direction but can't be perfect. check - # nvidia-driver.eclass - nvidia-driver-check-warning - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}" - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}" - NV_DOC="${S}/doc" - NV_OBJ="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}" - NV_OBJ="${S}" - NV_SRC="${S}/kernel" - NV_MAN="${S}" - NV_X11="${S}" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use kernel_FreeBSD; then - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - - # Allow user patches so they can support RC kernels and whatever else - epatch_user -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use kernel_FreeBSD; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi -} - -# Install nvidia library: -# the first parameter is the library to install -# the second parameter is the provided soversion -# the third parameter is the target directory if its not /usr/lib -donvidia() { - # Full path to library minus SOVER - MY_LIB="$1" - - # SOVER to use - MY_SOVER="$2" - - # Where to install - MY_DEST="$3" - - if [[ -z "${MY_DEST}" ]]; then - MY_DEST="/usr/$(get_libdir)" - action="dolib.so" - else - exeinto ${MY_DEST} - action="doexe" - fi - - # Get just the library name - libname=$(basename $1) - - # Install the library with the correct SOVER - ${action} ${MY_LIB}.${MY_SOVER} || \ - die "failed to install ${libname}" - - # If SOVER wasn't 1, then we need to create a .1 symlink - if [[ "${MY_SOVER}" != "1" ]]; then - dosym ${libname}.${MY_SOVER} \ - ${MY_DEST}/${libname}.1 || \ - die "failed to create ${libname} symlink" - fi - - # Always create the symlink from the raw lib to the .1 - dosym ${libname}.1 \ - ${MY_DEST}/${libname} || \ - die "failed to create ${libname} symlink" -} - -src_install() { - if use kernel_linux; then - VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)" - if [ -z "$VIDEOGROUP" ]; then - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi - - # Add the aliases - [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR" - sed -e 's:PACKAGE:'${PF}':g' \ - -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \ - "${WORKDIR}"/nvidia - insinto /etc/modprobe.d - newins "${WORKDIR}"/nvidia nvidia.conf || die - - # Ensures that our device nodes are created when not using X - exeinto "$(udev_get_udevdir)" - doexe "${FILESDIR}"/nvidia-udev.sh - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules - elif use kernel_FreeBSD; then - if use x86-fbsd; then - insinto /boot/modules - doins "${S}/src/nvidia.kld" || die - fi - - exeinto /boot/modules - doexe "${S}/src/nvidia.ko" || die - fi - - # NVIDIA kernel <-> userspace driver config lib - donvidia ${NV_OBJ}/libnvidia-cfg.so ${NV_SOVER} - - # NVIDIA video encode/decode <-> CUDA - if use kernel_linux; then - donvidia ${NV_OBJ}/libnvcuvid.so ${NV_SOVER} - donvidia ${NV_OBJ}/libnvidia-encode.so ${NV_SOVER} - fi - - if use X; then - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11}/nvidia_drv.so || die "failed to install nvidia_drv.so" - - # Xorg GLX driver - donvidia ${NV_X11}/libglx.so ${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions - fi - - # OpenCL ICD for NVIDIA - if use kernel_linux; then - insinto /etc/OpenCL/vendors - doins ${NV_OBJ}/nvidia.icd - fi - - # Documentation - dohtml ${NV_DOC}/html/* - if use kernel_FreeBSD; then - dodoc "${NV_DOC}/README" - use X && doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" - doman "${NV_MAN}/nvidia-smi.1.gz" - use X && doman "${NV_MAN}/nvidia-xconfig.1.gz" - doman "${NV_MAN}/nvidia-cuda-proxy-control.1.gz" - fi - - # Helper Apps - exeinto /opt/bin/ - if use X; then - doexe ${NV_OBJ}/nvidia-xconfig || die - fi - - if use kernel_linux ; then - doexe ${NV_OBJ}/nvidia-debugdump || die - doexe ${NV_OBJ}/nvidia-cuda-proxy-control || die - doexe ${NV_OBJ}/nvidia-cuda-proxy-server || die - doexe ${NV_OBJ}/nvidia-smi || die - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi - fi - - exeinto /usr/bin/ - doexe ${NV_OBJ}/nvidia-bug-report.sh || die - - if has_multilib_profile && use multilib ; then - local OABI=${ABI} - for ABI in $(get_install_abis) ; do - src_install-libs - done - ABI=${OABI} - unset OABI - else - src_install-libs - fi - - is_final_abi || die "failed to iterate through all ABIs" - - # GNOME3 gnome-terminal redraw bug workaround, - # see: https://bugzilla.gnome.org/show_bug.cgi?id=664858 - doenvd "${FILESDIR}/90mutter-disable-culling" -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib" - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia" - local libdir=${NV_OBJ} - - if use kernel_linux && has_multilib_profile && \ - [[ ${ABI} == "x86" ]] ; then - libdir=${NV_OBJ}/32 - fi - - if use X; then - # The GLX libraries - donvidia ${libdir}/libGL.so ${NV_SOVER} ${GL_ROOT} - donvidia ${libdir}/libnvidia-glcore.so ${NV_SOVER} - if use kernel_FreeBSD; then - donvidia ${libdir}/libnvidia-tls.so ${NV_SOVER} - else - donvidia ${libdir}/tls/libnvidia-tls.so ${NV_SOVER} - fi - - # VDPAU - donvidia ${libdir}/libvdpau_nvidia.so ${NV_SOVER} - fi - - # NVIDIA monitoring library - if use kernel_linux ; then - donvidia ${libdir}/libnvidia-ml.so ${NV_SOVER} - fi - - # CUDA & OpenCL - if use kernel_linux; then - donvidia ${libdir}/libcuda.so ${NV_SOVER} - donvidia ${libdir}/libnvidia-compiler.so ${NV_SOVER} - donvidia ${libdir}/libOpenCL.so 1.0.0 ${CL_ROOT} - donvidia ${libdir}/libnvidia-opencl.so ${NV_SOVER} - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia - - elog "You must be in the video group to use the NVIDIA device" - elog "For more info, read the docs at" - elog "http://www.gentoo.org/doc/en/nvidia-guide.xml#doc_chap3_sect6" - elog - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "To use the NVIDIA CUDA/OpenCL, run \"eselect opencl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /opt/bin/nvidia-bug-report.sh included." - elog - if ! use X; then - elog "You have elected to not install the X.org driver. Along with" - elog "this the OpenGL libraries and VDPAU libraries were not" - elog "installed. Additionally, once the driver is loaded your card" - elog "and fan will run at max speed which may not be desirable." - elog "Use the 'nvidia-smi' init script to have your card and fan" - elog "speed scale appropriately." - elog - fi -} - -pkg_prerm() { - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} - -pkg_postrm() { - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-325.15.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-325.15.ebuild deleted file mode 100644 index 05413f29..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-325.15.ebuild +++ /dev/null @@ -1,372 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI=5 - -inherit eutils flag-o-matic linux-info linux-mod multilib nvidia-driver \ - portability toolchain-funcs unpacker user udev - -NV_URI="http://us.download.nvidia.com/XFree86/" -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI=" - amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz ) - amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run ) - x86-fbsd? ( ${NV_URI}FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz ) - x86? ( ${NV_URI}Linux-x86/${PV}/${X86_NV_PACKAGE}.run ) -" - -LICENSE="GPL-2 NVIDIA-r1" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~amd64-fbsd ~x86-fbsd" -IUSE="acpi multilib x-multilib kernel_FreeBSD kernel_linux tools +X" -RESTRICT="bindist mirror strip" -EMULTILIB_PKG="true" - -COMMON="app-admin/eselect-opencl - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - x-multilib? ( app-emulation/emul-linux-x86-xlibs ) - multilib? ( app-emulation/emul-linux-x86-baselibs ) - X? ( - >=app-admin/eselect-opengl-1.0.9 - )" -DEPEND="${COMMON}" -RDEPEND="${COMMON} - X? ( x11-libs/libXvMC ) - !<x11-drivers/nvidia-userspace-${PV} - !>x11-drivers/nvidia-userspace-${PV} - acpi? ( sys-power/acpid ) - tools? ( media-video/nvidia-settings )" -PDEPEND="X? ( - <x11-base/xorg-server-1.14.99 - >=x11-libs/libvdpau-0.3-r1 - )" - -REQUIRED_USE="tools? ( X )" -QA_PREBUILT="opt/* usr/lib*" -S="${WORKDIR}/" - -pkg_pretend() { - if use amd64 && has_multilib_profile && \ - [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default ABI" - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # Kernel features/options to check for - CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP" - use x86 && CONFIG_CHECK+=" ~HIGHMEM" - - # Now do the above checks - use kernel_linux && check_extra_config -} - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use kernel_linux; then - linux-mod_pkg_setup - MODULE_NAMES="nvidia(video:${S}/kernel)" - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \ - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC)" - # linux-mod_src_compile calls set_arch_to_kernel, which - # sets the ARCH to x86 but NVIDIA's wrapping Makefile - # expects x86_64 or i386 and then converts it to x86 - # later on in the build process - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')" - fi - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}" - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}" - NV_DOC="${S}/doc" - NV_OBJ="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}" - NV_OBJ="${S}" - NV_SRC="${S}/kernel" - NV_MAN="${S}" - NV_X11="${S}" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use kernel_FreeBSD; then - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - - # Allow user patches so they can support RC kernels and whatever else - epatch_user -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use kernel_FreeBSD; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi -} - -# Install nvidia library: -# the first parameter is the library to install -# the second parameter is the provided soversion -# the third parameter is the target directory if its not /usr/lib -donvidia() { - # Full path to library minus SOVER - MY_LIB="$1" - - # SOVER to use - MY_SOVER="$2" - - # Where to install - MY_DEST="$3" - - if [[ -z "${MY_DEST}" ]]; then - MY_DEST="/usr/$(get_libdir)" - action="dolib.so" - else - exeinto ${MY_DEST} - action="doexe" - fi - - # Get just the library name - libname=$(basename $1) - - # Install the library with the correct SOVER - ${action} ${MY_LIB}.${MY_SOVER} || \ - die "failed to install ${libname}" - - # If SOVER wasn't 1, then we need to create a .1 symlink - if [[ "${MY_SOVER}" != "1" ]]; then - dosym ${libname}.${MY_SOVER} \ - ${MY_DEST}/${libname}.1 || \ - die "failed to create ${libname} symlink" - fi - - # Always create the symlink from the raw lib to the .1 - dosym ${libname}.1 \ - ${MY_DEST}/${libname} || \ - die "failed to create ${libname} symlink" -} - -src_install() { - if use kernel_linux; then - VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)" - if [ -z "$VIDEOGROUP" ]; then - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi - - # Add the aliases - [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR" - sed -e 's:PACKAGE:'${PF}':g' \ - -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \ - "${WORKDIR}"/nvidia - insinto /etc/modprobe.d - newins "${WORKDIR}"/nvidia nvidia.conf - - # Ensures that our device nodes are created when not using X - exeinto "$(udev_get_udevdir)" - doexe "${FILESDIR}"/nvidia-udev.sh - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules - elif use kernel_FreeBSD; then - if use x86-fbsd; then - insinto /boot/modules - doins "${S}/src/nvidia.kld" - fi - - exeinto /boot/modules - doexe "${S}/src/nvidia.ko" - fi - - # NVIDIA kernel <-> userspace driver config lib - donvidia ${NV_OBJ}/libnvidia-cfg.so ${NV_SOVER} - - # NVIDIA video encode/decode <-> CUDA - if use kernel_linux; then - donvidia ${NV_OBJ}/libnvcuvid.so ${NV_SOVER} - donvidia ${NV_OBJ}/libnvidia-encode.so ${NV_SOVER} - fi - - if use X; then - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11}/nvidia_drv.so - - # Xorg GLX driver - donvidia ${NV_X11}/libglx.so ${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions - fi - - # OpenCL ICD for NVIDIA - if use kernel_linux; then - insinto /etc/OpenCL/vendors - doins ${NV_OBJ}/nvidia.icd - fi - - # Documentation - dohtml ${NV_DOC}/html/* - if use kernel_FreeBSD; then - dodoc "${NV_DOC}/README" - use X && doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" - doman "${NV_MAN}/nvidia-smi.1.gz" - doman "${NV_MAN}/nvidia-cuda-mps-control.1.gz" - use X && doman "${NV_MAN}/nvidia-xconfig.1.gz" - fi - - # Helper Apps - exeinto /opt/bin/ - if use X; then - doexe ${NV_OBJ}/nvidia-xconfig - fi - - if use kernel_linux ; then - doexe ${NV_OBJ}/nvidia-cuda-mps-control - doexe ${NV_OBJ}/nvidia-cuda-mps-server - doexe ${NV_OBJ}/nvidia-debugdump - doexe ${NV_OBJ}/nvidia-modprobe - doexe ${NV_OBJ}/nvidia-persistenced - doexe ${NV_OBJ}/nvidia-smi - doman nvidia-cuda-mps-control.1.gz - doman nvidia-modprobe.1.gz - doman nvidia-persistenced.1.gz - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi - fi - - exeinto /usr/bin/ - doexe ${NV_OBJ}/nvidia-bug-report.sh - - if has_multilib_profile && use multilib ; then - local OABI=${ABI} - for ABI in $(get_install_abis) ; do - src_install-libs - done - ABI=${OABI} - unset OABI - else - src_install-libs - fi - - is_final_abi || die "failed to iterate through all ABIs" - - # GNOME3 gnome-terminal redraw bug workaround, - # see: https://bugzilla.gnome.org/show_bug.cgi?id=664858 - doenvd "${FILESDIR}/90mutter-disable-culling" -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib" - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia" - local libdir=${NV_OBJ} - - if use kernel_linux && has_multilib_profile && \ - [[ ${ABI} == "x86" ]] ; then - libdir=${NV_OBJ}/32 - fi - - if use X; then - # The GLX libraries - donvidia ${libdir}/libGL.so ${NV_SOVER} ${GL_ROOT} - donvidia ${libdir}/libnvidia-glcore.so ${NV_SOVER} - if use kernel_FreeBSD; then - donvidia ${libdir}/libnvidia-tls.so ${NV_SOVER} - else - donvidia ${libdir}/tls/libnvidia-tls.so ${NV_SOVER} - fi - - # VDPAU - donvidia ${libdir}/libvdpau_nvidia.so ${NV_SOVER} - fi - - # NVIDIA monitoring library - if use kernel_linux ; then - donvidia ${libdir}/libnvidia-ml.so ${NV_SOVER} - fi - - # CUDA & OpenCL - if use kernel_linux; then - donvidia ${libdir}/libcuda.so ${NV_SOVER} - donvidia ${libdir}/libnvidia-compiler.so ${NV_SOVER} - donvidia ${libdir}/libOpenCL.so 1.0.0 ${CL_ROOT} - donvidia ${libdir}/libnvidia-opencl.so ${NV_SOVER} - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia - - elog "You must be in the video group to use the NVIDIA device" - elog "For more info, read the docs at" - elog "http://www.gentoo.org/doc/en/nvidia-guide.xml#doc_chap3_sect6" - elog - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "To use the NVIDIA CUDA/OpenCL, run \"eselect opencl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /opt/bin/nvidia-bug-report.sh included." - elog - if ! use X; then - elog "You have elected to not install the X.org driver. Along with" - elog "this the OpenGL libraries and VDPAU libraries were not" - elog "installed. Additionally, once the driver is loaded your card" - elog "and fan will run at max speed which may not be desirable." - elog "Use the 'nvidia-smi' init script to have your card and fan" - elog "speed scale appropriately." - elog - fi -} - -pkg_prerm() { - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} - -pkg_postrm() { - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-331.49.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-331.49.ebuild deleted file mode 100644 index a1c5ac15..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-331.49.ebuild +++ /dev/null @@ -1,375 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI=5 - -inherit eutils flag-o-matic linux-info linux-mod multilib nvidia-driver \ - portability toolchain-funcs unpacker user udev - -NV_URI="http://us.download.nvidia.com/XFree86/" -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI=" - amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz ) - amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run ) - x86-fbsd? ( ${NV_URI}FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz ) - x86? ( ${NV_URI}Linux-x86/${PV}/${X86_NV_PACKAGE}.run ) -" - -LICENSE="GPL-2 NVIDIA-r1" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~amd64-fbsd ~x86-fbsd" -IUSE="acpi multilib x-multilib kernel_FreeBSD kernel_linux tools +X" -RESTRICT="bindist mirror strip" -EMULTILIB_PKG="true" - -COMMON="app-admin/eselect-opencl - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - x-multilib? ( - || ( - ( - x11-libs/libX11[abi_x86_32] - x11-libs/libXext[abi_x86_32] - ) - app-emulation/emul-linux-x86-xlibs - ) - ) - multilib? ( app-emulation/emul-linux-x86-baselibs ) - X? ( - >=app-admin/eselect-opengl-1.0.9 - )" -DEPEND="${COMMON}" -# Note: do not add !>nvidia-userspace-ver or !<nvidia-userspace-ver -# because it would cause pkg_postrm to set the wrong opengl implementation -RDEPEND="${COMMON} - X? ( x11-libs/libXvMC ) - acpi? ( sys-power/acpid ) - tools? ( media-video/nvidia-settings )" -PDEPEND="X? ( - <x11-base/xorg-server-1.15.99 - >=x11-libs/libvdpau-0.3-r1 - )" - -REQUIRED_USE="tools? ( X )" -QA_PREBUILT="opt/* usr/lib*" -S=${WORKDIR}/ - -pkg_pretend() { - if use amd64 && has_multilib_profile && \ - [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default ABI" - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # Since Nvidia ships 3 different series of drivers, we need to give the user - # some kind of guidance as to what version they should install. This tries - # to point the user in the right direction but can't be perfect. check - # nvidia-driver.eclass - nvidia-driver-check-warning - - # Kernel features/options to check for - CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP" - use x86 && CONFIG_CHECK+=" ~HIGHMEM" - - # Now do the above checks - use kernel_linux && check_extra_config -} - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use kernel_linux; then - linux-mod_pkg_setup - MODULE_NAMES="nvidia(video:${S}/kernel)" - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \ - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC)" - # linux-mod_src_compile calls set_arch_to_kernel, which - # sets the ARCH to x86 but NVIDIA's wrapping Makefile - # expects x86_64 or i386 and then converts it to x86 - # later on in the build process - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')" - fi - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}" - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}" - NV_DOC="${S}/doc" - NV_OBJ="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}" - NV_OBJ="${S}" - NV_SRC="${S}/kernel" - NV_MAN="${S}" - NV_X11="${S}" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use kernel_FreeBSD; then - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - - # Allow user patches so they can support RC kernels and whatever else - epatch_user -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use kernel_FreeBSD; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi -} - -# Install nvidia library: -# the first parameter is the library to install -# the second parameter is the provided soversion -# the third parameter is the target directory if its not /usr/lib -donvidia() { - # Full path to library minus SOVER - MY_LIB="$1" - - # SOVER to use - MY_SOVER="$2" - - # Where to install - MY_DEST="$3" - - if [[ -z "${MY_DEST}" ]]; then - MY_DEST="/usr/$(get_libdir)" - action="dolib.so" - else - exeinto ${MY_DEST} - action="doexe" - fi - - # Get just the library name - libname=$(basename $1) - - # Install the library with the correct SOVER - ${action} ${MY_LIB}.${MY_SOVER} || \ - die "failed to install ${libname}" - - # If SOVER wasn't 1, then we need to create a .1 symlink - if [[ "${MY_SOVER}" != "1" ]]; then - dosym ${libname}.${MY_SOVER} \ - ${MY_DEST}/${libname}.1 || \ - die "failed to create ${libname} symlink" - fi - - # Always create the symlink from the raw lib to the .1 - dosym ${libname}.1 \ - ${MY_DEST}/${libname} || \ - die "failed to create ${libname} symlink" -} - -src_install() { - if use kernel_linux; then - # Add the aliases - # This file is tweaked with the appropriate video group in - # pkg_postinst, see bug #491414 - newins "${FILESDIR}"/nvidia-169.07 nvidia.conf - - # Ensures that our device nodes are created when not using X - exeinto "$(udev_get_udevdir)" - doexe "${FILESDIR}"/nvidia-udev.sh - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules - elif use kernel_FreeBSD; then - if use x86-fbsd; then - insinto /boot/modules - doins "${S}/src/nvidia.kld" - fi - - exeinto /boot/modules - doexe "${S}/src/nvidia.ko" - fi - - # NVIDIA kernel <-> userspace driver config lib - donvidia ${NV_OBJ}/libnvidia-cfg.so ${NV_SOVER} - - # NVIDIA video encode/decode <-> CUDA - if use kernel_linux; then - donvidia ${NV_OBJ}/libnvcuvid.so ${NV_SOVER} - donvidia ${NV_OBJ}/libnvidia-encode.so ${NV_SOVER} - fi - - if use X; then - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11}/nvidia_drv.so - - # Xorg GLX driver - donvidia ${NV_X11}/libglx.so ${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions - fi - - # OpenCL ICD for NVIDIA - if use kernel_linux; then - insinto /etc/OpenCL/vendors - doins ${NV_OBJ}/nvidia.icd - fi - - # Documentation - dohtml ${NV_DOC}/html/* - if use kernel_FreeBSD; then - dodoc "${NV_DOC}/README" - use X && doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" - doman "${NV_MAN}/nvidia-smi.1.gz" - doman "${NV_MAN}/nvidia-cuda-mps-control.1.gz" - use X && doman "${NV_MAN}/nvidia-xconfig.1.gz" - fi - - # Helper Apps - exeinto /opt/bin/ - if use X; then - doexe ${NV_OBJ}/nvidia-xconfig - fi - - if use kernel_linux ; then - doexe ${NV_OBJ}/nvidia-cuda-mps-control - doexe ${NV_OBJ}/nvidia-cuda-mps-server - doexe ${NV_OBJ}/nvidia-debugdump - doexe ${NV_OBJ}/nvidia-modprobe - doexe ${NV_OBJ}/nvidia-persistenced - doexe ${NV_OBJ}/nvidia-smi - doman nvidia-cuda-mps-control.1.gz - doman nvidia-modprobe.1.gz - doman nvidia-persistenced.1.gz - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi - fi - - exeinto /usr/bin/ - doexe ${NV_OBJ}/nvidia-bug-report.sh - - if has_multilib_profile && use multilib ; then - local OABI=${ABI} - for ABI in $(get_install_abis) ; do - src_install-libs - done - ABI=${OABI} - unset OABI - else - src_install-libs - fi - - is_final_abi || die "failed to iterate through all ABIs" - - readme.gentoo_create_doc -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib" - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia" - local libdir=${NV_OBJ} - - if use kernel_linux && has_multilib_profile && \ - [[ ${ABI} == "x86" ]] ; then - libdir=${NV_OBJ}/32 - fi - - if use X; then - # The GLX libraries - donvidia ${libdir}/libGL.so ${NV_SOVER} ${GL_ROOT} - donvidia ${libdir}/libnvidia-glcore.so ${NV_SOVER} - if use kernel_FreeBSD; then - donvidia ${libdir}/libnvidia-tls.so ${NV_SOVER} - else - donvidia ${libdir}/tls/libnvidia-tls.so ${NV_SOVER} - fi - - # VDPAU - donvidia ${libdir}/libvdpau_nvidia.so ${NV_SOVER} - fi - - # NVIDIA monitoring library - if use kernel_linux ; then - donvidia ${libdir}/libnvidia-ml.so ${NV_SOVER} - fi - - # CUDA & OpenCL - if use kernel_linux; then - donvidia ${libdir}/libcuda.so ${NV_SOVER} - donvidia ${libdir}/libnvidia-compiler.so ${NV_SOVER} - donvidia ${libdir}/libOpenCL.so 1.0.0 ${CL_ROOT} - donvidia ${libdir}/libnvidia-opencl.so ${NV_SOVER} - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia - - readme.gentoo_print_elog - - if ! use X; then - elog "You have elected to not install the X.org driver. Along with" - elog "this the OpenGL libraries and VDPAU libraries were not" - elog "installed. Additionally, once the driver is loaded your card" - elog "and fan will run at max speed which may not be desirable." - elog "Use the 'nvidia-smi' init script to have your card and fan" - elog "speed scale appropriately." - elog - fi - - local videogroup="$(egetent group video | cut -d ':' -f 3)" - if [ -n "${videogroup}" ]; then - sed -i -e "s:PACKAGE:${PF}:g" \ - -e "s:VIDEOGID:${videogroup}:" "${ROOT}"/etc/modprobe.d/nvidia.conf - else - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi -} - -pkg_prerm() { - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} - -pkg_postrm() { - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-337.19.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-337.19.ebuild deleted file mode 100644 index 731dc66c..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-337.19.ebuild +++ /dev/null @@ -1,353 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI=5 - -inherit eutils flag-o-matic linux-info linux-mod multilib nvidia-driver \ - portability toolchain-funcs unpacker user udev - -NV_URI="http://us.download.nvidia.com/XFree86/" -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI=" - amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz ) - amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run ) - x86-fbsd? ( ${NV_URI}FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz ) - x86? ( ${NV_URI}Linux-x86/${PV}/${X86_NV_PACKAGE}.run ) -" - -LICENSE="GPL-2 NVIDIA-r1" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~amd64-fbsd ~x86-fbsd" -IUSE="acpi multilib x-multilib kernel_FreeBSD kernel_linux tools +X uvm" -RESTRICT="bindist mirror strip" -EMULTILIB_PKG="true" - -COMMON="app-admin/eselect-opencl - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - x-multilib? ( - || ( - ( - x11-libs/libX11[abi_x86_32] - x11-libs/libXext[abi_x86_32] - ) - app-emulation/emul-linux-x86-xlibs - ) - ) - multilib? ( app-emulation/emul-linux-x86-baselibs ) - X? ( - >=app-admin/eselect-opengl-1.0.9 - )" -DEPEND="${COMMON}" -# Note: do not add !>nvidia-userspace-ver or !<nvidia-userspace-ver -# because it would cause pkg_postrm to set the wrong opengl implementation -RDEPEND="${COMMON} - X? ( x11-libs/libXvMC ) - acpi? ( sys-power/acpid ) - tools? ( media-video/nvidia-settings )" -PDEPEND="X? ( - <x11-base/xorg-server-1.15.99 - >=x11-libs/libvdpau-0.3-r1 - )" - -REQUIRED_USE="tools? ( X )" -QA_PREBUILT="opt/* usr/lib*" -S=${WORKDIR}/ - -pkg_pretend() { - if use amd64 && has_multilib_profile && \ - [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default ABI" - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi -} - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}" - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}" - NV_DOC="${S}/doc" - NV_OBJ="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}" - NV_OBJ="${S}" - NV_SRC="${S}/kernel" - NV_MAN="${S}" - NV_X11="${S}" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_prepare() { - # Please add a brief description for every added patch - - # Allow user patches so they can support RC kernels and whatever else - epatch_user -} - -src_compile() { :; } - -# Install nvidia library: -# the first parameter is the library to install -# the second parameter is the provided soversion -# the third parameter is the target directory if its not /usr/lib -donvidia() { - # Full path to library minus SOVER - MY_LIB="$1" - - # SOVER to use - MY_SOVER="$2" - - # Where to install - MY_DEST="$3" - - if [[ -z "${MY_DEST}" ]]; then - MY_DEST="/usr/$(get_libdir)" - action="dolib.so" - else - exeinto ${MY_DEST} - action="doexe" - fi - - # Get just the library name - libname=$(basename $1) - - # Install the library with the correct SOVER - ${action} ${MY_LIB}.${MY_SOVER} || \ - die "failed to install ${libname}" - - # If SOVER wasn't 1, then we need to create a .1 symlink - if [[ "${MY_SOVER}" != "1" ]]; then - dosym ${libname}.${MY_SOVER} \ - ${MY_DEST}/${libname}.1 || \ - die "failed to create ${libname} symlink" - fi - - # Always create the symlink from the raw lib to the .1 - dosym ${libname}.1 \ - ${MY_DEST}/${libname} || \ - die "failed to create ${libname} symlink" -} - -src_install() { - if use kernel_linux; then - # Add the aliases - # This file is tweaked with the appropriate video group in - # pkg_preinst, see bug #491414 - insinto /etc/modprobe.d - newins "${FILESDIR}"/nvidia-169.07 nvidia.conf - use uvm && doins "${FILESDIR}"/nvidia-uvm.conf - - # Ensures that our device nodes are created when not using X - exeinto "$(get_udevdir)" - doexe "${FILESDIR}"/nvidia-udev.sh - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules - elif use kernel_FreeBSD; then - if use x86-fbsd; then - insinto /boot/modules - doins "${S}/src/nvidia.kld" - fi - - exeinto /boot/modules - doexe "${S}/src/nvidia.ko" - fi - - # NVIDIA kernel <-> userspace driver config lib - donvidia ${NV_OBJ}/libnvidia-cfg.so ${NV_SOVER} - - # NVIDIA framebuffer capture library - donvidia ${NV_OBJ}/libnvidia-fbc.so ${NV_SOVER} - - # NVIDIA video encode/decode <-> CUDA - if use kernel_linux; then - donvidia ${NV_OBJ}/libnvcuvid.so ${NV_SOVER} - donvidia ${NV_OBJ}/libnvidia-encode.so ${NV_SOVER} - fi - - if use X; then - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11}/nvidia_drv.so - - # Xorg GLX driver - donvidia ${NV_X11}/libglx.so ${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions - fi - - # OpenCL ICD for NVIDIA - if use kernel_linux; then - insinto /etc/OpenCL/vendors - doins ${NV_OBJ}/nvidia.icd - fi - - # Documentation - dohtml ${NV_DOC}/html/* - if use kernel_FreeBSD; then - dodoc "${NV_DOC}/README" - use X && doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" - doman "${NV_MAN}/nvidia-smi.1.gz" - doman "${NV_MAN}/nvidia-cuda-mps-control.1.gz" - use X && doman "${NV_MAN}/nvidia-xconfig.1.gz" - fi - - # Helper Apps - exeinto /opt/bin/ - if use X; then - doexe ${NV_OBJ}/nvidia-xconfig - fi - - if use kernel_linux ; then - doexe ${NV_OBJ}/nvidia-cuda-mps-control - doexe ${NV_OBJ}/nvidia-cuda-mps-server - doexe ${NV_OBJ}/nvidia-debugdump - doexe ${NV_OBJ}/nvidia-persistenced - doexe ${NV_OBJ}/nvidia-smi - - # install nvidia-modprobe setuid and symlink in /usr/bin (bug #505092) - doexe ${NV_OBJ}/nvidia-modprobe - fowners root:video /opt/bin/nvidia-modprobe - fperms 4710 /opt/bin/nvidia-modprobe - dosym /{opt,usr}/bin/nvidia-modprobe - - doman nvidia-cuda-mps-control.1.gz - doman nvidia-modprobe.1.gz - doman nvidia-persistenced.1.gz - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi - fi - - exeinto /usr/bin/ - doexe ${NV_OBJ}/nvidia-bug-report.sh - - if has_multilib_profile && use multilib ; then - local OABI=${ABI} - for ABI in $(get_install_abis) ; do - src_install-libs - done - ABI=${OABI} - unset OABI - else - src_install-libs - fi - - is_final_abi || die "failed to iterate through all ABIs" - - readme.gentoo_create_doc -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib" - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia" - local libdir=${NV_OBJ} - - if use kernel_linux && has_multilib_profile && \ - [[ ${ABI} == "x86" ]] ; then - libdir=${NV_OBJ}/32 - fi - - if use X; then - # The GLX libraries - donvidia ${libdir}/libEGL.so ${NV_SOVER} ${GL_ROOT} - donvidia ${libdir}/libGL.so ${NV_SOVER} ${GL_ROOT} - donvidia ${libdir}/libGLESv1_CM.so ${NV_SOVER} ${GL_ROOT} - donvidia ${libdir}/libnvidia-eglcore.so ${NV_SOVER} - donvidia ${libdir}/libnvidia-glcore.so ${NV_SOVER} - donvidia ${libdir}/libnvidia-glsi.so ${NV_SOVER} - donvidia ${libdir}/libnvidia-ifr.so ${NV_SOVER} - if use kernel_FreeBSD; then - donvidia ${libdir}/libnvidia-tls.so ${NV_SOVER} - else - donvidia ${libdir}/tls/libnvidia-tls.so ${NV_SOVER} - fi - - # VDPAU - donvidia ${libdir}/libvdpau_nvidia.so ${NV_SOVER} - - # GLES v2 libraries - insinto ${GL_ROOT} - doexe ${libdir}/libGLESv2.so.${PV} - dosym libGLESv2.so.${PV} ${GL_ROOT}/libGLESv2.so.2 - dosym libGLESv2.so.2 ${GL_ROOT}/libGLESv2.so - fi - - # NVIDIA monitoring library - if use kernel_linux ; then - donvidia ${libdir}/libnvidia-ml.so ${NV_SOVER} - fi - - # CUDA & OpenCL - if use kernel_linux; then - donvidia ${libdir}/libcuda.so ${NV_SOVER} - donvidia ${libdir}/libnvidia-compiler.so ${NV_SOVER} - donvidia ${libdir}/libOpenCL.so 1.0.0 ${CL_ROOT} - donvidia ${libdir}/libnvidia-opencl.so ${NV_SOVER} - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi - - local videogroup="$(egetent group video | cut -d ':' -f 3)" - if [ -n "${videogroup}" ]; then - sed -i -e "s:PACKAGE:${PF}:g" \ - -e "s:VIDEOGID:${videogroup}:" "${ROOT}"/etc/modprobe.d/nvidia.conf - else - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia - - readme.gentoo_print_elog - - if ! use X; then - elog "You have elected to not install the X.org driver. Along with" - elog "this the OpenGL libraries and VDPAU libraries were not" - elog "installed. Additionally, once the driver is loaded your card" - elog "and fan will run at max speed which may not be desirable." - elog "Use the 'nvidia-smi' init script to have your card and fan" - elog "speed scale appropriately." - elog - fi -} - -pkg_prerm() { - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} - -pkg_postrm() { - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11 -} diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-340.24.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-340.46.ebuild index 559555b4..559555b4 100644 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-340.24.ebuild +++ b/x11-drivers/nvidia-userspace/nvidia-userspace-340.46.ebuild diff --git a/x11-drivers/nvidia-userspace/nvidia-userspace-96.43.20.ebuild b/x11-drivers/nvidia-userspace/nvidia-userspace-96.43.20.ebuild deleted file mode 100644 index ba2362b6..00000000 --- a/x11-drivers/nvidia-userspace/nvidia-userspace-96.43.20.ebuild +++ /dev/null @@ -1,395 +0,0 @@ -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="2" - -inherit eutils unpacker multilib portability versionator flag-o-matic - -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}" -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}" -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}" - -DESCRIPTION="NVIDIA X11 userspace libraries and applications" -HOMEPAGE="http://www.nvidia.com/" -SRC_URI="x86? ( ftp://download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}-pkg0.run ) - amd64? ( ftp://download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}-pkg2.run ) - x86-fbsd? ( ftp://download.nvidia.com/freebsd/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )" - -LICENSE="NVIDIA" -SLOT="0" -KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd" -IUSE="multilib kernel_linux" -RESTRICT="strip" -EMULTILIB_PKG="true" - -COMMON="x11-base/xorg-server - kernel_linux? ( >=sys-libs/glibc-2.6.1 ) - multilib? ( app-emulation/emul-linux-x86-opengl ) - >=app-admin/eselect-opengl-1.0.9" -DEPEND="${COMMON} - kernel_linux? ( virtual/linux-sources )" -RDEPEND="${COMMON} - !<x11-drivers/nvidia-userspace-${PV} - !>x11-drivers/nvidia-userspace-${PV}" -PDEPEND="~x11-drivers/nvidia-drivers-${PV}" - -QA_TEXTRELS_x86="usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libcuda.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/lib/libXvMCNVIDIA.so.${PV}" - -QA_TEXTRELS_x86_fbsd="boot/modules/nvidia.ko - usr/lib/opengl/nvidia/lib/libGL.so.1 - usr/lib/opengl/nvidia/lib/libGLcore.so.1 - usr/lib/libnvidia-cfg.so.1 - usr/lib/opengl/nvidia/extensions/libglx.so.1 - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_amd64="usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/libcuda.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV}" - -QA_EXECSTACK_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libXvMCNVIDIA.a:NVXVMC.o" - -QA_EXECSTACK_amd64="usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/libnvcompiler.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libXvMCNVIDIA.a:NVXVMC.o - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig" - -QA_WX_LOAD_x86="usr/lib/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/libXvMCNVIDIA.a" - -QA_WX_LOAD_amd64="usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV}" - -QA_SONAME_amd64="usr/lib64/libnvcompiler.so.${PV}" - -QA_DT_HASH_amd64="usr/lib32/libcuda.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib32/libvdpau_nvidia.so.${PV} - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/libcuda.so.${PV} - usr/lib64/libnvidia-cfg.so.${PV} - usr/lib64/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/lib64/libvdpau_nvidia.so.${PV} - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig" - -QA_DT_HASH_x86="usr/lib/libcuda.so.${PV} - usr/lib/libnvidia-cfg.so.${PV} - usr/lib/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so.${PV} - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/libvdpau_nvidia.so.${PV} - usr/bin/nvidia-smi - usr/bin/nvidia-xconfig" - -if use x86; then - PKG_V="-pkg0" - NV_PACKAGE="${X86_NV_PACKAGE}" -elif use amd64; then - PKG_V="-pkg2" - NV_PACKAGE="${AMD64_NV_PACKAGE}" -elif use x86-fbsd; then - PKG_V="" - NV_PACKAGE="${X86_FBSD_NV_PACKAGE}" -fi - -S="${WORKDIR}/${NV_PACKAGE}${PKG_V}" - -pkg_setup() { - # try to turn off distcc and ccache for people that have a problem with it - export DISTCC_DISABLE=1 - export CCACHE_DISABLE=1 - - if use amd64 && has_multilib_profile && [ "${DEFAULT_ABI}" != "amd64" ]; then - eerror "This ebuild doesn't currently support changing your default abi." - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}" - fi - - # On BSD userland it wants real make command - use userland_BSD && MAKE="$(get_bmake)" - - export _POSIX2_VERSION="199209" - - # set variables to where files are in the package structure - if use kernel_FreeBSD; then - NV_DOC="${S}/doc" - NV_EXEC="${S}/obj" - NV_LIB="${S}/obj" - NV_SRC="${S}/src" - NV_MAN="${S}/x11/man" - NV_X11="${S}/obj" - NV_X11_DRV="${NV_X11}" - NV_X11_EXT="${NV_X11}" - NV_SOVER=1 - elif use kernel_linux; then - NV_DOC="${S}/usr/share/doc" - NV_EXEC="${S}/usr/bin" - NV_LIB="${S}/usr/lib" - NV_SRC="${S}/usr/src/nv" - NV_MAN="${S}/usr/share/man/man1" - NV_X11="${S}/usr/X11R6/lib" - NV_X11_DRV="${NV_X11}/modules/drivers" - NV_X11_EXT="${NV_X11}/modules/extensions" - NV_SOVER=${PV} - else - die "Could not determine proper NVIDIA package" - fi -} - -src_unpack() { - if ! use x86-fbsd; then - mkdir "${S}" - cd "${S}" - unpack_makeself - else - unpack ${A} - fi -} - -src_prepare() { - # Please add a brief description for every added patch - use x86-fbsd && cd doc - - # Use the correct defines to make gtkglext build work - epatch "${FILESDIR}"/NVIDIA_glx-defines.patch - # Use some more sensible gl headers and make way for new glext.h - epatch "${FILESDIR}"/NVIDIA_glx-glheader.patch -} - -src_compile() { - # This is already the default on Linux, as there's no toplevel Makefile, but - # on FreeBSD there's one and triggers the kernel module build, as we install - # it by itself, pass this. - - cd "${NV_SRC}" - if use x86-fbsd; then - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \ - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die - fi -} - -src_install() { - if use kernel_linux; then - VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)" - if [ -z "$VIDEOGROUP" ]; then - eerror "Failed to determine the video group gid." - die "Failed to determine the video group gid." - fi - - # Add the aliases - [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR" - sed -e 's:PACKAGE:'${PF}':g' \ - -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \ - "${WORKDIR}"/nvidia - insinto /etc/modprobe.d - newins "${WORKDIR}"/nvidia nvidia.conf || die - fi - - # NVIDIA kernel <-> userspace driver config lib - dolib.so ${NV_LIB}/libnvidia-cfg.so.${NV_SOVER} || \ - die "failed to install libnvidia-cfg" - - # Xorg DDX driver - insinto /usr/$(get_libdir)/xorg/modules/drivers - doins ${NV_X11_DRV}/nvidia_drv.so || die "failed to install nvidia_drv.so" - - # Xorg GLX driver - insinto /usr/$(get_libdir)/opengl/nvidia/extensions - doins ${NV_X11_EXT}/libglx.so.${NV_SOVER} || \ - die "failed to install libglx.so" - dosym /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so.${NV_SOVER} \ - /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so || \ - die "failed to create libglx.so symlink" - - # XvMC driver - dolib.a ${NV_X11}/libXvMCNVIDIA.a || \ - die "failed to install libXvMCNVIDIA.so" - dolib.so ${NV_X11}/libXvMCNVIDIA.so.${NV_SOVER} || \ - die "failed to install libXvMCNVIDIA.so" - dosym libXvMCNVIDIA.so.${NV_SOVER} /usr/$(get_libdir)/libXvMCNVIDIA.so || \ - die "failed to create libXvMCNVIDIA.so symlink" - - # CUDA headers (driver to come) - if use kernel_linux && [[ -d ${S}/usr/include/cuda ]]; then - dodir /usr/include/cuda - insinto /usr/include/cuda - doins usr/include/cuda/*.h || die "failed to install cuda headers" - fi - - # OpenCL headers (driver to come) - if [[ -d ${S}/usr/include/CL ]]; then - dodir /usr/include/CL - insinto /usr/include/CL - doins usr/include/CL/*.h || die "failed to install OpenCL headers" - fi - - # Documentation - dodoc ${NV_DOC}/XF86Config.sample - dohtml ${NV_DOC}/html/* - if use x86-fbsd; then - dodoc "${NV_DOC}/README" - doman "${NV_MAN}/nvidia-xconfig.1" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" -# doman "${NV_MAN}/nvidia-smi.1.gz" - doman "${NV_MAN}/nvidia-xconfig.1.gz" - fi - - # Helper Apps - dobin ${NV_EXEC}/nvidia-xconfig || die - dobin ${NV_EXEC}/nvidia-bug-report.sh || die -# if use kernel_linux; then -# dobin ${NV_EXEC}/nvidia-smi || die -# fi - - 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 - - is_final_abi || die "failed to iterate through all ABIs" -} - -# Install nvidia library: -# the first parameter is the place where to install it -# the second parameter is the base name of the library -# the third parameter is the provided soversion -donvidia() { - dodir $1 - exeinto $1 - - libname=$(basename $2) - - doexe $2.$3 || die "failed to install $2" - dosym ${libname}.$3 $1/${libname} || die "failed to symlink $2" - [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1 -} - -src_install-libs() { - local inslibdir=$(get_libdir) - local NV_ROOT="/usr/${inslibdir}/opengl/nvidia" - local libdir= sover= - - if use kernel_linux; then - if has_multilib_profile && [[ ${ABI} == "x86" ]] ; then - libdir=usr/lib32 - else - libdir=usr/lib - fi - sover=${PV} - else - libdir=obj - # on FreeBSD it has just .1 suffix - sover=1 - fi - - # The GLX libraries - donvidia ${NV_ROOT}/lib ${libdir}/libGL.so ${sover} - donvidia ${NV_ROOT}/lib ${libdir}/libGLcore.so ${sover} - if use x86-fbsd; then - donvidia ${NV_ROOT}/lib ${libdir}/libnvidia-tls.so ${sover} - else - donvidia ${NV_ROOT}/lib ${libdir}/tls/libnvidia-tls.so ${sover} - fi - - #cuda - if [[ -f ${libdir}/libcuda.so.${sover} ]]; then - dolib.so ${libdir}/libcuda.so.${sover} - [[ "${sover}" != "1" ]] && dosym libcuda.so.${sover} /usr/${inslibdir}/libcuda.so.1 - dosym libcuda.so.1 /usr/${inslibdir}/libcuda.so - fi - - #vdpau - if [[ -f ${libdir}/libvdpau_nvidia.so.${sover} ]]; then - dolib.so ${libdir}/libvdpau_nvidia.so.${sover} - dosym libvdpau_nvidia.so.${sover} /usr/${inslibdir}/libvdpau_nvidia.so - fi - - # OpenCL - # NOTE: This isn't currently available in the publicly released drivers. - if [[ -f ${libdir}/libOpenCL.so.1.0.0 ]]; then - - dolib.so ${libdir}/libnvcompiler.so.${sover} - [[ "${sover}" != "1" ]] && dosym libnvcompiler.so.${sover} /usr/${inslibdir}/libnvcompiler.so.1 - dosym libnvcompiler.so.1 /usr/${inslibdir}/libnvcompiler.so - - dolib.so ${libdir}/libOpenCL.so.1.0.0 - dosym libOpenCL.so.1.0.0 /usr/${inslibdir}/libOpenCL.so.1 - dosym libOpenCL.so.1 /usr/${inslibdir}/libOpenCL.so - fi -} - -pkg_preinst() { - # Clean the dynamic libGL stuff's home to ensure - # we dont have stale libs floating around - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/* - fi - # Make sure we nuke the old nvidia-glx's env.d file - if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then - rm -f "${ROOT}"/etc/env.d/09nvidia - fi -} - -pkg_postinst() { - # Switch to the nvidia implementation - eselect opengl set --use-old nvidia - - elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\"" - elog - elog "NVIDIA has requested that any bug reports submitted have the" - elog "output of /usr/bin/nvidia-bug-report.sh included." - elog - elog "To work with compiz, you must enable the AddARGBGLXVisuals option." - elog - elog "If you are having resolution problems, try disabling DynamicTwinView." -} - -pkg_postrm() { - eselect opengl set --use-old xorg-x11 -} |