Gentoo Archives: gentoo-commits

From: Jeroen Roovers <jer@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: x11-drivers/nvidia-drivers/
Date: Wed, 05 Sep 2018 10:47:03
Message-Id: 1536144351.b00ed2c86e82f9ea3c70202bcf4fa7a1eb8f1fff.jer@gentoo
1 commit: b00ed2c86e82f9ea3c70202bcf4fa7a1eb8f1fff
2 Author: Jeroen Roovers <jer <AT> gentoo <DOT> org>
3 AuthorDate: Wed Sep 5 10:45:51 2018 +0000
4 Commit: Jeroen Roovers <jer <AT> gentoo <DOT> org>
5 CommitDate: Wed Sep 5 10:45:51 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b00ed2c8
7
8 x11-drivers/nvidia-drivers: Old.
9
10 Package-Manager: Portage-2.3.49, Repoman-2.3.10
11
12 x11-drivers/nvidia-drivers/Manifest | 21 -
13 .../nvidia-drivers/nvidia-drivers-390.67.ebuild | 587 ---------------------
14 .../nvidia-drivers/nvidia-drivers-390.77.ebuild | 587 ---------------------
15 .../nvidia-drivers/nvidia-drivers-396.24-r1.ebuild | 581 --------------------
16 .../nvidia-drivers/nvidia-drivers-396.45.ebuild | 581 --------------------
17 .../nvidia-drivers/nvidia-drivers-396.51.ebuild | 581 --------------------
18 6 files changed, 2938 deletions(-)
19
20 diff --git a/x11-drivers/nvidia-drivers/Manifest b/x11-drivers/nvidia-drivers/Manifest
21 index 0afe61542a7..dc242c51638 100644
22 --- a/x11-drivers/nvidia-drivers/Manifest
23 +++ b/x11-drivers/nvidia-drivers/Manifest
24 @@ -5,8 +5,6 @@ DIST NVIDIA-FreeBSD-x86-378.13.tar.gz 59610253 BLAKE2B 723b392b869dd5cc9244cfe9d
25 DIST NVIDIA-FreeBSD-x86-381.22.tar.gz 60112159 BLAKE2B 4a61e9a09218eb7d259f82d0a43fee313754004c8716e921b9a83a3e87fff9a291450bef5d7304b2a7ddf5750a830fb7c5cc9dab890dac4a714354265ca25034 SHA512 ffe5882051fad081854e7b7fefe86a4da55b263b2ca217664991a7e0d84ff2f22d62a37c89afd578f3c99c12be897e5db7a3d1c71c747df655af8e220eb983fa
26 DIST NVIDIA-FreeBSD-x86-384.130.tar.gz 63719036 BLAKE2B 971006aec05f5bb8f815420f5e1a62103119ae0192a275cc4df3034c20908ebcb8d5a886e030ec06a854102a79e2b31d53c2fcbf3450cb7fa0d9e1f64eeb835f SHA512 54d6d0776190d12f2562fe0ffdf82661fb8a0a4d3d575386a19f5dd5890a7ae4d2ad6704253e7cded62a9a0e1880f1bee9e6bf3aeeb8ce7a265a3d077b0c8018
27 DIST NVIDIA-FreeBSD-x86-387.34.tar.gz 64228643 BLAKE2B 80011df5d037cd0a2a6faccf6c990e6019cb85c906c1410d4dde033a8a945ecd46e80a1315e46dc05fa47003eb328c6b8e8e41e18dce60942e645c0e6b813717 SHA512 875648459a149d506b20eb7105e73086e1fb51dddfbd8b484b8cc4793682c088ba16b3d374b0e807738f7aa7489dd9eab2449f70bc9feefeec0bf3a88025b9ef
28 -DIST NVIDIA-FreeBSD-x86-390.67.tar.gz 64289180 BLAKE2B 1a4d9bea63e8a925af641074a7b49ab7c841055a771d99586c56809a54c438917f0af5a3a4236d594ee4a03bd1cf7e22f62e1b487e309173a9662db659f74acb SHA512 e3c3f9b93e07fd0f16ff1a62c4adfc61b827785f1bd482482bc58aa75bd3df4f66f24e826bf4f41ad08ca8a9600e6f9fb4542f8ce8e4cfe81b06cef955cdbbae
29 -DIST NVIDIA-FreeBSD-x86-390.77.tar.gz 64315405 BLAKE2B f947fbc15ab12d7d8577350012f6e4940ad626a1d26d998d420808bd76b04774e93e6355a702ab72a3b258922a209a0abb032108963c98e6ed1fd8e63b63085d SHA512 20196a71f7f7f62e6c5909d366364e500ea62608ed2bc3389f94f906526b5c66371e4be3b09f5768e4205e9d818f184f16402f86e3b3e2de42c7ac0cf7c9bead
30 DIST NVIDIA-FreeBSD-x86-390.87.tar.gz 64326801 BLAKE2B 91cf9e77040d8c710a0fef58f9bae685a86962f8460a5d55e2c0733dc7bd2050c910bbd0732bb89efb8550d501b08c02e0587118ea767ba768dcf1c356e0e872 SHA512 b7ff9f4e61de08c0626e5e55c1f51e3451640043066944d791f79f4c0b57f39211c0648a2551c0b5ed1622809d7c9579e24b8ee9a46a7988319e25ab709c1400
31 DIST NVIDIA-FreeBSD-x86_64-304.137.tar.gz 36474676 BLAKE2B bd75e2916d34f76566d838406419991a860118830366f0297fa63baade3a99f637dae601d6bc6a051596222f2715297dffbf9b81ff5478b030741e6c8a09bc13 SHA512 f0ae7ccea417aceedf34bfb9c96fd79b31cbf74a8fa59d5199b0ad7b81b8a4aeb66cd4801a45cc37f836979cb4267aa69e08517beaa9b8cb9c66a477d02ef8de
32 DIST NVIDIA-FreeBSD-x86_64-340.107.tar.gz 61179967 BLAKE2B c12c7c07c090fd7bca78a30082890d0b0330dde07ce9beacdb94fad97d40e9ff9e1413fc36fd94116821137e74076d99a82ab85ecd0a8e16d52b47abeb747802 SHA512 661a4cc79a0adc9a1abebfb3567c26e69628266794b5b539c112112a0989760ea1ea2d8c35a5fe7539b579d4e9cef2685e3e1d12fc7031cd6d1b743c23eadc52
33 @@ -15,20 +13,13 @@ DIST NVIDIA-FreeBSD-x86_64-378.13.tar.gz 58779963 BLAKE2B d0a165dab740b25e1d9705
34 DIST NVIDIA-FreeBSD-x86_64-381.22.tar.gz 59284579 BLAKE2B 45703b5658c586fe2fbfaf84a54a591a7d25e836195c47c43375b74a730c1a7aa4dd7bd17d13e7194b37d51da0f11540da1bee564e1c27351ecc6915e65012d5 SHA512 51c5a87fabe87ec7f2589ed97d97447b127ecb5fe501c60bc7c9fce74141c127f4f9bb820d2a9b34fb56db436476d0cb18a73845ab4e7ec2315d4975c8ce4e32
35 DIST NVIDIA-FreeBSD-x86_64-384.130.tar.gz 62901704 BLAKE2B 50be9af398f88caa012a7af702ed3d150bd4d0e5aca862dab09f30038906d79254999079983fe242dfe8158549e25f3a49ea8ad07114d8d3bcd01c8a076e8c8f SHA512 ad1a32f8268003d165570137947f517c82074b0851b86a1928f016de95f3dacef4d48f4873f00d603d49b44fe2b99d65295ed4e655d4b16f71c284994a1ea148
36 DIST NVIDIA-FreeBSD-x86_64-387.34.tar.gz 63387097 BLAKE2B 53689ba098b4a4de08dca056618ea533c92d17137ec954dea0ae71e1b2c825c021979871e4ff82c820be0a78d3c365f282b760940ebe2caa1ca5bfd2453e178e SHA512 0a905ee72ee6f4e9c941e5dd1f7cddf96bfb20c6da32fd05599258e1bb154f68463d775ba8ff4f67f0d4b8e637e9ed9624fc9a4873a1f2621dc86732f0d6d70d
37 -DIST NVIDIA-FreeBSD-x86_64-390.67.tar.gz 63611003 BLAKE2B 093d61fa03a64e6c61920cb23cf0d269a8933a6533dcb22c35c390d3b054a77aa0127e9c78df102ce4ba6ac333c194e6494e4700552159a798042cceeec1ce07 SHA512 c25bcc91147491762155cd6189b8b39de7529c16fc4aa30d454caf3338f11e1429c53575190f3a0afd05a77dd4a31407f941cff5608bb81a0df9b49c558b364e
38 -DIST NVIDIA-FreeBSD-x86_64-390.77.tar.gz 63638514 BLAKE2B 8a63f1c93cb24400ce099ffe76d2453e6980674554378a2e135e32a976212f75c335e104e52ad5039216b06286bc350e49a8fd1c61b987e1be3f3cf3bdd08f38 SHA512 f2bb8f9b5afe6ddaaa6395835592763d6f36814b37d8234f7372a0039324bcd88fa4e7f1ff5da7205bcdaac0f0d96ac8d72fe66db15e2adeee06a86fcb4d3199
39 DIST NVIDIA-FreeBSD-x86_64-390.87.tar.gz 63648591 BLAKE2B 88aa38b11b64b2ad91f723ec84a2adb6829571136aabb1441a9119418395d5f143736487902f0c60b49ebc1284f3100fbd089e4c941cdd3519ab8511cc1d3261 SHA512 0865fef8b8a3be8f6d9fc81908b162fd6062ba0ea81fd00200e7b2a1e3149ef62408b46bc4ccb7a77f1ac943557a22b13a10cfdde084f0b76cf2b23432e57540
40 -DIST NVIDIA-FreeBSD-x86_64-396.24.tar.gz 60839222 BLAKE2B 4baa266d945525a8f43d69e14df1b045d5a2e7212eb3a92208f8efb454642e657ea3cf00a9e625ef5efa9f54c8a9e2f87ef4847696368de13b88a0721364d9af SHA512 28c456cfc9f779bed84d671e104f2ea68940053aed2dc7964390e84ec553a9062be6b5108a78f123c129c25548a7b3027060da67417c64f857b23c95ae9f908b
41 -DIST NVIDIA-FreeBSD-x86_64-396.45.tar.gz 60850050 BLAKE2B 1bc8e761fbe38637ee17f996ec74f63c4e9da7cea6d38029fe2fcad5cd85da73e10773e019e2744d522aefecee2d6a8d3852db6ad5b9e1e746bc36ccdb4b7c9c SHA512 76955be8e86645376856bdbda7339601b88067e6b4d39b768ec86586eced7e77a437eb990bcf0fa77b3671968b00df91b53be53e1cdcd45d3e0c6a96ab5f1d77
42 -DIST NVIDIA-FreeBSD-x86_64-396.51.tar.gz 60903199 BLAKE2B adaf32bce51a11a15f71dfb3fb66a203237a6e153437cd4c95bd5d9d7d694b9b959d7e599d9481e3201eff243655e2d3e39cbea72bf40d9c40448d4b55cf22ed SHA512 903af39b5d8681d80f0016db4fe7a4b84cc2c1325c295be6c44b95aa98006d395f46b9d26ca5f08aea8998ca62f1c51eb4b1c0c2b3d082943d35c4bb437a57ef
43 DIST NVIDIA-FreeBSD-x86_64-396.54.tar.gz 60938322 BLAKE2B a23488b625a15703b0c40bc6871314b05d117d489f64a6f7c70ac3c934b02028b9623be10f0369c98c7d3b5e018e1eb6f1d2cde9d9e1b90be5065f06f6a646dd SHA512 52df85364bfd45a23394078855859ce85de996f7990bb96ba63eb33e516c3cf8e72c4391af9817213f735286f2cf6444bc8ed00312365f12ae17373cfbdc3fc7
44 DIST NVIDIA-Linux-armv7l-gnueabihf-375.82.run 26650801 BLAKE2B 31446667065c56b48f6a3e737afe29a4517459d3462138136bffe383bc6fe514d6e80b49c391c27edc96b8abc3da3dd4d6ee3f3dca17f3c9a0f1cdf0e72cf099 SHA512 28554f1c24fe63c9257c0de3e84e4e739a45bf1c20ec7a53bc2c1b69b4e2355675061491ef5b03f3ae489cf623e553cfa68442f5536f137837327036d1c53d63
45 DIST NVIDIA-Linux-armv7l-gnueabihf-378.13.run 26514235 BLAKE2B 2b3c540704496a290be7ae3f1ff378487c75af2298c12488da8b3a1814446e5df02a1ed99afd8ee7fc459d950aab472155359eae0bf56ac83389711d70638152 SHA512 253786a821df85fa926ae842114321b3c70502f887ea7c2b6790dfe3836039ee5d390e6722ca8785904ec6487e465916923d3042dc6191b3b4522c3161b80cb0
46 DIST NVIDIA-Linux-armv7l-gnueabihf-381.22.run 26815484 BLAKE2B e5f0241b07d1e54edea2025dd30061d1018c68cc2c7136c507eb894bbad5be3d0724494e2b9f33d1f8f60da4904999bbb964e6f2e78d045d7cd86bcd46b7f6d0 SHA512 934cda37c7aed26243b5b661122e1c060de5b4df890aaf2295b6650dddea37cb4f0e3f0bebddb00b5d687b66ab5e028a203195c4d4ad3379593babda42febe77
47 DIST NVIDIA-Linux-armv7l-gnueabihf-384.130.run 28899034 BLAKE2B 4f104243e87d0688d5f234bcadeb501914394ca5ae29c0f7ca7ae8038982c7df14652a1b85fb62a3466a6d4f7cda95c9726367bfd8ab1bf0b73f3fa617418276 SHA512 bd7be99881295f4ddf92b8c6791c4315c7b8699cdd346247dd54dfeb48ee61a40597483379922f5e3d0b28c9b9b9e75dca91c535e4695ebe57734c26f1484f61
48 DIST NVIDIA-Linux-armv7l-gnueabihf-387.34.run 29406773 BLAKE2B af27fb1bfa8e432c83220f88c57219d572dfab2d3624c8702759a747f25ff962dba7c39028af5746e04c913c9a53dfbec8a46801bfa7e38df65a8823c4858cca SHA512 cb631dc3b851d84881dfcabee776c68a935853d03f21595acfea84a3efbc85276070f9d0958c0bcced1e66f42f25ecf3fd7d615c715274130ca24426da678c2e
49 -DIST NVIDIA-Linux-armv7l-gnueabihf-390.67.run 28708012 BLAKE2B 2b6d44b5a2ec9da9cda70a2b79bac25f3f0ffb6da6facdd7f361d280d83503861cdec55bc881554a985c26bc03b00d16418e80da77ea8883e5c48bde1550a6bc SHA512 0e1175424ac0c1b301d41a9af2c5c507e7d86959e4424f17249d404c31d45563985b59d440b3ecb827ef9cd5b0c872b143a8c965d26b227f99dbb9b6615dbae7
50 -DIST NVIDIA-Linux-armv7l-gnueabihf-390.77.run 28898197 BLAKE2B 1a3e4dc34fa20e9c8bfe78fbb24f9ad95d94052c633327cd81b64905788255e3e0cc87e55ac14ca5784e6c4da2f6061258dee932b5eabf3b8a3d5a28eae39cd5 SHA512 56115c1634e745f35d94edcaa701476db38395e7670aca18afe55a1b8d833fdbc85a49bb2208f234168112aeceed53a85e0bfbf3a4fd24d64b2d8b517849ffc7
51 DIST NVIDIA-Linux-armv7l-gnueabihf-390.87.run 29078256 BLAKE2B a7ce24bcaf82e6c2c95cd11a0d9e0e2aa69c717b8455d4ce0a79a9c03c92f5f6b84107dea6347dedc5c4f8fe076e616fc7a36053c6a5f571af9d794bada6cb1f SHA512 3f8ef4eabc7275685bd5d887c6b7dc20786baab1f4a89bfb23ae6c8d837188d93369c777915d3ea010b08e578c4fb7318d9428811971470e31a8b8b4f51e240f
52 DIST NVIDIA-Linux-x86-304.137.run 41504115 BLAKE2B 5938d4df818947e5576172c0ee9bfa42a2fc49a7a7a2b14128cf3b967dfea6d4523901b33283284d450cfadc2c6d72a82a1533b27ebb4b542b6b1454fe8ae960 SHA512 021c5a88d50489aa0a1c7eac14259e23542b93578ae339995a2e38b786d06d239968c07933cab3fb78a922cffc7e213d6fa3fe07e34065a9c7f03e24f8729370
53 DIST NVIDIA-Linux-x86-340.107.run 39016798 BLAKE2B 2632c8f257d0cf7c5b9294eb2c0b763eee6feb60eacc316024655971e4d067c4af6548aab3b7b2b295792b064f3f3ac3e6403a2ecfa096761d308dfb6b2569b8 SHA512 0add713942bcdb639d19b5c36f5e0cea14f9e07490191d46dfeba0515ede7700fd8e9467ec531d38329fe1e76bf45905e70e0d440e7bc2dc79c1d767eab03338
54 @@ -37,8 +28,6 @@ DIST NVIDIA-Linux-x86-378.13.run 44397547 BLAKE2B 5b45bdceba75e214028b9f59a36554
55 DIST NVIDIA-Linux-x86-381.22.run 42931990 BLAKE2B cf1ae154854860557bf3e4a50216f1373ff66a45535e7beec67392b1cd1d40a02d758fa3e1cfa0462145b912430b0d1a3b6de3e6d6ede8aa1f484ea0ab46f816 SHA512 15723bfa25b0f39224ad5098c784a292abe4bf1daafaeb2f1df910bbab466e666b848b12e50b0bdd45f83e2d81957425a63501550b3dc5eb8fe3e576a8a10d22
56 DIST NVIDIA-Linux-x86-384.130.run 47539521 BLAKE2B d0b84aa6e0a41d7202cce247a419adad5c94d0d98feb83594644d8e0a9426d0c07a5b5889297bc830c7456a4e8cc165a3b23c004e83cabad1000bf5a6e1a147a SHA512 0ed01818606eb7309811a3cb0ae71e9906e318d579dfd85bafcbae498a27f801836c1f1eefee6791ec5d9c6a4c41d244c43b8329583ae4991b45171cac99638d
57 DIST NVIDIA-Linux-x86-387.34.run 47797853 BLAKE2B 4ae211ee00e09fe385f24e05cfac3af28447ec18e7a7f53e7f310c210ec22f60094be087aae45d0ea99c90214a07d3c46ce6867984ac0ff6e56559693fcdf148 SHA512 ba9362123a75f85a0a5a9dcc95c06bcb350a8dff2db864db30a73172db44006fa39eee8e23cf959ab2012b61b922d1f0d7ab225329815737819f27d1be300b95
58 -DIST NVIDIA-Linux-x86-390.67.run 47706619 BLAKE2B c9ddefd702bcf987e62c27a77fdab87de62da8b1bb3e836607cb3746c3acfb7ee931e6c1cbd8a8c33d6724436cb54573b7d1a3dfa1e183627980e2b9b69cc4ad SHA512 177ad1a4ae52fc00001461e65e264fe9f9bf0dc5e8974391311cb80f8bcfa309f12bf1bcb4b162684a01416cfbbaa76d3b81dff3fb08ff2f5e8644255cc22987
59 -DIST NVIDIA-Linux-x86-390.77.run 47933428 BLAKE2B 423c1ffc1ae8c84f862bfb416009ce04887d4c9203ae40e683c622525d295f2cadaca914c3231d685c9b0ea1314e0e0066bba545187619b5830f3ce273bc9405 SHA512 470e1e71079f4838bc842c2779f7c32c26c37ff30a0d3719d9e534ff0b71775fdf40446766c06505bffc404bfd6871e4f101de4727380418dda0d084e5637bf8
60 DIST NVIDIA-Linux-x86-390.87.run 47959124 BLAKE2B bb799a53b6d25ecd0e6013cea544402c25332efcedf0db5c490dc7ebfa064f97a31427d529f0453092e0f6495a996acb8ffcdd29dc1fed5fc8af31514d959c80 SHA512 18c5ef058098c0f055bada06888ee07da4d1455d90d393357483c289eab27969d49a593318d28e535941e7ebacde33e349f3a1cb2f7c627366ba5c6b7835ccbd
61 DIST NVIDIA-Linux-x86_64-304.137.run 70087133 BLAKE2B 8db0ade7cf64231ae11e6fc55a16a68a2f7b11a8bb7debb49799fee96eba06a3062b97fe539b093727623a1ed1067282813de047c2aeb89d93bf35a97c71aac5 SHA512 d7fae1e486005ffa2f2bf7f14f901bf5156fc784407a9acfea584f49bdab92ff5f4d0fb66c4c5b2800a461fc06aebb7d760bcb59f69ce4f2cb4e03e11816b3e9
62 DIST NVIDIA-Linux-x86_64-340.107.run 70233686 BLAKE2B 821a2672dcc3b546fbb3f826230fb06741503d75b06f72cb407dd3c9de4f2cbd150bff34e554dca8aa86e7f6bf64ce4f7f9b52976799a477c6c2659aaa5bb4d3 SHA512 51df9370526732db099a8a925d35cdf1317ae2b0ab2c130eaf82373f25186165b4af7d44f71e51e2a68f7d07c7ae3f441a6c6c4be8467003b15dc770c4f4e89b
63 @@ -47,12 +36,7 @@ DIST NVIDIA-Linux-x86_64-378.13.run 76239469 BLAKE2B 0f2be330645f8d9d2828fa6d159
64 DIST NVIDIA-Linux-x86_64-381.22.run 76581130 BLAKE2B fdb5912a775b56edf7dd784b640997fe683d0a32d57db6079dc5466a1a8dc1354cd31ff86aa1e993e0a33163e4c18f6a7aa990e334448ad069db3a5ffc4f1ffa SHA512 669a3dd0896d68ba8eef4689b01971b92ec1c54e6cf2a9ff8d3f281ae9f2fe402f079e76109b65e698d76798bcc7a9bb43da9d128fec59ac1fafafd1c4a1e42c
65 DIST NVIDIA-Linux-x86_64-384.130.run 82260837 BLAKE2B 55b6f3627680c881821f5d20f05cb6c7941b1deebf28f22f6712cac73d07e6202507c9f3b98eb8fc59ca8ed0c6aaa4819db5fc5a331f4505887dac6f31774335 SHA512 301fa7d9d73a0654e0090bf4bae98896388c1f52453f1b886e320e36765dc529f802c509a2d518714f2b348df59f9c9048e01b3874819bde4f53cf98aaa2cfff
66 DIST NVIDIA-Linux-x86_64-387.34.run 82784271 BLAKE2B b7140d5d6a693892df50b3ad2e20387673dec6b5ac609cc0300bdc4b4a93ca94849255699126e4d55e67f10e488bfe6008e987197ea239b1a1b643b4ae5c7808 SHA512 6742768f1258a028c9ba56ad1d72f27d7eea4b6bfd324ba29c7f057ab5819816bd728aeaf2a8058031dadcd4c51bc6d08f0e0e0e26c68ed57955e90d68ac5a4b
67 -DIST NVIDIA-Linux-x86_64-390.67.run 82272406 BLAKE2B b0aafce048e6cf62fde5d86a2829788575709250783922d7a77c48c978dcc36961e83e2c8335ae634bef11e75e92000ffa6c5fdca56a2e6213b152f8f06cd702 SHA512 51478099a0f28674b04e87e26e0e142a0e55cc089e325de791f6b3ed99ef8d7bab074cd97e5e5144d046e970616201b0eba59f55ad958e3c435311d40e3e8dae
68 -DIST NVIDIA-Linux-x86_64-390.77.run 82722543 BLAKE2B 46bc7b365b4a8bd2d9444ccccec0ef427a1bbf19546db21c01d765332e8ff12fd297991166895815c96bb8d1a6153df5178578ebfaffbf7875396a8bb5578ad8 SHA512 6273ab0dee2fb70a5675166d4a49059f2cb46528408e292ac334b6210eb54be7caa56479274404ab773a4e9ba4c5a9a2e0568cb5ca7f15dea448a59ec2e72cde
69 DIST NVIDIA-Linux-x86_64-390.87.run 82690871 BLAKE2B b43a45a7d48160a72185417360a4ff4238922f6d77c7b58c0562f0e01c8aa33e89057e8a5d354e8d3c8e6fa86acf8908a6c2eab81e06158a92908eec18a9b02e SHA512 f4883744f5e07150677918669eed03c7b87774f752112aabd52d903a09ae16351b34105075da2ff0fcb7a847cf66ec17e9797826859fcaecc44fdcd464a61805
70 -DIST NVIDIA-Linux-x86_64-396.24.run 86545234 BLAKE2B be297b4585275362608cb5119c9f7f77bcf7895bd1320603cb5f8034ee5f1dfa6d0150e58d4a11dd4656b50476d6cb6a372c18db54d33fdd685250ceb0793d3f SHA512 dfe837804d01e903cdf980353add0227362771cd252e4a7d8aff99fc489e5535edfda51ed1a20b9d60e23f1a9e7312f23309c59c67ff0a09a9b9214e52f09077
71 -DIST NVIDIA-Linux-x86_64-396.45.run 87016131 BLAKE2B 988392f69fc4f1f60acd03bee50245d836976728c81bbd21e5542b13e0bd93589a2bf8482d544e868f294e32de65b62c13512e465ec25afaae1ae405ae4beb3c SHA512 243253ebc83e4bc5116223ecaa29e55786a611484d9a0fba302f9f87961576bbd7f367422635725173662f013e27ef88a09f7282c9fe9912f9fe4665bdf06822
72 -DIST NVIDIA-Linux-x86_64-396.51.run 86541408 BLAKE2B 2cc41d2f6fe73a49c322828a9001383d8a23890a6d1d18593b649e18b77d2424fe588fdfbfd71fce6819a4620c4ba21d8e8ce7f2a8aa8411961099d40cf54edd SHA512 961c1a5b27a0f6cb54e387133a8d4038ddda0df39e70e84a637d8d64eaeb4ec937e37d6a737179d72750785614d20ade5e99f0668e3d53fef2cfa70241de4fe3
73 DIST NVIDIA-Linux-x86_64-396.54.run 86946680 BLAKE2B 9b3ab39c9d09c663238d0fac6346c24feea6ecc44b0ecaf3de871522697685c1c474ec4cc83f3bab0a2bcfecc7c77acea0e6bfee6e8ca8e6883bd338fd6da8a2 SHA512 17139abe99d4f32ec87379ee57af2cc0fec7d24605b2be7e3cd6609d9fcdf871e3c1cb7414b3544e14eb32d2213fec7ac45b3261f27c8d6565d510ccb14a1247
74 DIST nvidia-settings-304.137.tar.bz2 1481361 BLAKE2B cf52a55a34eeb03a685a683487af6a198ba467dd8ba9983cc75624a37a226373cd931d98e8448b7b8ed430c54be2118c7b240ed2a9100b19bec5e832e2f6cdad SHA512 676d1f70c9a78ee234f5f1a283412430a386fa604de211afba02806a45906c5e246a002989b724d74752178d28c92a268de1c98d4c87876797d991253f16b0cc
75 DIST nvidia-settings-340.107.tar.bz2 1549413 BLAKE2B 127442ee2c35ceec47ab4f103bdd2d0278c621fcb9be47051111f6f8728ef5699bdc95fe33a3812a807c38c4868b04c2176e2ed218a422171d2a88ac0c00de96 SHA512 593e7e83aa350a3a7beaaa32aca8660d7e203f6f2e460a6e6eabcdc092087f9917ee4e6d141e37ad4e3b0a1b9908c085e4a71d2f579e481a03bbd1c6f75ca776
76 @@ -61,10 +45,5 @@ DIST nvidia-settings-378.13.tar.gz 2112676 BLAKE2B 7e3e7c20986c184ddb08808706902
77 DIST nvidia-settings-381.22.tar.gz 2127491 BLAKE2B 7721ed9df7c01671a56a720e75768c80debe8520aed5a838e1e1d365651db2ae42b0cd21801c60aa18944f8d4751fadac206a388f1cf107a03a25ccb8aeb5c5f SHA512 79cd41b9c0e63b69574caddb62437132810ecb4cd07b90899976ae8535948f28d72021fc9a6969559909cf0f7a5d411b0202782970d64a82c636e7738c9d5681
78 DIST nvidia-settings-384.130.tar.bz2 1633217 BLAKE2B ffc1381e680e94aee95752074c39163e48082615f92c6184c01fc7d21e20bf18308d30960db0db602baf89b34fdd295a715692446d21fb2491056ec707e8b844 SHA512 3d878552a78234347f4e51920e8358e56b42d595375e8fd2b0520c3495b02d6fc3877d4346354145c420acd79ff1e9607c312330b2a2e27781a3a576f8860939
79 DIST nvidia-settings-387.34.tar.gz 1267616 BLAKE2B 62d2fd329417f54bf384918889603921065e0ef6d4fb691e914534a75ab0062a17d8f886c593cf772d29bb6b56ce30aaf7b1548191b2f9ad5fbee71770ed5308 SHA512 559c859c0740575ab93edce013587250b98d7d2cd55198b5103fe97423d31ed9f113d83c240c402404de88074c285a07e46342538610d3d5dade7bed59d60090
80 -DIST nvidia-settings-390.67.tar.bz2 1109133 BLAKE2B 3ac68f374d439c900ddbaa5eda9e3499b0f2b82871155d97319184feed0259a54d9c703d6ce98f03c15a5f47c9aa90f0684c298c7c380dbd112a67a3f89044e9 SHA512 b14df52ebf4640030ecc3a99aa42c97c361ba2c4c777a28813ab83e4ba120693b898a760846e2da33b81fc9ce2a6505c67e818ab3dc6fc580bb6cccbfcab695c
81 -DIST nvidia-settings-390.77.tar.bz2 1109358 BLAKE2B ee59fff5a679301b0e1f24fce3a13ee4e216d48afd73473a1ec3729067e85308d3df3b8ce1d4394b5a7836e40298c6623a0652ee3f23fbdd1a00ebdc82136f22 SHA512 130c8b9382984df597040475b29a8b61cad6eb76ef241214ab327f08a4c335176f3bda49a0c1a565a1bd8d64ab70cf1c00b7d316f343b7387dd03be7c9684f21
82 DIST nvidia-settings-390.87.tar.bz2 1109274 BLAKE2B 20eb809ceeade932e89592ac91071e6d3311f4a075812225d68342806b7ab1f9f8ed0399ea7a47241b7974311794852fd932fd8e824065589de6c124a3c81ef3 SHA512 cafdf2bfefac187409dfcffd593ff23eaba5ab7ab8dd85a9f14a4b6a47ffb3649af770bd2615887af9d30de3ef8fedaad7afc2ebe9f60a8ba7355a9004702959
83 -DIST nvidia-settings-396.24.tar.bz2 1115673 BLAKE2B 5b0bd156505e99a5b788fc61458c902cc1760d999b18c8c6309986d8c315eabc65cb2fea9ef6a823acbe57c4a11bf67938575afffb36fea91320416fe40a7507 SHA512 841470a324bb09683fcd863474f987a525a38213432be3bf4288a48671c674692f44642d260f3d2d0710e485e323153f867d0bda4cfa9b11d0e3c61a36370353
84 -DIST nvidia-settings-396.45.tar.bz2 1116216 BLAKE2B 85769b7e3152bf2ff029083d5e1cf695751fa713b9db858d77f344f19266b545e8f70a07dcb3b017dd6ab901e25df6acd15a1e584bc65efec1a3d24cdd56cfca SHA512 2ec1c1e2ba79a95c1199724c476b8433ea34b7c88acfabf9b49484073d8b0251a7f466bfe71f501772915ea77fdc34b4bc539fc62e8844a06c28af7570fe0bee
85 -DIST nvidia-settings-396.51.tar.bz2 1116520 BLAKE2B e7362bf71d0c7e595a17e398aacfe53ad845e1d29db6792e0d4e7769663c9eba1267c95c8a629473f7419d05ab48c02ff198bebee11db8a3d9de1ed4444c4124 SHA512 139fde3ab704562db5d7247b0ccd578260baf2650de24d6844a02439d6847681181681fb6bf84fc962434597259887b735b1cb2e596ab5112924d70ba4c6fc6f
86 DIST nvidia-settings-396.54.tar.bz2 1116371 BLAKE2B 114b88f393b0909c8d84a56a280854e258d0e7e7ce800ee58547ef68b4989f22a3bbb380795472b8222493a988dc9308fc20ef03c81589448b518a12285cf204 SHA512 23dc3c61bef71200b3e8185940dd52a50dae7ca7f2b8a68fa96eaa937aabc87ded5d5f73081af51d1e7af2b78b0ec10ab80d28dadbcf10a046c32ec14db1d83c
87
88 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-390.67.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-390.67.ebuild
89 deleted file mode 100644
90 index b5342ac68dd..00000000000
91 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-390.67.ebuild
92 +++ /dev/null
93 @@ -1,587 +0,0 @@
94 -# Copyright 1999-2018 Gentoo Foundation
95 -# Distributed under the terms of the GNU General Public License v2
96 -
97 -EAPI=6
98 -inherit eutils flag-o-matic linux-info linux-mod multilib-minimal nvidia-driver \
99 - portability toolchain-funcs unpacker user udev
100 -
101 -DESCRIPTION="NVIDIA Accelerated Graphics Driver"
102 -HOMEPAGE="http://www.nvidia.com/ http://www.nvidia.com/Download/Find.aspx"
103 -
104 -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
105 -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
106 -ARM_NV_PACKAGE="NVIDIA-Linux-armv7l-gnueabihf-${PV}"
107 -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
108 -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
109 -
110 -NV_URI="http://us.download.nvidia.com/XFree86/"
111 -SRC_URI="
112 - amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
113 - amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
114 - arm? ( ${NV_URI}Linux-x86-ARM/${PV}/${ARM_NV_PACKAGE}.run )
115 - x86-fbsd? ( ${NV_URI}FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )
116 - x86? ( ${NV_URI}Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
117 - tools? (
118 - https://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-${PV}.tar.bz2
119 - )
120 -"
121 -
122 -LICENSE="GPL-2 NVIDIA-r2"
123 -SLOT="0/${PV%.*}"
124 -KEYWORDS="-* amd64 x86 ~amd64-fbsd ~x86-fbsd"
125 -RESTRICT="bindist mirror"
126 -EMULTILIB_PKG="true"
127 -
128 -IUSE="acpi compat +driver gtk3 kernel_FreeBSD kernel_linux +kms multilib pax_kernel static-libs +tools uvm wayland +X"
129 -REQUIRED_USE="
130 - tools? ( X )
131 - static-libs? ( tools )
132 -"
133 -
134 -COMMON="
135 - app-eselect/eselect-opencl
136 - kernel_linux? ( >=sys-libs/glibc-2.6.1 )
137 - tools? (
138 - dev-libs/atk
139 - dev-libs/glib:2
140 - dev-libs/jansson
141 - gtk3? (
142 - x11-libs/gtk+:3
143 - )
144 - x11-libs/cairo
145 - x11-libs/gdk-pixbuf[X]
146 - x11-libs/gtk+:2
147 - x11-libs/libX11
148 - x11-libs/libXext
149 - x11-libs/libXrandr
150 - x11-libs/libXv
151 - x11-libs/libXxf86vm
152 - x11-libs/pango[X]
153 - )
154 - X? (
155 - >=app-eselect/eselect-opengl-1.0.9
156 - app-misc/pax-utils
157 - )
158 -"
159 -DEPEND="
160 - ${COMMON}
161 - kernel_linux? ( virtual/linux-sources )
162 - tools? ( sys-apps/dbus )
163 -"
164 -RDEPEND="
165 - ${COMMON}
166 - acpi? ( sys-power/acpid )
167 - tools? ( !media-video/nvidia-settings )
168 - wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] )
169 - X? (
170 - <x11-base/xorg-server-1.20.99:=
171 - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
172 - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
173 - >=x11-libs/libvdpau-1.0[${MULTILIB_USEDEP}]
174 - sys-libs/zlib[${MULTILIB_USEDEP}]
175 - )
176 -"
177 -QA_PREBUILT="opt/* usr/lib*"
178 -S=${WORKDIR}/
179 -
180 -nvidia_drivers_versions_check() {
181 - if use amd64 && has_multilib_profile && \
182 - [ "${DEFAULT_ABI}" != "amd64" ]; then
183 - eerror "This ebuild doesn't currently support changing your default ABI"
184 - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
185 - fi
186 -
187 - if use kernel_linux && kernel_is ge 4 18; then
188 - ewarn "Gentoo supports kernels which are supported by NVIDIA"
189 - ewarn "which are limited to the following kernels:"
190 - ewarn "<sys-kernel/gentoo-sources-4.18"
191 - ewarn "<sys-kernel/vanilla-sources-4.18"
192 - ewarn ""
193 - ewarn "You are free to utilize epatch_user to provide whatever"
194 - ewarn "support you feel is appropriate, but will not receive"
195 - ewarn "support as a result of those changes."
196 - ewarn ""
197 - ewarn "Do not file a bug report about this."
198 - ewarn ""
199 - fi
200 -
201 - # Since Nvidia ships many different series of drivers, we need to give the user
202 - # some kind of guidance as to what version they should install. This tries
203 - # to point the user in the right direction but can't be perfect. check
204 - # nvidia-driver.eclass
205 - nvidia-driver-check-warning
206 -
207 - # Kernel features/options to check for
208 - CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP"
209 - use x86 && CONFIG_CHECK+=" ~HIGHMEM"
210 -
211 - # Now do the above checks
212 - use kernel_linux && check_extra_config
213 -}
214 -
215 -pkg_pretend() {
216 - nvidia_drivers_versions_check
217 -}
218 -
219 -pkg_setup() {
220 - nvidia_drivers_versions_check
221 -
222 - # try to turn off distcc and ccache for people that have a problem with it
223 - export DISTCC_DISABLE=1
224 - export CCACHE_DISABLE=1
225 -
226 - if use driver && use kernel_linux; then
227 - MODULE_NAMES="nvidia(video:${S}/kernel)"
228 - use uvm && MODULE_NAMES+=" nvidia-uvm(video:${S}/kernel)"
229 - use kms && MODULE_NAMES+=" nvidia-modeset(video:${S}/kernel) nvidia-drm(video:${S}/kernel)"
230 -
231 - # This needs to run after MODULE_NAMES (so that the eclass checks
232 - # whether the kernel supports loadable modules) but before BUILD_PARAMS
233 - # is set (so that KV_DIR is populated).
234 - linux-mod_pkg_setup
235 -
236 - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
237 - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC) NV_VERBOSE=1"
238 -
239 - # linux-mod_src_compile calls set_arch_to_kernel, which
240 - # sets the ARCH to x86 but NVIDIA's wrapping Makefile
241 - # expects x86_64 or i386 and then converts it to x86
242 - # later on in the build process
243 - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
244 - fi
245 -
246 - if use kernel_linux && kernel_is lt 2 6 9; then
247 - eerror "You must build this against 2.6.9 or higher kernels."
248 - fi
249 -
250 - # set variables to where files are in the package structure
251 - if use kernel_FreeBSD; then
252 - use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}"
253 - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
254 - NV_DOC="${S}/doc"
255 - NV_OBJ="${S}/obj"
256 - NV_SRC="${S}/src"
257 - NV_MAN="${S}/x11/man"
258 - NV_X11="${S}/obj"
259 - NV_SOVER=1
260 - elif use kernel_linux; then
261 - NV_DOC="${S}"
262 - NV_OBJ="${S}"
263 - NV_SRC="${S}/kernel"
264 - NV_MAN="${S}"
265 - NV_X11="${S}"
266 - NV_SOVER=${PV}
267 - else
268 - die "Could not determine proper NVIDIA package"
269 - fi
270 -}
271 -
272 -src_prepare() {
273 - if use pax_kernel; then
274 - ewarn "Using PAX patches is not supported. You will be asked to"
275 - ewarn "use a standard kernel should you have issues. Should you"
276 - ewarn "need support with these patches, contact the PaX team."
277 - eapply "${FILESDIR}"/${PN}-375.20-pax.patch
278 - fi
279 -
280 - local man_file
281 - for man_file in "${NV_MAN}"/*1.gz; do
282 - gunzip $man_file || die
283 - done
284 -
285 - if use tools; then
286 - cp "${FILESDIR}"/nvidia-settings-linker.patch "${WORKDIR}" || die
287 - sed -i \
288 - -e "s:@PV@:${PV}:g" \
289 - "${WORKDIR}"/nvidia-settings-linker.patch || die
290 - eapply "${WORKDIR}"/nvidia-settings-linker.patch
291 - fi
292 -
293 - default
294 -
295 - if ! [ -f nvidia_icd.json ]; then
296 - cp nvidia_icd.json.template nvidia_icd.json || die
297 - sed -i -e 's:__NV_VK_ICD__:libGLX_nvidia.so.0:g' nvidia_icd.json || die
298 - fi
299 -}
300 -
301 -src_compile() {
302 - # This is already the default on Linux, as there's no toplevel Makefile, but
303 - # on FreeBSD there's one and triggers the kernel module build, as we install
304 - # it by itself, pass this.
305 -
306 - cd "${NV_SRC}"
307 - if use kernel_FreeBSD; then
308 - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
309 - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
310 - elif use driver && use kernel_linux; then
311 - MAKEOPTS=-j1 linux-mod_src_compile
312 - fi
313 -
314 - if use tools; then
315 - emake -C "${S}"/nvidia-settings-${PV}/src \
316 - AR="$(tc-getAR)" \
317 - CC="$(tc-getCC)" \
318 - DO_STRIP= \
319 - LD="$(tc-getCC)" \
320 - LIBDIR="$(get_libdir)" \
321 - NVLD="$(tc-getLD)" \
322 - NV_VERBOSE=1 \
323 - RANLIB="$(tc-getRANLIB)" \
324 - build-xnvctrl
325 -
326 - emake -C "${S}"/nvidia-settings-${PV}/src \
327 - CC="$(tc-getCC)" \
328 - DO_STRIP= \
329 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
330 - LD="$(tc-getCC)" \
331 - LIBDIR="$(get_libdir)" \
332 - NVLD="$(tc-getLD)" \
333 - NVML_ENABLED=0 \
334 - NV_USE_BUNDLED_LIBJANSSON=0 \
335 - NV_VERBOSE=1
336 - fi
337 -}
338 -
339 -# Install nvidia library:
340 -# the first parameter is the library to install
341 -# the second parameter is the provided soversion
342 -# the third parameter is the target directory if it is not /usr/lib
343 -donvidia() {
344 - # Full path to library
345 - nv_LIB="${1}"
346 -
347 - # SOVER to use
348 - nv_SOVER="$(scanelf -qF'%S#F' ${nv_LIB})"
349 -
350 - # Where to install
351 - nv_DEST="${2}"
352 -
353 - # Get just the library name
354 - nv_LIBNAME=$(basename "${nv_LIB}")
355 -
356 - if [[ "${nv_DEST}" ]]; then
357 - exeinto ${nv_DEST}
358 - action="doexe"
359 - else
360 - nv_DEST="/usr/$(get_libdir)"
361 - action="dolib.so"
362 - fi
363 -
364 - # Install the library
365 - ${action} ${nv_LIB} || die "failed to install ${nv_LIBNAME}"
366 -
367 - # If the library has a SONAME and SONAME does not match the library name,
368 - # then we need to create a symlink
369 - if [[ ${nv_SOVER} ]] && ! [[ "${nv_SOVER}" = "${nv_LIBNAME}" ]]; then
370 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_SOVER} \
371 - || die "failed to create ${nv_DEST}/${nv_SOVER} symlink"
372 - fi
373 -
374 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_LIBNAME/.so*/.so} \
375 - || die "failed to create ${nv_LIBNAME/.so*/.so} symlink"
376 -}
377 -
378 -src_install() {
379 - if use driver && use kernel_linux; then
380 - linux-mod_src_install
381 -
382 - # Add the aliases
383 - # This file is tweaked with the appropriate video group in
384 - # pkg_preinst, see bug #491414
385 - insinto /etc/modprobe.d
386 - newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
387 - doins "${FILESDIR}"/nvidia-rmmod.conf
388 -
389 - # Ensures that our device nodes are created when not using X
390 - exeinto "$(get_udevdir)"
391 - newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh
392 - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
393 - elif use kernel_FreeBSD; then
394 - if use x86-fbsd; then
395 - insinto /boot/modules
396 - doins "${S}/src/nvidia.kld"
397 - fi
398 -
399 - exeinto /boot/modules
400 - doexe "${S}/src/nvidia.ko"
401 - fi
402 -
403 - # NVIDIA kernel <-> userspace driver config lib
404 - donvidia ${NV_OBJ}/libnvidia-cfg.so.${NV_SOVER}
405 -
406 - # NVIDIA framebuffer capture library
407 - donvidia ${NV_OBJ}/libnvidia-fbc.so.${NV_SOVER}
408 -
409 - # NVIDIA video encode/decode <-> CUDA
410 - if use kernel_linux; then
411 - donvidia ${NV_OBJ}/libnvcuvid.so.${NV_SOVER}
412 - donvidia ${NV_OBJ}/libnvidia-encode.so.${NV_SOVER}
413 - fi
414 -
415 - if use X; then
416 - # Xorg DDX driver
417 - insinto /usr/$(get_libdir)/xorg/modules/drivers
418 - doins ${NV_X11}/nvidia_drv.so
419 -
420 - # Xorg GLX driver
421 - donvidia ${NV_X11}/libglx.so.${NV_SOVER} \
422 - /usr/$(get_libdir)/opengl/nvidia/extensions
423 -
424 - # Xorg nvidia.conf
425 - if has_version '>=x11-base/xorg-server-1.16'; then
426 - insinto /usr/share/X11/xorg.conf.d
427 - newins {,50-}nvidia-drm-outputclass.conf
428 - fi
429 -
430 - insinto /usr/share/glvnd/egl_vendor.d
431 - doins ${NV_X11}/10_nvidia.json
432 - fi
433 -
434 - if use wayland; then
435 - insinto /usr/share/egl/egl_external_platform.d
436 - doins ${NV_X11}/10_nvidia_wayland.json
437 - fi
438 -
439 - # OpenCL ICD for NVIDIA
440 - if use kernel_linux; then
441 - insinto /etc/OpenCL/vendors
442 - doins ${NV_OBJ}/nvidia.icd
443 - fi
444 -
445 - # Documentation
446 - if use kernel_FreeBSD; then
447 - dodoc "${NV_DOC}/README"
448 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
449 - use tools && doman "${NV_MAN}"/nvidia-settings.1
450 - else
451 - # Docs
452 - newdoc "${NV_DOC}/README.txt" README
453 - dodoc "${NV_DOC}/NVIDIA_Changelog"
454 - doman "${NV_MAN}"/nvidia-smi.1
455 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
456 - use tools && doman "${NV_MAN}"/nvidia-settings.1
457 - doman "${NV_MAN}"/nvidia-cuda-mps-control.1
458 - fi
459 -
460 - docinto html
461 - dodoc -r ${NV_DOC}/html/*
462 -
463 - # Helper Apps
464 - exeinto /opt/bin/
465 -
466 - if use X; then
467 - doexe ${NV_OBJ}/nvidia-xconfig
468 -
469 - insinto /etc/vulkan/icd.d
470 - doins nvidia_icd.json
471 - fi
472 -
473 - if use kernel_linux; then
474 - doexe ${NV_OBJ}/nvidia-cuda-mps-control
475 - doexe ${NV_OBJ}/nvidia-cuda-mps-server
476 - doexe ${NV_OBJ}/nvidia-debugdump
477 - doexe ${NV_OBJ}/nvidia-persistenced
478 - doexe ${NV_OBJ}/nvidia-smi
479 -
480 - # install nvidia-modprobe setuid and symlink in /usr/bin (bug #505092)
481 - doexe ${NV_OBJ}/nvidia-modprobe
482 - fowners root:video /opt/bin/nvidia-modprobe
483 - fperms 4710 /opt/bin/nvidia-modprobe
484 - dosym /{opt,usr}/bin/nvidia-modprobe
485 -
486 - doman nvidia-cuda-mps-control.1
487 - doman nvidia-modprobe.1
488 - doman nvidia-persistenced.1
489 - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
490 - newconfd "${FILESDIR}/nvidia-persistenced.conf" nvidia-persistenced
491 - newinitd "${FILESDIR}/nvidia-persistenced.init" nvidia-persistenced
492 - fi
493 -
494 - if use tools; then
495 - emake -C "${S}"/nvidia-settings-${PV}/src/ \
496 - DESTDIR="${D}" \
497 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
498 - LIBDIR="${D}/usr/$(get_libdir)" \
499 - NV_USE_BUNDLED_LIBJANSSON=0 \
500 - NV_VERBOSE=1 \
501 - PREFIX=/usr \
502 - DO_STRIP= \
503 - install
504 -
505 - if use static-libs; then
506 - dolib.a "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
507 -
508 - insinto /usr/include/NVCtrl
509 - doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
510 - fi
511 -
512 - insinto /usr/share/nvidia/
513 - doins nvidia-application-profiles-${PV}-key-documentation
514 -
515 - insinto /etc/nvidia
516 - newins \
517 - nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc
518 -
519 - # There is no icon in the FreeBSD tarball.
520 - use kernel_FreeBSD || \
521 - doicon ${NV_OBJ}/nvidia-settings.png
522 -
523 - domenu "${FILESDIR}"/nvidia-settings.desktop
524 -
525 - exeinto /etc/X11/xinit/xinitrc.d
526 - newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
527 - fi
528 -
529 - dobin ${NV_OBJ}/nvidia-bug-report.sh
530 -
531 - if has_multilib_profile && use multilib; then
532 - local OABI=${ABI}
533 - for ABI in $(get_install_abis); do
534 - src_install-libs
535 - done
536 - ABI=${OABI}
537 - unset OABI
538 - else
539 - src_install-libs
540 - fi
541 -
542 - is_final_abi || die "failed to iterate through all ABIs"
543 -
544 - readme.gentoo_create_doc
545 -}
546 -
547 -src_install-libs() {
548 - local inslibdir=$(get_libdir)
549 - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
550 - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
551 - local nv_libdir="${NV_OBJ}"
552 -
553 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "x86" ]]; then
554 - nv_libdir="${NV_OBJ}"/32
555 - fi
556 -
557 - if use X; then
558 - NV_GLX_LIBRARIES=(
559 - "libEGL.so.$(usex compat ${NV_SOVER} 1.1.0) ${GL_ROOT}"
560 - "libEGL_nvidia.so.${NV_SOVER} ${GL_ROOT}"
561 - "libGL.so.$(usex compat ${NV_SOVER} 1.7.0) ${GL_ROOT}"
562 - "libGLESv1_CM.so.1.2.0 ${GL_ROOT}"
563 - "libGLESv1_CM_nvidia.so.${NV_SOVER} ${GL_ROOT}"
564 - "libGLESv2.so.2.1.0 ${GL_ROOT}"
565 - "libGLESv2_nvidia.so.${NV_SOVER} ${GL_ROOT}"
566 - "libGLX.so.0 ${GL_ROOT}"
567 - "libGLX_nvidia.so.${NV_SOVER} ${GL_ROOT}"
568 - "libGLdispatch.so.0 ${GL_ROOT}"
569 - "libOpenCL.so.1.0.0 ${CL_ROOT}"
570 - "libOpenGL.so.0 ${GL_ROOT}"
571 - "libcuda.so.${NV_SOVER}"
572 - "libnvcuvid.so.${NV_SOVER}"
573 - "libnvidia-compiler.so.${NV_SOVER}"
574 - "libnvidia-eglcore.so.${NV_SOVER}"
575 - "libnvidia-encode.so.${NV_SOVER}"
576 - "libnvidia-fatbinaryloader.so.${NV_SOVER}"
577 - "libnvidia-fbc.so.${NV_SOVER}"
578 - "libnvidia-glcore.so.${NV_SOVER}"
579 - "libnvidia-glsi.so.${NV_SOVER}"
580 - "libnvidia-ifr.so.${NV_SOVER}"
581 - "libnvidia-opencl.so.${NV_SOVER}"
582 - "libnvidia-ptxjitcompiler.so.${NV_SOVER}"
583 - "libvdpau_nvidia.so.${NV_SOVER}"
584 - )
585 -
586 - if use wayland && has_multilib_profile && [[ ${ABI} == "amd64" ]];
587 - then
588 - NV_GLX_LIBRARIES+=(
589 - "libnvidia-egl-wayland.so.1.0.2"
590 - )
591 - fi
592 -
593 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "amd64" ]];
594 - then
595 - NV_GLX_LIBRARIES+=(
596 - "libnvidia-wfb.so.${NV_SOVER}"
597 - )
598 - fi
599 -
600 - if use kernel_FreeBSD; then
601 - NV_GLX_LIBRARIES+=(
602 - "libnvidia-tls.so.${NV_SOVER}"
603 - )
604 - fi
605 -
606 - if use kernel_linux; then
607 - NV_GLX_LIBRARIES+=(
608 - "libnvidia-ml.so.${NV_SOVER}"
609 - "tls/libnvidia-tls.so.${NV_SOVER}"
610 - )
611 - fi
612 -
613 - for NV_LIB in "${NV_GLX_LIBRARIES[@]}"; do
614 - donvidia "${nv_libdir}"/${NV_LIB}
615 - done
616 - fi
617 -}
618 -
619 -pkg_preinst() {
620 - if use driver && use kernel_linux; then
621 - linux-mod_pkg_preinst
622 -
623 - local videogroup="$(egetent group video | cut -d ':' -f 3)"
624 - if [ -z "${videogroup}" ]; then
625 - eerror "Failed to determine the video group gid"
626 - die "Failed to determine the video group gid"
627 - else
628 - sed -i \
629 - -e "s:PACKAGE:${PF}:g" \
630 - -e "s:VIDEOGID:${videogroup}:" \
631 - "${D}"/etc/modprobe.d/nvidia.conf || die
632 - fi
633 - fi
634 -
635 - # Clean the dynamic libGL stuff's home to ensure
636 - # we dont have stale libs floating around
637 - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ]; then
638 - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
639 - fi
640 - # Make sure we nuke the old nvidia-glx's env.d file
641 - if [ -e "${ROOT}"/etc/env.d/09nvidia ]; then
642 - rm -f "${ROOT}"/etc/env.d/09nvidia
643 - fi
644 -}
645 -
646 -pkg_postinst() {
647 - use driver && use kernel_linux && linux-mod_pkg_postinst
648 -
649 - # Switch to the nvidia implementation
650 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
651 - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
652 -
653 - readme.gentoo_print_elog
654 -
655 - if ! use X; then
656 - elog "You have elected to not install the X.org driver. Along with"
657 - elog "this the OpenGL libraries and VDPAU libraries were not"
658 - elog "installed. Additionally, once the driver is loaded your card"
659 - elog "and fan will run at max speed which may not be desirable."
660 - elog "Use the 'nvidia-smi' init script to have your card and fan"
661 - elog "speed scale appropriately."
662 - elog
663 - fi
664 - if ! use tools; then
665 - elog "USE=tools controls whether the nvidia-settings application"
666 - elog "is installed. If you would like to use it, enable that"
667 - elog "flag and re-emerge this ebuild. Optionally you can install"
668 - elog "media-video/nvidia-settings"
669 - elog
670 - fi
671 -}
672 -
673 -pkg_prerm() {
674 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
675 -}
676 -
677 -pkg_postrm() {
678 - use driver && use kernel_linux && linux-mod_pkg_postrm
679 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
680 -}
681
682 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-390.77.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-390.77.ebuild
683 deleted file mode 100644
684 index f8684eb41ce..00000000000
685 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-390.77.ebuild
686 +++ /dev/null
687 @@ -1,587 +0,0 @@
688 -# Copyright 1999-2018 Gentoo Foundation
689 -# Distributed under the terms of the GNU General Public License v2
690 -
691 -EAPI=6
692 -inherit eutils flag-o-matic linux-info linux-mod multilib-minimal nvidia-driver \
693 - portability toolchain-funcs unpacker user udev
694 -
695 -DESCRIPTION="NVIDIA Accelerated Graphics Driver"
696 -HOMEPAGE="http://www.nvidia.com/ http://www.nvidia.com/Download/Find.aspx"
697 -
698 -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
699 -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
700 -ARM_NV_PACKAGE="NVIDIA-Linux-armv7l-gnueabihf-${PV}"
701 -X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
702 -X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
703 -
704 -NV_URI="http://us.download.nvidia.com/XFree86/"
705 -SRC_URI="
706 - amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
707 - amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
708 - arm? ( ${NV_URI}Linux-x86-ARM/${PV}/${ARM_NV_PACKAGE}.run )
709 - x86-fbsd? ( ${NV_URI}FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )
710 - x86? ( ${NV_URI}Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
711 - tools? (
712 - https://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-${PV}.tar.bz2
713 - )
714 -"
715 -
716 -LICENSE="GPL-2 NVIDIA-r2"
717 -SLOT="0/${PV%.*}"
718 -KEYWORDS="-* ~amd64 ~x86 ~amd64-fbsd ~x86-fbsd"
719 -RESTRICT="bindist mirror"
720 -EMULTILIB_PKG="true"
721 -
722 -IUSE="acpi compat +driver gtk3 kernel_FreeBSD kernel_linux +kms multilib pax_kernel static-libs +tools uvm wayland +X"
723 -REQUIRED_USE="
724 - tools? ( X )
725 - static-libs? ( tools )
726 -"
727 -
728 -COMMON="
729 - app-eselect/eselect-opencl
730 - kernel_linux? ( >=sys-libs/glibc-2.6.1 )
731 - tools? (
732 - dev-libs/atk
733 - dev-libs/glib:2
734 - dev-libs/jansson
735 - gtk3? (
736 - x11-libs/gtk+:3
737 - )
738 - x11-libs/cairo
739 - x11-libs/gdk-pixbuf[X]
740 - x11-libs/gtk+:2
741 - x11-libs/libX11
742 - x11-libs/libXext
743 - x11-libs/libXrandr
744 - x11-libs/libXv
745 - x11-libs/libXxf86vm
746 - x11-libs/pango[X]
747 - )
748 - X? (
749 - >=app-eselect/eselect-opengl-1.0.9
750 - app-misc/pax-utils
751 - )
752 -"
753 -DEPEND="
754 - ${COMMON}
755 - kernel_linux? ( virtual/linux-sources )
756 - tools? ( sys-apps/dbus )
757 -"
758 -RDEPEND="
759 - ${COMMON}
760 - acpi? ( sys-power/acpid )
761 - tools? ( !media-video/nvidia-settings )
762 - wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] )
763 - X? (
764 - <x11-base/xorg-server-1.20.99:=
765 - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
766 - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
767 - >=x11-libs/libvdpau-1.0[${MULTILIB_USEDEP}]
768 - sys-libs/zlib[${MULTILIB_USEDEP}]
769 - )
770 -"
771 -QA_PREBUILT="opt/* usr/lib*"
772 -S=${WORKDIR}/
773 -
774 -nvidia_drivers_versions_check() {
775 - if use amd64 && has_multilib_profile && \
776 - [ "${DEFAULT_ABI}" != "amd64" ]; then
777 - eerror "This ebuild doesn't currently support changing your default ABI"
778 - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
779 - fi
780 -
781 - if use kernel_linux && kernel_is ge 4 18; then
782 - ewarn "Gentoo supports kernels which are supported by NVIDIA"
783 - ewarn "which are limited to the following kernels:"
784 - ewarn "<sys-kernel/gentoo-sources-4.18"
785 - ewarn "<sys-kernel/vanilla-sources-4.18"
786 - ewarn ""
787 - ewarn "You are free to utilize epatch_user to provide whatever"
788 - ewarn "support you feel is appropriate, but will not receive"
789 - ewarn "support as a result of those changes."
790 - ewarn ""
791 - ewarn "Do not file a bug report about this."
792 - ewarn ""
793 - fi
794 -
795 - # Since Nvidia ships many different series of drivers, we need to give the user
796 - # some kind of guidance as to what version they should install. This tries
797 - # to point the user in the right direction but can't be perfect. check
798 - # nvidia-driver.eclass
799 - nvidia-driver-check-warning
800 -
801 - # Kernel features/options to check for
802 - CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP"
803 - use x86 && CONFIG_CHECK+=" ~HIGHMEM"
804 -
805 - # Now do the above checks
806 - use kernel_linux && check_extra_config
807 -}
808 -
809 -pkg_pretend() {
810 - nvidia_drivers_versions_check
811 -}
812 -
813 -pkg_setup() {
814 - nvidia_drivers_versions_check
815 -
816 - # try to turn off distcc and ccache for people that have a problem with it
817 - export DISTCC_DISABLE=1
818 - export CCACHE_DISABLE=1
819 -
820 - if use driver && use kernel_linux; then
821 - MODULE_NAMES="nvidia(video:${S}/kernel)"
822 - use uvm && MODULE_NAMES+=" nvidia-uvm(video:${S}/kernel)"
823 - use kms && MODULE_NAMES+=" nvidia-modeset(video:${S}/kernel) nvidia-drm(video:${S}/kernel)"
824 -
825 - # This needs to run after MODULE_NAMES (so that the eclass checks
826 - # whether the kernel supports loadable modules) but before BUILD_PARAMS
827 - # is set (so that KV_DIR is populated).
828 - linux-mod_pkg_setup
829 -
830 - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
831 - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC) NV_VERBOSE=1"
832 -
833 - # linux-mod_src_compile calls set_arch_to_kernel, which
834 - # sets the ARCH to x86 but NVIDIA's wrapping Makefile
835 - # expects x86_64 or i386 and then converts it to x86
836 - # later on in the build process
837 - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
838 - fi
839 -
840 - if use kernel_linux && kernel_is lt 2 6 9; then
841 - eerror "You must build this against 2.6.9 or higher kernels."
842 - fi
843 -
844 - # set variables to where files are in the package structure
845 - if use kernel_FreeBSD; then
846 - use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}"
847 - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
848 - NV_DOC="${S}/doc"
849 - NV_OBJ="${S}/obj"
850 - NV_SRC="${S}/src"
851 - NV_MAN="${S}/x11/man"
852 - NV_X11="${S}/obj"
853 - NV_SOVER=1
854 - elif use kernel_linux; then
855 - NV_DOC="${S}"
856 - NV_OBJ="${S}"
857 - NV_SRC="${S}/kernel"
858 - NV_MAN="${S}"
859 - NV_X11="${S}"
860 - NV_SOVER=${PV}
861 - else
862 - die "Could not determine proper NVIDIA package"
863 - fi
864 -}
865 -
866 -src_prepare() {
867 - if use pax_kernel; then
868 - ewarn "Using PAX patches is not supported. You will be asked to"
869 - ewarn "use a standard kernel should you have issues. Should you"
870 - ewarn "need support with these patches, contact the PaX team."
871 - eapply "${FILESDIR}"/${PN}-375.20-pax.patch
872 - fi
873 -
874 - local man_file
875 - for man_file in "${NV_MAN}"/*1.gz; do
876 - gunzip $man_file || die
877 - done
878 -
879 - if use tools; then
880 - cp "${FILESDIR}"/nvidia-settings-linker.patch "${WORKDIR}" || die
881 - sed -i \
882 - -e "s:@PV@:${PV}:g" \
883 - "${WORKDIR}"/nvidia-settings-linker.patch || die
884 - eapply "${WORKDIR}"/nvidia-settings-linker.patch
885 - fi
886 -
887 - default
888 -
889 - if ! [ -f nvidia_icd.json ]; then
890 - cp nvidia_icd.json.template nvidia_icd.json || die
891 - sed -i -e 's:__NV_VK_ICD__:libGLX_nvidia.so.0:g' nvidia_icd.json || die
892 - fi
893 -}
894 -
895 -src_compile() {
896 - # This is already the default on Linux, as there's no toplevel Makefile, but
897 - # on FreeBSD there's one and triggers the kernel module build, as we install
898 - # it by itself, pass this.
899 -
900 - cd "${NV_SRC}"
901 - if use kernel_FreeBSD; then
902 - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
903 - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
904 - elif use driver && use kernel_linux; then
905 - MAKEOPTS=-j1 linux-mod_src_compile
906 - fi
907 -
908 - if use tools; then
909 - emake -C "${S}"/nvidia-settings-${PV}/src \
910 - AR="$(tc-getAR)" \
911 - CC="$(tc-getCC)" \
912 - DO_STRIP= \
913 - LD="$(tc-getCC)" \
914 - LIBDIR="$(get_libdir)" \
915 - NVLD="$(tc-getLD)" \
916 - NV_VERBOSE=1 \
917 - RANLIB="$(tc-getRANLIB)" \
918 - build-xnvctrl
919 -
920 - emake -C "${S}"/nvidia-settings-${PV}/src \
921 - CC="$(tc-getCC)" \
922 - DO_STRIP= \
923 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
924 - LD="$(tc-getCC)" \
925 - LIBDIR="$(get_libdir)" \
926 - NVLD="$(tc-getLD)" \
927 - NVML_ENABLED=0 \
928 - NV_USE_BUNDLED_LIBJANSSON=0 \
929 - NV_VERBOSE=1
930 - fi
931 -}
932 -
933 -# Install nvidia library:
934 -# the first parameter is the library to install
935 -# the second parameter is the provided soversion
936 -# the third parameter is the target directory if it is not /usr/lib
937 -donvidia() {
938 - # Full path to library
939 - nv_LIB="${1}"
940 -
941 - # SOVER to use
942 - nv_SOVER="$(scanelf -qF'%S#F' ${nv_LIB})"
943 -
944 - # Where to install
945 - nv_DEST="${2}"
946 -
947 - # Get just the library name
948 - nv_LIBNAME=$(basename "${nv_LIB}")
949 -
950 - if [[ "${nv_DEST}" ]]; then
951 - exeinto ${nv_DEST}
952 - action="doexe"
953 - else
954 - nv_DEST="/usr/$(get_libdir)"
955 - action="dolib.so"
956 - fi
957 -
958 - # Install the library
959 - ${action} ${nv_LIB} || die "failed to install ${nv_LIBNAME}"
960 -
961 - # If the library has a SONAME and SONAME does not match the library name,
962 - # then we need to create a symlink
963 - if [[ ${nv_SOVER} ]] && ! [[ "${nv_SOVER}" = "${nv_LIBNAME}" ]]; then
964 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_SOVER} \
965 - || die "failed to create ${nv_DEST}/${nv_SOVER} symlink"
966 - fi
967 -
968 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_LIBNAME/.so*/.so} \
969 - || die "failed to create ${nv_LIBNAME/.so*/.so} symlink"
970 -}
971 -
972 -src_install() {
973 - if use driver && use kernel_linux; then
974 - linux-mod_src_install
975 -
976 - # Add the aliases
977 - # This file is tweaked with the appropriate video group in
978 - # pkg_preinst, see bug #491414
979 - insinto /etc/modprobe.d
980 - newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
981 - doins "${FILESDIR}"/nvidia-rmmod.conf
982 -
983 - # Ensures that our device nodes are created when not using X
984 - exeinto "$(get_udevdir)"
985 - newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh
986 - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
987 - elif use kernel_FreeBSD; then
988 - if use x86-fbsd; then
989 - insinto /boot/modules
990 - doins "${S}/src/nvidia.kld"
991 - fi
992 -
993 - exeinto /boot/modules
994 - doexe "${S}/src/nvidia.ko"
995 - fi
996 -
997 - # NVIDIA kernel <-> userspace driver config lib
998 - donvidia ${NV_OBJ}/libnvidia-cfg.so.${NV_SOVER}
999 -
1000 - # NVIDIA framebuffer capture library
1001 - donvidia ${NV_OBJ}/libnvidia-fbc.so.${NV_SOVER}
1002 -
1003 - # NVIDIA video encode/decode <-> CUDA
1004 - if use kernel_linux; then
1005 - donvidia ${NV_OBJ}/libnvcuvid.so.${NV_SOVER}
1006 - donvidia ${NV_OBJ}/libnvidia-encode.so.${NV_SOVER}
1007 - fi
1008 -
1009 - if use X; then
1010 - # Xorg DDX driver
1011 - insinto /usr/$(get_libdir)/xorg/modules/drivers
1012 - doins ${NV_X11}/nvidia_drv.so
1013 -
1014 - # Xorg GLX driver
1015 - donvidia ${NV_X11}/libglx.so.${NV_SOVER} \
1016 - /usr/$(get_libdir)/opengl/nvidia/extensions
1017 -
1018 - # Xorg nvidia.conf
1019 - if has_version '>=x11-base/xorg-server-1.16'; then
1020 - insinto /usr/share/X11/xorg.conf.d
1021 - newins {,50-}nvidia-drm-outputclass.conf
1022 - fi
1023 -
1024 - insinto /usr/share/glvnd/egl_vendor.d
1025 - doins ${NV_X11}/10_nvidia.json
1026 - fi
1027 -
1028 - if use wayland; then
1029 - insinto /usr/share/egl/egl_external_platform.d
1030 - doins ${NV_X11}/10_nvidia_wayland.json
1031 - fi
1032 -
1033 - # OpenCL ICD for NVIDIA
1034 - if use kernel_linux; then
1035 - insinto /etc/OpenCL/vendors
1036 - doins ${NV_OBJ}/nvidia.icd
1037 - fi
1038 -
1039 - # Documentation
1040 - if use kernel_FreeBSD; then
1041 - dodoc "${NV_DOC}/README"
1042 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
1043 - use tools && doman "${NV_MAN}"/nvidia-settings.1
1044 - else
1045 - # Docs
1046 - newdoc "${NV_DOC}/README.txt" README
1047 - dodoc "${NV_DOC}/NVIDIA_Changelog"
1048 - doman "${NV_MAN}"/nvidia-smi.1
1049 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
1050 - use tools && doman "${NV_MAN}"/nvidia-settings.1
1051 - doman "${NV_MAN}"/nvidia-cuda-mps-control.1
1052 - fi
1053 -
1054 - docinto html
1055 - dodoc -r ${NV_DOC}/html/*
1056 -
1057 - # Helper Apps
1058 - exeinto /opt/bin/
1059 -
1060 - if use X; then
1061 - doexe ${NV_OBJ}/nvidia-xconfig
1062 -
1063 - insinto /etc/vulkan/icd.d
1064 - doins nvidia_icd.json
1065 - fi
1066 -
1067 - if use kernel_linux; then
1068 - doexe ${NV_OBJ}/nvidia-cuda-mps-control
1069 - doexe ${NV_OBJ}/nvidia-cuda-mps-server
1070 - doexe ${NV_OBJ}/nvidia-debugdump
1071 - doexe ${NV_OBJ}/nvidia-persistenced
1072 - doexe ${NV_OBJ}/nvidia-smi
1073 -
1074 - # install nvidia-modprobe setuid and symlink in /usr/bin (bug #505092)
1075 - doexe ${NV_OBJ}/nvidia-modprobe
1076 - fowners root:video /opt/bin/nvidia-modprobe
1077 - fperms 4710 /opt/bin/nvidia-modprobe
1078 - dosym /{opt,usr}/bin/nvidia-modprobe
1079 -
1080 - doman nvidia-cuda-mps-control.1
1081 - doman nvidia-modprobe.1
1082 - doman nvidia-persistenced.1
1083 - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
1084 - newconfd "${FILESDIR}/nvidia-persistenced.conf" nvidia-persistenced
1085 - newinitd "${FILESDIR}/nvidia-persistenced.init" nvidia-persistenced
1086 - fi
1087 -
1088 - if use tools; then
1089 - emake -C "${S}"/nvidia-settings-${PV}/src/ \
1090 - DESTDIR="${D}" \
1091 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
1092 - LIBDIR="${D}/usr/$(get_libdir)" \
1093 - NV_USE_BUNDLED_LIBJANSSON=0 \
1094 - NV_VERBOSE=1 \
1095 - PREFIX=/usr \
1096 - DO_STRIP= \
1097 - install
1098 -
1099 - if use static-libs; then
1100 - dolib.a "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
1101 -
1102 - insinto /usr/include/NVCtrl
1103 - doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
1104 - fi
1105 -
1106 - insinto /usr/share/nvidia/
1107 - doins nvidia-application-profiles-${PV}-key-documentation
1108 -
1109 - insinto /etc/nvidia
1110 - newins \
1111 - nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc
1112 -
1113 - # There is no icon in the FreeBSD tarball.
1114 - use kernel_FreeBSD || \
1115 - doicon ${NV_OBJ}/nvidia-settings.png
1116 -
1117 - domenu "${FILESDIR}"/nvidia-settings.desktop
1118 -
1119 - exeinto /etc/X11/xinit/xinitrc.d
1120 - newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
1121 - fi
1122 -
1123 - dobin ${NV_OBJ}/nvidia-bug-report.sh
1124 -
1125 - if has_multilib_profile && use multilib; then
1126 - local OABI=${ABI}
1127 - for ABI in $(get_install_abis); do
1128 - src_install-libs
1129 - done
1130 - ABI=${OABI}
1131 - unset OABI
1132 - else
1133 - src_install-libs
1134 - fi
1135 -
1136 - is_final_abi || die "failed to iterate through all ABIs"
1137 -
1138 - readme.gentoo_create_doc
1139 -}
1140 -
1141 -src_install-libs() {
1142 - local inslibdir=$(get_libdir)
1143 - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
1144 - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
1145 - local nv_libdir="${NV_OBJ}"
1146 -
1147 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "x86" ]]; then
1148 - nv_libdir="${NV_OBJ}"/32
1149 - fi
1150 -
1151 - if use X; then
1152 - NV_GLX_LIBRARIES=(
1153 - "libEGL.so.$(usex compat ${NV_SOVER} 1.1.0) ${GL_ROOT}"
1154 - "libEGL_nvidia.so.${NV_SOVER} ${GL_ROOT}"
1155 - "libGL.so.$(usex compat ${NV_SOVER} 1.7.0) ${GL_ROOT}"
1156 - "libGLESv1_CM.so.1.2.0 ${GL_ROOT}"
1157 - "libGLESv1_CM_nvidia.so.${NV_SOVER} ${GL_ROOT}"
1158 - "libGLESv2.so.2.1.0 ${GL_ROOT}"
1159 - "libGLESv2_nvidia.so.${NV_SOVER} ${GL_ROOT}"
1160 - "libGLX.so.0 ${GL_ROOT}"
1161 - "libGLX_nvidia.so.${NV_SOVER} ${GL_ROOT}"
1162 - "libGLdispatch.so.0 ${GL_ROOT}"
1163 - "libOpenCL.so.1.0.0 ${CL_ROOT}"
1164 - "libOpenGL.so.0 ${GL_ROOT}"
1165 - "libcuda.so.${NV_SOVER}"
1166 - "libnvcuvid.so.${NV_SOVER}"
1167 - "libnvidia-compiler.so.${NV_SOVER}"
1168 - "libnvidia-eglcore.so.${NV_SOVER}"
1169 - "libnvidia-encode.so.${NV_SOVER}"
1170 - "libnvidia-fatbinaryloader.so.${NV_SOVER}"
1171 - "libnvidia-fbc.so.${NV_SOVER}"
1172 - "libnvidia-glcore.so.${NV_SOVER}"
1173 - "libnvidia-glsi.so.${NV_SOVER}"
1174 - "libnvidia-ifr.so.${NV_SOVER}"
1175 - "libnvidia-opencl.so.${NV_SOVER}"
1176 - "libnvidia-ptxjitcompiler.so.${NV_SOVER}"
1177 - "libvdpau_nvidia.so.${NV_SOVER}"
1178 - )
1179 -
1180 - if use wayland && has_multilib_profile && [[ ${ABI} == "amd64" ]];
1181 - then
1182 - NV_GLX_LIBRARIES+=(
1183 - "libnvidia-egl-wayland.so.1.0.2"
1184 - )
1185 - fi
1186 -
1187 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "amd64" ]];
1188 - then
1189 - NV_GLX_LIBRARIES+=(
1190 - "libnvidia-wfb.so.${NV_SOVER}"
1191 - )
1192 - fi
1193 -
1194 - if use kernel_FreeBSD; then
1195 - NV_GLX_LIBRARIES+=(
1196 - "libnvidia-tls.so.${NV_SOVER}"
1197 - )
1198 - fi
1199 -
1200 - if use kernel_linux; then
1201 - NV_GLX_LIBRARIES+=(
1202 - "libnvidia-ml.so.${NV_SOVER}"
1203 - "tls/libnvidia-tls.so.${NV_SOVER}"
1204 - )
1205 - fi
1206 -
1207 - for NV_LIB in "${NV_GLX_LIBRARIES[@]}"; do
1208 - donvidia "${nv_libdir}"/${NV_LIB}
1209 - done
1210 - fi
1211 -}
1212 -
1213 -pkg_preinst() {
1214 - if use driver && use kernel_linux; then
1215 - linux-mod_pkg_preinst
1216 -
1217 - local videogroup="$(egetent group video | cut -d ':' -f 3)"
1218 - if [ -z "${videogroup}" ]; then
1219 - eerror "Failed to determine the video group gid"
1220 - die "Failed to determine the video group gid"
1221 - else
1222 - sed -i \
1223 - -e "s:PACKAGE:${PF}:g" \
1224 - -e "s:VIDEOGID:${videogroup}:" \
1225 - "${D}"/etc/modprobe.d/nvidia.conf || die
1226 - fi
1227 - fi
1228 -
1229 - # Clean the dynamic libGL stuff's home to ensure
1230 - # we dont have stale libs floating around
1231 - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ]; then
1232 - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
1233 - fi
1234 - # Make sure we nuke the old nvidia-glx's env.d file
1235 - if [ -e "${ROOT}"/etc/env.d/09nvidia ]; then
1236 - rm -f "${ROOT}"/etc/env.d/09nvidia
1237 - fi
1238 -}
1239 -
1240 -pkg_postinst() {
1241 - use driver && use kernel_linux && linux-mod_pkg_postinst
1242 -
1243 - # Switch to the nvidia implementation
1244 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
1245 - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
1246 -
1247 - readme.gentoo_print_elog
1248 -
1249 - if ! use X; then
1250 - elog "You have elected to not install the X.org driver. Along with"
1251 - elog "this the OpenGL libraries and VDPAU libraries were not"
1252 - elog "installed. Additionally, once the driver is loaded your card"
1253 - elog "and fan will run at max speed which may not be desirable."
1254 - elog "Use the 'nvidia-smi' init script to have your card and fan"
1255 - elog "speed scale appropriately."
1256 - elog
1257 - fi
1258 - if ! use tools; then
1259 - elog "USE=tools controls whether the nvidia-settings application"
1260 - elog "is installed. If you would like to use it, enable that"
1261 - elog "flag and re-emerge this ebuild. Optionally you can install"
1262 - elog "media-video/nvidia-settings"
1263 - elog
1264 - fi
1265 -}
1266 -
1267 -pkg_prerm() {
1268 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
1269 -}
1270 -
1271 -pkg_postrm() {
1272 - use driver && use kernel_linux && linux-mod_pkg_postrm
1273 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
1274 -}
1275
1276 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-396.24-r1.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-396.24-r1.ebuild
1277 deleted file mode 100644
1278 index 2c010974326..00000000000
1279 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-396.24-r1.ebuild
1280 +++ /dev/null
1281 @@ -1,581 +0,0 @@
1282 -# Copyright 1999-2018 Gentoo Foundation
1283 -# Distributed under the terms of the GNU General Public License v2
1284 -
1285 -EAPI=6
1286 -inherit eutils flag-o-matic linux-info linux-mod multilib-minimal nvidia-driver \
1287 - portability toolchain-funcs unpacker user udev
1288 -
1289 -DESCRIPTION="NVIDIA Accelerated Graphics Driver"
1290 -HOMEPAGE="http://www.nvidia.com/ http://www.nvidia.com/Download/Find.aspx"
1291 -
1292 -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
1293 -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
1294 -ARM_NV_PACKAGE="NVIDIA-Linux-armv7l-gnueabihf-${PV}"
1295 -
1296 -NV_URI="http://us.download.nvidia.com/XFree86/"
1297 -SRC_URI="
1298 - amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
1299 - amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
1300 - tools? (
1301 - https://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-${PV}.tar.bz2
1302 - )
1303 -"
1304 -
1305 -LICENSE="GPL-2 NVIDIA-r2"
1306 -SLOT="0/${PV%.*}"
1307 -KEYWORDS="-* amd64 ~amd64-fbsd"
1308 -RESTRICT="bindist mirror"
1309 -EMULTILIB_PKG="true"
1310 -
1311 -IUSE="acpi compat +driver gtk3 kernel_FreeBSD kernel_linux +kms multilib pax_kernel static-libs +tools uvm wayland +X"
1312 -REQUIRED_USE="
1313 - tools? ( X )
1314 - static-libs? ( tools )
1315 -"
1316 -
1317 -COMMON="
1318 - app-eselect/eselect-opencl
1319 - kernel_linux? ( >=sys-libs/glibc-2.6.1 )
1320 - tools? (
1321 - dev-libs/atk
1322 - dev-libs/glib:2
1323 - dev-libs/jansson
1324 - gtk3? (
1325 - x11-libs/gtk+:3
1326 - )
1327 - x11-libs/cairo
1328 - x11-libs/gdk-pixbuf[X]
1329 - x11-libs/gtk+:2
1330 - x11-libs/libX11
1331 - x11-libs/libXext
1332 - x11-libs/libXrandr
1333 - x11-libs/libXv
1334 - x11-libs/libXxf86vm
1335 - x11-libs/pango[X]
1336 - )
1337 - X? (
1338 - >=app-eselect/eselect-opengl-1.0.9
1339 - app-misc/pax-utils
1340 - )
1341 -"
1342 -DEPEND="
1343 - ${COMMON}
1344 - kernel_linux? ( virtual/linux-sources )
1345 - tools? ( sys-apps/dbus )
1346 -"
1347 -RDEPEND="
1348 - ${COMMON}
1349 - acpi? ( sys-power/acpid )
1350 - tools? ( !media-video/nvidia-settings )
1351 - wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] )
1352 - X? (
1353 - <x11-base/xorg-server-1.20.99:=
1354 - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
1355 - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
1356 - >=x11-libs/libvdpau-1.0[${MULTILIB_USEDEP}]
1357 - sys-libs/zlib[${MULTILIB_USEDEP}]
1358 - )
1359 -"
1360 -QA_PREBUILT="opt/* usr/lib*"
1361 -S=${WORKDIR}/
1362 -
1363 -nvidia_drivers_versions_check() {
1364 - if use amd64 && has_multilib_profile && \
1365 - [ "${DEFAULT_ABI}" != "amd64" ]; then
1366 - eerror "This ebuild doesn't currently support changing your default ABI"
1367 - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
1368 - fi
1369 -
1370 - if use kernel_linux && kernel_is ge 4 18; then
1371 - ewarn "Gentoo supports kernels which are supported by NVIDIA"
1372 - ewarn "which are limited to the following kernels:"
1373 - ewarn "<sys-kernel/gentoo-sources-4.18"
1374 - ewarn "<sys-kernel/vanilla-sources-4.18"
1375 - ewarn ""
1376 - ewarn "You are free to utilize epatch_user to provide whatever"
1377 - ewarn "support you feel is appropriate, but will not receive"
1378 - ewarn "support as a result of those changes."
1379 - ewarn ""
1380 - ewarn "Do not file a bug report about this."
1381 - ewarn ""
1382 - fi
1383 -
1384 - # Since Nvidia ships many different series of drivers, we need to give the user
1385 - # some kind of guidance as to what version they should install. This tries
1386 - # to point the user in the right direction but can't be perfect. check
1387 - # nvidia-driver.eclass
1388 - nvidia-driver-check-warning
1389 -
1390 - # Kernel features/options to check for
1391 - CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP"
1392 -
1393 - # Now do the above checks
1394 - use kernel_linux && check_extra_config
1395 -}
1396 -
1397 -pkg_pretend() {
1398 - nvidia_drivers_versions_check
1399 -}
1400 -
1401 -pkg_setup() {
1402 - nvidia_drivers_versions_check
1403 -
1404 - # try to turn off distcc and ccache for people that have a problem with it
1405 - export DISTCC_DISABLE=1
1406 - export CCACHE_DISABLE=1
1407 -
1408 - if use driver && use kernel_linux; then
1409 - MODULE_NAMES="nvidia(video:${S}/kernel)"
1410 - use uvm && MODULE_NAMES+=" nvidia-uvm(video:${S}/kernel)"
1411 - use kms && MODULE_NAMES+=" nvidia-modeset(video:${S}/kernel) nvidia-drm(video:${S}/kernel)"
1412 -
1413 - # This needs to run after MODULE_NAMES (so that the eclass checks
1414 - # whether the kernel supports loadable modules) but before BUILD_PARAMS
1415 - # is set (so that KV_DIR is populated).
1416 - linux-mod_pkg_setup
1417 -
1418 - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
1419 - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC) NV_VERBOSE=1"
1420 -
1421 - # linux-mod_src_compile calls set_arch_to_kernel, which
1422 - # sets the ARCH to x86 but NVIDIA's wrapping Makefile
1423 - # expects x86_64 or i386 and then converts it to x86
1424 - # later on in the build process
1425 - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
1426 - fi
1427 -
1428 - if use kernel_linux && kernel_is lt 2 6 9; then
1429 - eerror "You must build this against 2.6.9 or higher kernels."
1430 - fi
1431 -
1432 - # set variables to where files are in the package structure
1433 - if use kernel_FreeBSD; then
1434 - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
1435 - NV_DOC="${S}/doc"
1436 - NV_OBJ="${S}/obj"
1437 - NV_SRC="${S}/src"
1438 - NV_MAN="${S}/x11/man"
1439 - NV_X11="${S}/obj"
1440 - NV_SOVER=1
1441 - elif use kernel_linux; then
1442 - NV_DOC="${S}"
1443 - NV_OBJ="${S}"
1444 - NV_SRC="${S}/kernel"
1445 - NV_MAN="${S}"
1446 - NV_X11="${S}"
1447 - NV_SOVER=${PV}
1448 - else
1449 - die "Could not determine proper NVIDIA package"
1450 - fi
1451 -}
1452 -
1453 -src_prepare() {
1454 - if use pax_kernel; then
1455 - ewarn "Using PAX patches is not supported. You will be asked to"
1456 - ewarn "use a standard kernel should you have issues. Should you"
1457 - ewarn "need support with these patches, contact the PaX team."
1458 - eapply "${FILESDIR}"/${PN}-375.20-pax.patch
1459 - fi
1460 -
1461 - local man_file
1462 - for man_file in "${NV_MAN}"/*1.gz; do
1463 - gunzip $man_file || die
1464 - done
1465 -
1466 - if use tools; then
1467 - cp "${FILESDIR}"/nvidia-settings-linker.patch "${WORKDIR}" || die
1468 - sed -i \
1469 - -e "s:@PV@:${PV}:g" \
1470 - "${WORKDIR}"/nvidia-settings-linker.patch || die
1471 - eapply "${WORKDIR}"/nvidia-settings-linker.patch
1472 - fi
1473 -
1474 - default
1475 -
1476 - if ! [ -f nvidia_icd.json ]; then
1477 - cp nvidia_icd.json.template nvidia_icd.json || die
1478 - sed -i -e 's:__NV_VK_ICD__:libGLX_nvidia.so.0:g' nvidia_icd.json || die
1479 - fi
1480 -}
1481 -
1482 -src_compile() {
1483 - # This is already the default on Linux, as there's no toplevel Makefile, but
1484 - # on FreeBSD there's one and triggers the kernel module build, as we install
1485 - # it by itself, pass this.
1486 -
1487 - cd "${NV_SRC}"
1488 - if use kernel_FreeBSD; then
1489 - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
1490 - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
1491 - elif use driver && use kernel_linux; then
1492 - MAKEOPTS=-j1 linux-mod_src_compile
1493 - fi
1494 -
1495 - if use tools; then
1496 - emake -C "${S}"/nvidia-settings-${PV}/src \
1497 - AR="$(tc-getAR)" \
1498 - CC="$(tc-getCC)" \
1499 - DO_STRIP= \
1500 - LD="$(tc-getCC)" \
1501 - LIBDIR="$(get_libdir)" \
1502 - NVLD="$(tc-getLD)" \
1503 - NV_VERBOSE=1 \
1504 - RANLIB="$(tc-getRANLIB)" \
1505 - build-xnvctrl
1506 -
1507 - emake -C "${S}"/nvidia-settings-${PV}/src \
1508 - CC="$(tc-getCC)" \
1509 - DO_STRIP= \
1510 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
1511 - LD="$(tc-getCC)" \
1512 - LIBDIR="$(get_libdir)" \
1513 - NVLD="$(tc-getLD)" \
1514 - NVML_ENABLED=0 \
1515 - NV_USE_BUNDLED_LIBJANSSON=0 \
1516 - NV_VERBOSE=1
1517 - fi
1518 -}
1519 -
1520 -# Install nvidia library:
1521 -# the first parameter is the library to install
1522 -# the second parameter is the provided soversion
1523 -# the third parameter is the target directory if it is not /usr/lib
1524 -donvidia() {
1525 - # Full path to library
1526 - nv_LIB="${1}"
1527 -
1528 - # SOVER to use
1529 - nv_SOVER="$(scanelf -qF'%S#F' ${nv_LIB})"
1530 -
1531 - # Where to install
1532 - nv_DEST="${2}"
1533 -
1534 - # Get just the library name
1535 - nv_LIBNAME=$(basename "${nv_LIB}")
1536 -
1537 - if [[ "${nv_DEST}" ]]; then
1538 - exeinto ${nv_DEST}
1539 - action="doexe"
1540 - else
1541 - nv_DEST="/usr/$(get_libdir)"
1542 - action="dolib.so"
1543 - fi
1544 -
1545 - # Install the library
1546 - ${action} ${nv_LIB} || die "failed to install ${nv_LIBNAME}"
1547 -
1548 - # If the library has a SONAME and SONAME does not match the library name,
1549 - # then we need to create a symlink
1550 - if [[ ${nv_SOVER} ]] && ! [[ "${nv_SOVER}" = "${nv_LIBNAME}" ]]; then
1551 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_SOVER} \
1552 - || die "failed to create ${nv_DEST}/${nv_SOVER} symlink"
1553 - fi
1554 -
1555 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_LIBNAME/.so*/.so} \
1556 - || die "failed to create ${nv_LIBNAME/.so*/.so} symlink"
1557 -}
1558 -
1559 -src_install() {
1560 - if use driver && use kernel_linux; then
1561 - linux-mod_src_install
1562 -
1563 - # Add the aliases
1564 - # This file is tweaked with the appropriate video group in
1565 - # pkg_preinst, see bug #491414
1566 - insinto /etc/modprobe.d
1567 - newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
1568 - doins "${FILESDIR}"/nvidia-rmmod.conf
1569 -
1570 - # Ensures that our device nodes are created when not using X
1571 - exeinto "$(get_udevdir)"
1572 - newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh
1573 - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
1574 - elif use kernel_FreeBSD; then
1575 - if use x86-fbsd; then
1576 - insinto /boot/modules
1577 - doins "${S}/src/nvidia.kld"
1578 - fi
1579 -
1580 - exeinto /boot/modules
1581 - doexe "${S}/src/nvidia.ko"
1582 - fi
1583 -
1584 - # NVIDIA kernel <-> userspace driver config lib
1585 - donvidia ${NV_OBJ}/libnvidia-cfg.so.${NV_SOVER}
1586 -
1587 - # NVIDIA framebuffer capture library
1588 - donvidia ${NV_OBJ}/libnvidia-fbc.so.${NV_SOVER}
1589 -
1590 - # NVIDIA video encode/decode <-> CUDA
1591 - if use kernel_linux; then
1592 - donvidia ${NV_OBJ}/libnvcuvid.so.${NV_SOVER}
1593 - donvidia ${NV_OBJ}/libnvidia-encode.so.${NV_SOVER}
1594 - fi
1595 -
1596 - if use X; then
1597 - # Xorg DDX driver
1598 - insinto /usr/$(get_libdir)/xorg/modules/drivers
1599 - doins ${NV_X11}/nvidia_drv.so
1600 -
1601 - # Xorg GLX driver
1602 - donvidia ${NV_X11}/libglx.so.${NV_SOVER} \
1603 - /usr/$(get_libdir)/opengl/nvidia/extensions
1604 -
1605 - # Xorg nvidia.conf
1606 - if has_version '>=x11-base/xorg-server-1.16'; then
1607 - insinto /usr/share/X11/xorg.conf.d
1608 - newins {,50-}nvidia-drm-outputclass.conf
1609 - fi
1610 -
1611 - insinto /usr/share/glvnd/egl_vendor.d
1612 - doins ${NV_X11}/10_nvidia.json
1613 - fi
1614 -
1615 - if use wayland; then
1616 - insinto /usr/share/egl/egl_external_platform.d
1617 - doins ${NV_X11}/10_nvidia_wayland.json
1618 - fi
1619 -
1620 - # OpenCL ICD for NVIDIA
1621 - if use kernel_linux; then
1622 - insinto /etc/OpenCL/vendors
1623 - doins ${NV_OBJ}/nvidia.icd
1624 - fi
1625 -
1626 - # Documentation
1627 - if use kernel_FreeBSD; then
1628 - dodoc "${NV_DOC}/README"
1629 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
1630 - use tools && doman "${NV_MAN}"/nvidia-settings.1
1631 - else
1632 - # Docs
1633 - newdoc "${NV_DOC}/README.txt" README
1634 - dodoc "${NV_DOC}/NVIDIA_Changelog"
1635 - doman "${NV_MAN}"/nvidia-smi.1
1636 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
1637 - use tools && doman "${NV_MAN}"/nvidia-settings.1
1638 - doman "${NV_MAN}"/nvidia-cuda-mps-control.1
1639 - fi
1640 -
1641 - docinto html
1642 - dodoc -r ${NV_DOC}/html/*
1643 -
1644 - # Helper Apps
1645 - exeinto /opt/bin/
1646 -
1647 - if use X; then
1648 - doexe ${NV_OBJ}/nvidia-xconfig
1649 -
1650 - insinto /etc/vulkan/icd.d
1651 - doins nvidia_icd.json
1652 - fi
1653 -
1654 - if use kernel_linux; then
1655 - doexe ${NV_OBJ}/nvidia-cuda-mps-control
1656 - doexe ${NV_OBJ}/nvidia-cuda-mps-server
1657 - doexe ${NV_OBJ}/nvidia-debugdump
1658 - doexe ${NV_OBJ}/nvidia-persistenced
1659 - doexe ${NV_OBJ}/nvidia-smi
1660 -
1661 - # install nvidia-modprobe setuid and symlink in /usr/bin (bug #505092)
1662 - doexe ${NV_OBJ}/nvidia-modprobe
1663 - fowners root:video /opt/bin/nvidia-modprobe
1664 - fperms 4710 /opt/bin/nvidia-modprobe
1665 - dosym /{opt,usr}/bin/nvidia-modprobe
1666 -
1667 - doman nvidia-cuda-mps-control.1
1668 - doman nvidia-modprobe.1
1669 - doman nvidia-persistenced.1
1670 - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
1671 - newconfd "${FILESDIR}/nvidia-persistenced.conf" nvidia-persistenced
1672 - newinitd "${FILESDIR}/nvidia-persistenced.init" nvidia-persistenced
1673 - fi
1674 -
1675 - if use tools; then
1676 - emake -C "${S}"/nvidia-settings-${PV}/src/ \
1677 - DESTDIR="${D}" \
1678 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
1679 - LIBDIR="${D}/usr/$(get_libdir)" \
1680 - NV_USE_BUNDLED_LIBJANSSON=0 \
1681 - NV_VERBOSE=1 \
1682 - PREFIX=/usr \
1683 - DO_STRIP= \
1684 - install
1685 -
1686 - if use static-libs; then
1687 - dolib.a "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
1688 -
1689 - insinto /usr/include/NVCtrl
1690 - doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
1691 - fi
1692 -
1693 - insinto /usr/share/nvidia/
1694 - doins nvidia-application-profiles-${PV}-key-documentation
1695 -
1696 - insinto /etc/nvidia
1697 - newins \
1698 - nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc
1699 -
1700 - # There is no icon in the FreeBSD tarball.
1701 - use kernel_FreeBSD || \
1702 - doicon ${NV_OBJ}/nvidia-settings.png
1703 -
1704 - domenu "${FILESDIR}"/nvidia-settings.desktop
1705 -
1706 - exeinto /etc/X11/xinit/xinitrc.d
1707 - newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
1708 - fi
1709 -
1710 - dobin ${NV_OBJ}/nvidia-bug-report.sh
1711 -
1712 - if has_multilib_profile && use multilib; then
1713 - local OABI=${ABI}
1714 - for ABI in $(get_install_abis); do
1715 - src_install-libs
1716 - done
1717 - ABI=${OABI}
1718 - unset OABI
1719 - else
1720 - src_install-libs
1721 - fi
1722 -
1723 - is_final_abi || die "failed to iterate through all ABIs"
1724 -
1725 - readme.gentoo_create_doc
1726 -}
1727 -
1728 -src_install-libs() {
1729 - local inslibdir=$(get_libdir)
1730 - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
1731 - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
1732 - local nv_libdir="${NV_OBJ}"
1733 -
1734 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "x86" ]]; then
1735 - nv_libdir="${NV_OBJ}"/32
1736 - fi
1737 -
1738 - if use X; then
1739 - NV_GLX_LIBRARIES=(
1740 - "libEGL.so.$(usex compat ${NV_SOVER} 1.1.0) ${GL_ROOT}"
1741 - "libEGL_nvidia.so.${NV_SOVER} ${GL_ROOT}"
1742 - "libGL.so.$(usex compat ${NV_SOVER} 1.7.0) ${GL_ROOT}"
1743 - "libGLESv1_CM.so.1.2.0 ${GL_ROOT}"
1744 - "libGLESv1_CM_nvidia.so.${NV_SOVER} ${GL_ROOT}"
1745 - "libGLESv2.so.2.1.0 ${GL_ROOT}"
1746 - "libGLESv2_nvidia.so.${NV_SOVER} ${GL_ROOT}"
1747 - "libGLX.so.0 ${GL_ROOT}"
1748 - "libGLX_nvidia.so.${NV_SOVER} ${GL_ROOT}"
1749 - "libGLdispatch.so.0 ${GL_ROOT}"
1750 - "libOpenCL.so.1.0.0 ${CL_ROOT}"
1751 - "libOpenGL.so.0 ${GL_ROOT}"
1752 - "libcuda.so.${NV_SOVER}"
1753 - "libnvcuvid.so.${NV_SOVER}"
1754 - "libnvidia-compiler.so.${NV_SOVER}"
1755 - "libnvidia-eglcore.so.${NV_SOVER}"
1756 - "libnvidia-encode.so.${NV_SOVER}"
1757 - "libnvidia-fatbinaryloader.so.${NV_SOVER}"
1758 - "libnvidia-fbc.so.${NV_SOVER}"
1759 - "libnvidia-glcore.so.${NV_SOVER}"
1760 - "libnvidia-glsi.so.${NV_SOVER}"
1761 - "libnvidia-glvkspirv.so.${NV_SOVER}"
1762 - "libnvidia-ifr.so.${NV_SOVER}"
1763 - "libnvidia-opencl.so.${NV_SOVER}"
1764 - "libnvidia-ptxjitcompiler.so.${NV_SOVER}"
1765 - "libvdpau_nvidia.so.${NV_SOVER}"
1766 - )
1767 -
1768 - if use wayland && has_multilib_profile && [[ ${ABI} == "amd64" ]];
1769 - then
1770 - NV_GLX_LIBRARIES+=(
1771 - "libnvidia-egl-wayland.so.1.0.3"
1772 - )
1773 - fi
1774 -
1775 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "amd64" ]];
1776 - then
1777 - NV_GLX_LIBRARIES+=(
1778 - "libnvidia-wfb.so.${NV_SOVER}"
1779 - )
1780 - fi
1781 -
1782 - if use kernel_FreeBSD; then
1783 - NV_GLX_LIBRARIES+=(
1784 - "libnvidia-tls.so.${NV_SOVER}"
1785 - )
1786 - fi
1787 -
1788 - if use kernel_linux; then
1789 - NV_GLX_LIBRARIES+=(
1790 - "libnvidia-ml.so.${NV_SOVER}"
1791 - "tls/libnvidia-tls.so.${NV_SOVER}"
1792 - )
1793 - fi
1794 -
1795 - for NV_LIB in "${NV_GLX_LIBRARIES[@]}"; do
1796 - donvidia "${nv_libdir}"/${NV_LIB}
1797 - done
1798 - fi
1799 -}
1800 -
1801 -pkg_preinst() {
1802 - if use driver && use kernel_linux; then
1803 - linux-mod_pkg_preinst
1804 -
1805 - local videogroup="$(egetent group video | cut -d ':' -f 3)"
1806 - if [ -z "${videogroup}" ]; then
1807 - eerror "Failed to determine the video group gid"
1808 - die "Failed to determine the video group gid"
1809 - else
1810 - sed -i \
1811 - -e "s:PACKAGE:${PF}:g" \
1812 - -e "s:VIDEOGID:${videogroup}:" \
1813 - "${D}"/etc/modprobe.d/nvidia.conf || die
1814 - fi
1815 - fi
1816 -
1817 - # Clean the dynamic libGL stuff's home to ensure
1818 - # we dont have stale libs floating around
1819 - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ]; then
1820 - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
1821 - fi
1822 - # Make sure we nuke the old nvidia-glx's env.d file
1823 - if [ -e "${ROOT}"/etc/env.d/09nvidia ]; then
1824 - rm -f "${ROOT}"/etc/env.d/09nvidia
1825 - fi
1826 -}
1827 -
1828 -pkg_postinst() {
1829 - use driver && use kernel_linux && linux-mod_pkg_postinst
1830 -
1831 - # Switch to the nvidia implementation
1832 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
1833 - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
1834 -
1835 - readme.gentoo_print_elog
1836 -
1837 - if ! use X; then
1838 - elog "You have elected to not install the X.org driver. Along with"
1839 - elog "this the OpenGL libraries and VDPAU libraries were not"
1840 - elog "installed. Additionally, once the driver is loaded your card"
1841 - elog "and fan will run at max speed which may not be desirable."
1842 - elog "Use the 'nvidia-smi' init script to have your card and fan"
1843 - elog "speed scale appropriately."
1844 - elog
1845 - fi
1846 - if ! use tools; then
1847 - elog "USE=tools controls whether the nvidia-settings application"
1848 - elog "is installed. If you would like to use it, enable that"
1849 - elog "flag and re-emerge this ebuild. Optionally you can install"
1850 - elog "media-video/nvidia-settings"
1851 - elog
1852 - fi
1853 -}
1854 -
1855 -pkg_prerm() {
1856 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
1857 -}
1858 -
1859 -pkg_postrm() {
1860 - use driver && use kernel_linux && linux-mod_pkg_postrm
1861 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
1862 -}
1863
1864 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-396.45.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-396.45.ebuild
1865 deleted file mode 100644
1866 index 2c010974326..00000000000
1867 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-396.45.ebuild
1868 +++ /dev/null
1869 @@ -1,581 +0,0 @@
1870 -# Copyright 1999-2018 Gentoo Foundation
1871 -# Distributed under the terms of the GNU General Public License v2
1872 -
1873 -EAPI=6
1874 -inherit eutils flag-o-matic linux-info linux-mod multilib-minimal nvidia-driver \
1875 - portability toolchain-funcs unpacker user udev
1876 -
1877 -DESCRIPTION="NVIDIA Accelerated Graphics Driver"
1878 -HOMEPAGE="http://www.nvidia.com/ http://www.nvidia.com/Download/Find.aspx"
1879 -
1880 -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
1881 -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
1882 -ARM_NV_PACKAGE="NVIDIA-Linux-armv7l-gnueabihf-${PV}"
1883 -
1884 -NV_URI="http://us.download.nvidia.com/XFree86/"
1885 -SRC_URI="
1886 - amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
1887 - amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
1888 - tools? (
1889 - https://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-${PV}.tar.bz2
1890 - )
1891 -"
1892 -
1893 -LICENSE="GPL-2 NVIDIA-r2"
1894 -SLOT="0/${PV%.*}"
1895 -KEYWORDS="-* amd64 ~amd64-fbsd"
1896 -RESTRICT="bindist mirror"
1897 -EMULTILIB_PKG="true"
1898 -
1899 -IUSE="acpi compat +driver gtk3 kernel_FreeBSD kernel_linux +kms multilib pax_kernel static-libs +tools uvm wayland +X"
1900 -REQUIRED_USE="
1901 - tools? ( X )
1902 - static-libs? ( tools )
1903 -"
1904 -
1905 -COMMON="
1906 - app-eselect/eselect-opencl
1907 - kernel_linux? ( >=sys-libs/glibc-2.6.1 )
1908 - tools? (
1909 - dev-libs/atk
1910 - dev-libs/glib:2
1911 - dev-libs/jansson
1912 - gtk3? (
1913 - x11-libs/gtk+:3
1914 - )
1915 - x11-libs/cairo
1916 - x11-libs/gdk-pixbuf[X]
1917 - x11-libs/gtk+:2
1918 - x11-libs/libX11
1919 - x11-libs/libXext
1920 - x11-libs/libXrandr
1921 - x11-libs/libXv
1922 - x11-libs/libXxf86vm
1923 - x11-libs/pango[X]
1924 - )
1925 - X? (
1926 - >=app-eselect/eselect-opengl-1.0.9
1927 - app-misc/pax-utils
1928 - )
1929 -"
1930 -DEPEND="
1931 - ${COMMON}
1932 - kernel_linux? ( virtual/linux-sources )
1933 - tools? ( sys-apps/dbus )
1934 -"
1935 -RDEPEND="
1936 - ${COMMON}
1937 - acpi? ( sys-power/acpid )
1938 - tools? ( !media-video/nvidia-settings )
1939 - wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] )
1940 - X? (
1941 - <x11-base/xorg-server-1.20.99:=
1942 - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
1943 - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
1944 - >=x11-libs/libvdpau-1.0[${MULTILIB_USEDEP}]
1945 - sys-libs/zlib[${MULTILIB_USEDEP}]
1946 - )
1947 -"
1948 -QA_PREBUILT="opt/* usr/lib*"
1949 -S=${WORKDIR}/
1950 -
1951 -nvidia_drivers_versions_check() {
1952 - if use amd64 && has_multilib_profile && \
1953 - [ "${DEFAULT_ABI}" != "amd64" ]; then
1954 - eerror "This ebuild doesn't currently support changing your default ABI"
1955 - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
1956 - fi
1957 -
1958 - if use kernel_linux && kernel_is ge 4 18; then
1959 - ewarn "Gentoo supports kernels which are supported by NVIDIA"
1960 - ewarn "which are limited to the following kernels:"
1961 - ewarn "<sys-kernel/gentoo-sources-4.18"
1962 - ewarn "<sys-kernel/vanilla-sources-4.18"
1963 - ewarn ""
1964 - ewarn "You are free to utilize epatch_user to provide whatever"
1965 - ewarn "support you feel is appropriate, but will not receive"
1966 - ewarn "support as a result of those changes."
1967 - ewarn ""
1968 - ewarn "Do not file a bug report about this."
1969 - ewarn ""
1970 - fi
1971 -
1972 - # Since Nvidia ships many different series of drivers, we need to give the user
1973 - # some kind of guidance as to what version they should install. This tries
1974 - # to point the user in the right direction but can't be perfect. check
1975 - # nvidia-driver.eclass
1976 - nvidia-driver-check-warning
1977 -
1978 - # Kernel features/options to check for
1979 - CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP"
1980 -
1981 - # Now do the above checks
1982 - use kernel_linux && check_extra_config
1983 -}
1984 -
1985 -pkg_pretend() {
1986 - nvidia_drivers_versions_check
1987 -}
1988 -
1989 -pkg_setup() {
1990 - nvidia_drivers_versions_check
1991 -
1992 - # try to turn off distcc and ccache for people that have a problem with it
1993 - export DISTCC_DISABLE=1
1994 - export CCACHE_DISABLE=1
1995 -
1996 - if use driver && use kernel_linux; then
1997 - MODULE_NAMES="nvidia(video:${S}/kernel)"
1998 - use uvm && MODULE_NAMES+=" nvidia-uvm(video:${S}/kernel)"
1999 - use kms && MODULE_NAMES+=" nvidia-modeset(video:${S}/kernel) nvidia-drm(video:${S}/kernel)"
2000 -
2001 - # This needs to run after MODULE_NAMES (so that the eclass checks
2002 - # whether the kernel supports loadable modules) but before BUILD_PARAMS
2003 - # is set (so that KV_DIR is populated).
2004 - linux-mod_pkg_setup
2005 -
2006 - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
2007 - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC) NV_VERBOSE=1"
2008 -
2009 - # linux-mod_src_compile calls set_arch_to_kernel, which
2010 - # sets the ARCH to x86 but NVIDIA's wrapping Makefile
2011 - # expects x86_64 or i386 and then converts it to x86
2012 - # later on in the build process
2013 - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
2014 - fi
2015 -
2016 - if use kernel_linux && kernel_is lt 2 6 9; then
2017 - eerror "You must build this against 2.6.9 or higher kernels."
2018 - fi
2019 -
2020 - # set variables to where files are in the package structure
2021 - if use kernel_FreeBSD; then
2022 - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
2023 - NV_DOC="${S}/doc"
2024 - NV_OBJ="${S}/obj"
2025 - NV_SRC="${S}/src"
2026 - NV_MAN="${S}/x11/man"
2027 - NV_X11="${S}/obj"
2028 - NV_SOVER=1
2029 - elif use kernel_linux; then
2030 - NV_DOC="${S}"
2031 - NV_OBJ="${S}"
2032 - NV_SRC="${S}/kernel"
2033 - NV_MAN="${S}"
2034 - NV_X11="${S}"
2035 - NV_SOVER=${PV}
2036 - else
2037 - die "Could not determine proper NVIDIA package"
2038 - fi
2039 -}
2040 -
2041 -src_prepare() {
2042 - if use pax_kernel; then
2043 - ewarn "Using PAX patches is not supported. You will be asked to"
2044 - ewarn "use a standard kernel should you have issues. Should you"
2045 - ewarn "need support with these patches, contact the PaX team."
2046 - eapply "${FILESDIR}"/${PN}-375.20-pax.patch
2047 - fi
2048 -
2049 - local man_file
2050 - for man_file in "${NV_MAN}"/*1.gz; do
2051 - gunzip $man_file || die
2052 - done
2053 -
2054 - if use tools; then
2055 - cp "${FILESDIR}"/nvidia-settings-linker.patch "${WORKDIR}" || die
2056 - sed -i \
2057 - -e "s:@PV@:${PV}:g" \
2058 - "${WORKDIR}"/nvidia-settings-linker.patch || die
2059 - eapply "${WORKDIR}"/nvidia-settings-linker.patch
2060 - fi
2061 -
2062 - default
2063 -
2064 - if ! [ -f nvidia_icd.json ]; then
2065 - cp nvidia_icd.json.template nvidia_icd.json || die
2066 - sed -i -e 's:__NV_VK_ICD__:libGLX_nvidia.so.0:g' nvidia_icd.json || die
2067 - fi
2068 -}
2069 -
2070 -src_compile() {
2071 - # This is already the default on Linux, as there's no toplevel Makefile, but
2072 - # on FreeBSD there's one and triggers the kernel module build, as we install
2073 - # it by itself, pass this.
2074 -
2075 - cd "${NV_SRC}"
2076 - if use kernel_FreeBSD; then
2077 - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
2078 - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
2079 - elif use driver && use kernel_linux; then
2080 - MAKEOPTS=-j1 linux-mod_src_compile
2081 - fi
2082 -
2083 - if use tools; then
2084 - emake -C "${S}"/nvidia-settings-${PV}/src \
2085 - AR="$(tc-getAR)" \
2086 - CC="$(tc-getCC)" \
2087 - DO_STRIP= \
2088 - LD="$(tc-getCC)" \
2089 - LIBDIR="$(get_libdir)" \
2090 - NVLD="$(tc-getLD)" \
2091 - NV_VERBOSE=1 \
2092 - RANLIB="$(tc-getRANLIB)" \
2093 - build-xnvctrl
2094 -
2095 - emake -C "${S}"/nvidia-settings-${PV}/src \
2096 - CC="$(tc-getCC)" \
2097 - DO_STRIP= \
2098 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
2099 - LD="$(tc-getCC)" \
2100 - LIBDIR="$(get_libdir)" \
2101 - NVLD="$(tc-getLD)" \
2102 - NVML_ENABLED=0 \
2103 - NV_USE_BUNDLED_LIBJANSSON=0 \
2104 - NV_VERBOSE=1
2105 - fi
2106 -}
2107 -
2108 -# Install nvidia library:
2109 -# the first parameter is the library to install
2110 -# the second parameter is the provided soversion
2111 -# the third parameter is the target directory if it is not /usr/lib
2112 -donvidia() {
2113 - # Full path to library
2114 - nv_LIB="${1}"
2115 -
2116 - # SOVER to use
2117 - nv_SOVER="$(scanelf -qF'%S#F' ${nv_LIB})"
2118 -
2119 - # Where to install
2120 - nv_DEST="${2}"
2121 -
2122 - # Get just the library name
2123 - nv_LIBNAME=$(basename "${nv_LIB}")
2124 -
2125 - if [[ "${nv_DEST}" ]]; then
2126 - exeinto ${nv_DEST}
2127 - action="doexe"
2128 - else
2129 - nv_DEST="/usr/$(get_libdir)"
2130 - action="dolib.so"
2131 - fi
2132 -
2133 - # Install the library
2134 - ${action} ${nv_LIB} || die "failed to install ${nv_LIBNAME}"
2135 -
2136 - # If the library has a SONAME and SONAME does not match the library name,
2137 - # then we need to create a symlink
2138 - if [[ ${nv_SOVER} ]] && ! [[ "${nv_SOVER}" = "${nv_LIBNAME}" ]]; then
2139 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_SOVER} \
2140 - || die "failed to create ${nv_DEST}/${nv_SOVER} symlink"
2141 - fi
2142 -
2143 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_LIBNAME/.so*/.so} \
2144 - || die "failed to create ${nv_LIBNAME/.so*/.so} symlink"
2145 -}
2146 -
2147 -src_install() {
2148 - if use driver && use kernel_linux; then
2149 - linux-mod_src_install
2150 -
2151 - # Add the aliases
2152 - # This file is tweaked with the appropriate video group in
2153 - # pkg_preinst, see bug #491414
2154 - insinto /etc/modprobe.d
2155 - newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
2156 - doins "${FILESDIR}"/nvidia-rmmod.conf
2157 -
2158 - # Ensures that our device nodes are created when not using X
2159 - exeinto "$(get_udevdir)"
2160 - newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh
2161 - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
2162 - elif use kernel_FreeBSD; then
2163 - if use x86-fbsd; then
2164 - insinto /boot/modules
2165 - doins "${S}/src/nvidia.kld"
2166 - fi
2167 -
2168 - exeinto /boot/modules
2169 - doexe "${S}/src/nvidia.ko"
2170 - fi
2171 -
2172 - # NVIDIA kernel <-> userspace driver config lib
2173 - donvidia ${NV_OBJ}/libnvidia-cfg.so.${NV_SOVER}
2174 -
2175 - # NVIDIA framebuffer capture library
2176 - donvidia ${NV_OBJ}/libnvidia-fbc.so.${NV_SOVER}
2177 -
2178 - # NVIDIA video encode/decode <-> CUDA
2179 - if use kernel_linux; then
2180 - donvidia ${NV_OBJ}/libnvcuvid.so.${NV_SOVER}
2181 - donvidia ${NV_OBJ}/libnvidia-encode.so.${NV_SOVER}
2182 - fi
2183 -
2184 - if use X; then
2185 - # Xorg DDX driver
2186 - insinto /usr/$(get_libdir)/xorg/modules/drivers
2187 - doins ${NV_X11}/nvidia_drv.so
2188 -
2189 - # Xorg GLX driver
2190 - donvidia ${NV_X11}/libglx.so.${NV_SOVER} \
2191 - /usr/$(get_libdir)/opengl/nvidia/extensions
2192 -
2193 - # Xorg nvidia.conf
2194 - if has_version '>=x11-base/xorg-server-1.16'; then
2195 - insinto /usr/share/X11/xorg.conf.d
2196 - newins {,50-}nvidia-drm-outputclass.conf
2197 - fi
2198 -
2199 - insinto /usr/share/glvnd/egl_vendor.d
2200 - doins ${NV_X11}/10_nvidia.json
2201 - fi
2202 -
2203 - if use wayland; then
2204 - insinto /usr/share/egl/egl_external_platform.d
2205 - doins ${NV_X11}/10_nvidia_wayland.json
2206 - fi
2207 -
2208 - # OpenCL ICD for NVIDIA
2209 - if use kernel_linux; then
2210 - insinto /etc/OpenCL/vendors
2211 - doins ${NV_OBJ}/nvidia.icd
2212 - fi
2213 -
2214 - # Documentation
2215 - if use kernel_FreeBSD; then
2216 - dodoc "${NV_DOC}/README"
2217 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
2218 - use tools && doman "${NV_MAN}"/nvidia-settings.1
2219 - else
2220 - # Docs
2221 - newdoc "${NV_DOC}/README.txt" README
2222 - dodoc "${NV_DOC}/NVIDIA_Changelog"
2223 - doman "${NV_MAN}"/nvidia-smi.1
2224 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
2225 - use tools && doman "${NV_MAN}"/nvidia-settings.1
2226 - doman "${NV_MAN}"/nvidia-cuda-mps-control.1
2227 - fi
2228 -
2229 - docinto html
2230 - dodoc -r ${NV_DOC}/html/*
2231 -
2232 - # Helper Apps
2233 - exeinto /opt/bin/
2234 -
2235 - if use X; then
2236 - doexe ${NV_OBJ}/nvidia-xconfig
2237 -
2238 - insinto /etc/vulkan/icd.d
2239 - doins nvidia_icd.json
2240 - fi
2241 -
2242 - if use kernel_linux; then
2243 - doexe ${NV_OBJ}/nvidia-cuda-mps-control
2244 - doexe ${NV_OBJ}/nvidia-cuda-mps-server
2245 - doexe ${NV_OBJ}/nvidia-debugdump
2246 - doexe ${NV_OBJ}/nvidia-persistenced
2247 - doexe ${NV_OBJ}/nvidia-smi
2248 -
2249 - # install nvidia-modprobe setuid and symlink in /usr/bin (bug #505092)
2250 - doexe ${NV_OBJ}/nvidia-modprobe
2251 - fowners root:video /opt/bin/nvidia-modprobe
2252 - fperms 4710 /opt/bin/nvidia-modprobe
2253 - dosym /{opt,usr}/bin/nvidia-modprobe
2254 -
2255 - doman nvidia-cuda-mps-control.1
2256 - doman nvidia-modprobe.1
2257 - doman nvidia-persistenced.1
2258 - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
2259 - newconfd "${FILESDIR}/nvidia-persistenced.conf" nvidia-persistenced
2260 - newinitd "${FILESDIR}/nvidia-persistenced.init" nvidia-persistenced
2261 - fi
2262 -
2263 - if use tools; then
2264 - emake -C "${S}"/nvidia-settings-${PV}/src/ \
2265 - DESTDIR="${D}" \
2266 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
2267 - LIBDIR="${D}/usr/$(get_libdir)" \
2268 - NV_USE_BUNDLED_LIBJANSSON=0 \
2269 - NV_VERBOSE=1 \
2270 - PREFIX=/usr \
2271 - DO_STRIP= \
2272 - install
2273 -
2274 - if use static-libs; then
2275 - dolib.a "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
2276 -
2277 - insinto /usr/include/NVCtrl
2278 - doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
2279 - fi
2280 -
2281 - insinto /usr/share/nvidia/
2282 - doins nvidia-application-profiles-${PV}-key-documentation
2283 -
2284 - insinto /etc/nvidia
2285 - newins \
2286 - nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc
2287 -
2288 - # There is no icon in the FreeBSD tarball.
2289 - use kernel_FreeBSD || \
2290 - doicon ${NV_OBJ}/nvidia-settings.png
2291 -
2292 - domenu "${FILESDIR}"/nvidia-settings.desktop
2293 -
2294 - exeinto /etc/X11/xinit/xinitrc.d
2295 - newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
2296 - fi
2297 -
2298 - dobin ${NV_OBJ}/nvidia-bug-report.sh
2299 -
2300 - if has_multilib_profile && use multilib; then
2301 - local OABI=${ABI}
2302 - for ABI in $(get_install_abis); do
2303 - src_install-libs
2304 - done
2305 - ABI=${OABI}
2306 - unset OABI
2307 - else
2308 - src_install-libs
2309 - fi
2310 -
2311 - is_final_abi || die "failed to iterate through all ABIs"
2312 -
2313 - readme.gentoo_create_doc
2314 -}
2315 -
2316 -src_install-libs() {
2317 - local inslibdir=$(get_libdir)
2318 - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
2319 - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
2320 - local nv_libdir="${NV_OBJ}"
2321 -
2322 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "x86" ]]; then
2323 - nv_libdir="${NV_OBJ}"/32
2324 - fi
2325 -
2326 - if use X; then
2327 - NV_GLX_LIBRARIES=(
2328 - "libEGL.so.$(usex compat ${NV_SOVER} 1.1.0) ${GL_ROOT}"
2329 - "libEGL_nvidia.so.${NV_SOVER} ${GL_ROOT}"
2330 - "libGL.so.$(usex compat ${NV_SOVER} 1.7.0) ${GL_ROOT}"
2331 - "libGLESv1_CM.so.1.2.0 ${GL_ROOT}"
2332 - "libGLESv1_CM_nvidia.so.${NV_SOVER} ${GL_ROOT}"
2333 - "libGLESv2.so.2.1.0 ${GL_ROOT}"
2334 - "libGLESv2_nvidia.so.${NV_SOVER} ${GL_ROOT}"
2335 - "libGLX.so.0 ${GL_ROOT}"
2336 - "libGLX_nvidia.so.${NV_SOVER} ${GL_ROOT}"
2337 - "libGLdispatch.so.0 ${GL_ROOT}"
2338 - "libOpenCL.so.1.0.0 ${CL_ROOT}"
2339 - "libOpenGL.so.0 ${GL_ROOT}"
2340 - "libcuda.so.${NV_SOVER}"
2341 - "libnvcuvid.so.${NV_SOVER}"
2342 - "libnvidia-compiler.so.${NV_SOVER}"
2343 - "libnvidia-eglcore.so.${NV_SOVER}"
2344 - "libnvidia-encode.so.${NV_SOVER}"
2345 - "libnvidia-fatbinaryloader.so.${NV_SOVER}"
2346 - "libnvidia-fbc.so.${NV_SOVER}"
2347 - "libnvidia-glcore.so.${NV_SOVER}"
2348 - "libnvidia-glsi.so.${NV_SOVER}"
2349 - "libnvidia-glvkspirv.so.${NV_SOVER}"
2350 - "libnvidia-ifr.so.${NV_SOVER}"
2351 - "libnvidia-opencl.so.${NV_SOVER}"
2352 - "libnvidia-ptxjitcompiler.so.${NV_SOVER}"
2353 - "libvdpau_nvidia.so.${NV_SOVER}"
2354 - )
2355 -
2356 - if use wayland && has_multilib_profile && [[ ${ABI} == "amd64" ]];
2357 - then
2358 - NV_GLX_LIBRARIES+=(
2359 - "libnvidia-egl-wayland.so.1.0.3"
2360 - )
2361 - fi
2362 -
2363 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "amd64" ]];
2364 - then
2365 - NV_GLX_LIBRARIES+=(
2366 - "libnvidia-wfb.so.${NV_SOVER}"
2367 - )
2368 - fi
2369 -
2370 - if use kernel_FreeBSD; then
2371 - NV_GLX_LIBRARIES+=(
2372 - "libnvidia-tls.so.${NV_SOVER}"
2373 - )
2374 - fi
2375 -
2376 - if use kernel_linux; then
2377 - NV_GLX_LIBRARIES+=(
2378 - "libnvidia-ml.so.${NV_SOVER}"
2379 - "tls/libnvidia-tls.so.${NV_SOVER}"
2380 - )
2381 - fi
2382 -
2383 - for NV_LIB in "${NV_GLX_LIBRARIES[@]}"; do
2384 - donvidia "${nv_libdir}"/${NV_LIB}
2385 - done
2386 - fi
2387 -}
2388 -
2389 -pkg_preinst() {
2390 - if use driver && use kernel_linux; then
2391 - linux-mod_pkg_preinst
2392 -
2393 - local videogroup="$(egetent group video | cut -d ':' -f 3)"
2394 - if [ -z "${videogroup}" ]; then
2395 - eerror "Failed to determine the video group gid"
2396 - die "Failed to determine the video group gid"
2397 - else
2398 - sed -i \
2399 - -e "s:PACKAGE:${PF}:g" \
2400 - -e "s:VIDEOGID:${videogroup}:" \
2401 - "${D}"/etc/modprobe.d/nvidia.conf || die
2402 - fi
2403 - fi
2404 -
2405 - # Clean the dynamic libGL stuff's home to ensure
2406 - # we dont have stale libs floating around
2407 - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ]; then
2408 - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
2409 - fi
2410 - # Make sure we nuke the old nvidia-glx's env.d file
2411 - if [ -e "${ROOT}"/etc/env.d/09nvidia ]; then
2412 - rm -f "${ROOT}"/etc/env.d/09nvidia
2413 - fi
2414 -}
2415 -
2416 -pkg_postinst() {
2417 - use driver && use kernel_linux && linux-mod_pkg_postinst
2418 -
2419 - # Switch to the nvidia implementation
2420 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
2421 - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
2422 -
2423 - readme.gentoo_print_elog
2424 -
2425 - if ! use X; then
2426 - elog "You have elected to not install the X.org driver. Along with"
2427 - elog "this the OpenGL libraries and VDPAU libraries were not"
2428 - elog "installed. Additionally, once the driver is loaded your card"
2429 - elog "and fan will run at max speed which may not be desirable."
2430 - elog "Use the 'nvidia-smi' init script to have your card and fan"
2431 - elog "speed scale appropriately."
2432 - elog
2433 - fi
2434 - if ! use tools; then
2435 - elog "USE=tools controls whether the nvidia-settings application"
2436 - elog "is installed. If you would like to use it, enable that"
2437 - elog "flag and re-emerge this ebuild. Optionally you can install"
2438 - elog "media-video/nvidia-settings"
2439 - elog
2440 - fi
2441 -}
2442 -
2443 -pkg_prerm() {
2444 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
2445 -}
2446 -
2447 -pkg_postrm() {
2448 - use driver && use kernel_linux && linux-mod_pkg_postrm
2449 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
2450 -}
2451
2452 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-396.51.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-396.51.ebuild
2453 deleted file mode 100644
2454 index 8fc4f36564d..00000000000
2455 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-396.51.ebuild
2456 +++ /dev/null
2457 @@ -1,581 +0,0 @@
2458 -# Copyright 1999-2018 Gentoo Foundation
2459 -# Distributed under the terms of the GNU General Public License v2
2460 -
2461 -EAPI=6
2462 -inherit eutils flag-o-matic linux-info linux-mod multilib-minimal nvidia-driver \
2463 - portability toolchain-funcs unpacker user udev
2464 -
2465 -DESCRIPTION="NVIDIA Accelerated Graphics Driver"
2466 -HOMEPAGE="http://www.nvidia.com/ http://www.nvidia.com/Download/Find.aspx"
2467 -
2468 -AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
2469 -AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
2470 -ARM_NV_PACKAGE="NVIDIA-Linux-armv7l-gnueabihf-${PV}"
2471 -
2472 -NV_URI="http://us.download.nvidia.com/XFree86/"
2473 -SRC_URI="
2474 - amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
2475 - amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
2476 - tools? (
2477 - https://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-${PV}.tar.bz2
2478 - )
2479 -"
2480 -
2481 -LICENSE="GPL-2 NVIDIA-r2"
2482 -SLOT="0/${PV%.*}"
2483 -KEYWORDS="-* ~amd64 ~amd64-fbsd"
2484 -RESTRICT="bindist mirror"
2485 -EMULTILIB_PKG="true"
2486 -
2487 -IUSE="acpi compat +driver gtk3 kernel_FreeBSD kernel_linux +kms multilib pax_kernel static-libs +tools uvm wayland +X"
2488 -REQUIRED_USE="
2489 - tools? ( X )
2490 - static-libs? ( tools )
2491 -"
2492 -
2493 -COMMON="
2494 - app-eselect/eselect-opencl
2495 - kernel_linux? ( >=sys-libs/glibc-2.6.1 )
2496 - tools? (
2497 - dev-libs/atk
2498 - dev-libs/glib:2
2499 - dev-libs/jansson
2500 - gtk3? (
2501 - x11-libs/gtk+:3
2502 - )
2503 - x11-libs/cairo
2504 - x11-libs/gdk-pixbuf[X]
2505 - x11-libs/gtk+:2
2506 - x11-libs/libX11
2507 - x11-libs/libXext
2508 - x11-libs/libXrandr
2509 - x11-libs/libXv
2510 - x11-libs/libXxf86vm
2511 - x11-libs/pango[X]
2512 - )
2513 - X? (
2514 - >=app-eselect/eselect-opengl-1.0.9
2515 - app-misc/pax-utils
2516 - )
2517 -"
2518 -DEPEND="
2519 - ${COMMON}
2520 - kernel_linux? ( virtual/linux-sources )
2521 - tools? ( sys-apps/dbus )
2522 -"
2523 -RDEPEND="
2524 - ${COMMON}
2525 - acpi? ( sys-power/acpid )
2526 - tools? ( !media-video/nvidia-settings )
2527 - wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] )
2528 - X? (
2529 - <x11-base/xorg-server-1.20.99:=
2530 - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
2531 - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
2532 - >=x11-libs/libvdpau-1.0[${MULTILIB_USEDEP}]
2533 - sys-libs/zlib[${MULTILIB_USEDEP}]
2534 - )
2535 -"
2536 -QA_PREBUILT="opt/* usr/lib*"
2537 -S=${WORKDIR}/
2538 -
2539 -nvidia_drivers_versions_check() {
2540 - if use amd64 && has_multilib_profile && \
2541 - [ "${DEFAULT_ABI}" != "amd64" ]; then
2542 - eerror "This ebuild doesn't currently support changing your default ABI"
2543 - die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
2544 - fi
2545 -
2546 - if use kernel_linux && kernel_is ge 4 19; then
2547 - ewarn "Gentoo supports kernels which are supported by NVIDIA"
2548 - ewarn "which are limited to the following kernels:"
2549 - ewarn "<sys-kernel/gentoo-sources-4.19"
2550 - ewarn "<sys-kernel/vanilla-sources-4.19"
2551 - ewarn ""
2552 - ewarn "You are free to utilize epatch_user to provide whatever"
2553 - ewarn "support you feel is appropriate, but will not receive"
2554 - ewarn "support as a result of those changes."
2555 - ewarn ""
2556 - ewarn "Do not file a bug report about this."
2557 - ewarn ""
2558 - fi
2559 -
2560 - # Since Nvidia ships many different series of drivers, we need to give the user
2561 - # some kind of guidance as to what version they should install. This tries
2562 - # to point the user in the right direction but can't be perfect. check
2563 - # nvidia-driver.eclass
2564 - nvidia-driver-check-warning
2565 -
2566 - # Kernel features/options to check for
2567 - CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP"
2568 -
2569 - # Now do the above checks
2570 - use kernel_linux && check_extra_config
2571 -}
2572 -
2573 -pkg_pretend() {
2574 - nvidia_drivers_versions_check
2575 -}
2576 -
2577 -pkg_setup() {
2578 - nvidia_drivers_versions_check
2579 -
2580 - # try to turn off distcc and ccache for people that have a problem with it
2581 - export DISTCC_DISABLE=1
2582 - export CCACHE_DISABLE=1
2583 -
2584 - if use driver && use kernel_linux; then
2585 - MODULE_NAMES="nvidia(video:${S}/kernel)"
2586 - use uvm && MODULE_NAMES+=" nvidia-uvm(video:${S}/kernel)"
2587 - use kms && MODULE_NAMES+=" nvidia-modeset(video:${S}/kernel) nvidia-drm(video:${S}/kernel)"
2588 -
2589 - # This needs to run after MODULE_NAMES (so that the eclass checks
2590 - # whether the kernel supports loadable modules) but before BUILD_PARAMS
2591 - # is set (so that KV_DIR is populated).
2592 - linux-mod_pkg_setup
2593 -
2594 - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
2595 - SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC) NV_VERBOSE=1"
2596 -
2597 - # linux-mod_src_compile calls set_arch_to_kernel, which
2598 - # sets the ARCH to x86 but NVIDIA's wrapping Makefile
2599 - # expects x86_64 or i386 and then converts it to x86
2600 - # later on in the build process
2601 - BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
2602 - fi
2603 -
2604 - if use kernel_linux && kernel_is lt 2 6 9; then
2605 - eerror "You must build this against 2.6.9 or higher kernels."
2606 - fi
2607 -
2608 - # set variables to where files are in the package structure
2609 - if use kernel_FreeBSD; then
2610 - use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
2611 - NV_DOC="${S}/doc"
2612 - NV_OBJ="${S}/obj"
2613 - NV_SRC="${S}/src"
2614 - NV_MAN="${S}/x11/man"
2615 - NV_X11="${S}/obj"
2616 - NV_SOVER=1
2617 - elif use kernel_linux; then
2618 - NV_DOC="${S}"
2619 - NV_OBJ="${S}"
2620 - NV_SRC="${S}/kernel"
2621 - NV_MAN="${S}"
2622 - NV_X11="${S}"
2623 - NV_SOVER=${PV}
2624 - else
2625 - die "Could not determine proper NVIDIA package"
2626 - fi
2627 -}
2628 -
2629 -src_prepare() {
2630 - if use pax_kernel; then
2631 - ewarn "Using PAX patches is not supported. You will be asked to"
2632 - ewarn "use a standard kernel should you have issues. Should you"
2633 - ewarn "need support with these patches, contact the PaX team."
2634 - eapply "${FILESDIR}"/${PN}-375.20-pax.patch
2635 - fi
2636 -
2637 - local man_file
2638 - for man_file in "${NV_MAN}"/*1.gz; do
2639 - gunzip $man_file || die
2640 - done
2641 -
2642 - if use tools; then
2643 - cp "${FILESDIR}"/nvidia-settings-linker.patch "${WORKDIR}" || die
2644 - sed -i \
2645 - -e "s:@PV@:${PV}:g" \
2646 - "${WORKDIR}"/nvidia-settings-linker.patch || die
2647 - eapply "${WORKDIR}"/nvidia-settings-linker.patch
2648 - fi
2649 -
2650 - default
2651 -
2652 - if ! [ -f nvidia_icd.json ]; then
2653 - cp nvidia_icd.json.template nvidia_icd.json || die
2654 - sed -i -e 's:__NV_VK_ICD__:libGLX_nvidia.so.0:g' nvidia_icd.json || die
2655 - fi
2656 -}
2657 -
2658 -src_compile() {
2659 - # This is already the default on Linux, as there's no toplevel Makefile, but
2660 - # on FreeBSD there's one and triggers the kernel module build, as we install
2661 - # it by itself, pass this.
2662 -
2663 - cd "${NV_SRC}"
2664 - if use kernel_FreeBSD; then
2665 - MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
2666 - LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
2667 - elif use driver && use kernel_linux; then
2668 - MAKEOPTS=-j1 linux-mod_src_compile
2669 - fi
2670 -
2671 - if use tools; then
2672 - emake -C "${S}"/nvidia-settings-${PV}/src \
2673 - AR="$(tc-getAR)" \
2674 - CC="$(tc-getCC)" \
2675 - DO_STRIP= \
2676 - LD="$(tc-getCC)" \
2677 - LIBDIR="$(get_libdir)" \
2678 - NVLD="$(tc-getLD)" \
2679 - NV_VERBOSE=1 \
2680 - RANLIB="$(tc-getRANLIB)" \
2681 - build-xnvctrl
2682 -
2683 - emake -C "${S}"/nvidia-settings-${PV}/src \
2684 - CC="$(tc-getCC)" \
2685 - DO_STRIP= \
2686 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
2687 - LD="$(tc-getCC)" \
2688 - LIBDIR="$(get_libdir)" \
2689 - NVLD="$(tc-getLD)" \
2690 - NVML_ENABLED=0 \
2691 - NV_USE_BUNDLED_LIBJANSSON=0 \
2692 - NV_VERBOSE=1
2693 - fi
2694 -}
2695 -
2696 -# Install nvidia library:
2697 -# the first parameter is the library to install
2698 -# the second parameter is the provided soversion
2699 -# the third parameter is the target directory if it is not /usr/lib
2700 -donvidia() {
2701 - # Full path to library
2702 - nv_LIB="${1}"
2703 -
2704 - # SOVER to use
2705 - nv_SOVER="$(scanelf -qF'%S#F' ${nv_LIB})"
2706 -
2707 - # Where to install
2708 - nv_DEST="${2}"
2709 -
2710 - # Get just the library name
2711 - nv_LIBNAME=$(basename "${nv_LIB}")
2712 -
2713 - if [[ "${nv_DEST}" ]]; then
2714 - exeinto ${nv_DEST}
2715 - action="doexe"
2716 - else
2717 - nv_DEST="/usr/$(get_libdir)"
2718 - action="dolib.so"
2719 - fi
2720 -
2721 - # Install the library
2722 - ${action} ${nv_LIB} || die "failed to install ${nv_LIBNAME}"
2723 -
2724 - # If the library has a SONAME and SONAME does not match the library name,
2725 - # then we need to create a symlink
2726 - if [[ ${nv_SOVER} ]] && ! [[ "${nv_SOVER}" = "${nv_LIBNAME}" ]]; then
2727 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_SOVER} \
2728 - || die "failed to create ${nv_DEST}/${nv_SOVER} symlink"
2729 - fi
2730 -
2731 - dosym ${nv_LIBNAME} ${nv_DEST}/${nv_LIBNAME/.so*/.so} \
2732 - || die "failed to create ${nv_LIBNAME/.so*/.so} symlink"
2733 -}
2734 -
2735 -src_install() {
2736 - if use driver && use kernel_linux; then
2737 - linux-mod_src_install
2738 -
2739 - # Add the aliases
2740 - # This file is tweaked with the appropriate video group in
2741 - # pkg_preinst, see bug #491414
2742 - insinto /etc/modprobe.d
2743 - newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
2744 - doins "${FILESDIR}"/nvidia-rmmod.conf
2745 -
2746 - # Ensures that our device nodes are created when not using X
2747 - exeinto "$(get_udevdir)"
2748 - newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh
2749 - udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
2750 - elif use kernel_FreeBSD; then
2751 - if use x86-fbsd; then
2752 - insinto /boot/modules
2753 - doins "${S}/src/nvidia.kld"
2754 - fi
2755 -
2756 - exeinto /boot/modules
2757 - doexe "${S}/src/nvidia.ko"
2758 - fi
2759 -
2760 - # NVIDIA kernel <-> userspace driver config lib
2761 - donvidia ${NV_OBJ}/libnvidia-cfg.so.${NV_SOVER}
2762 -
2763 - # NVIDIA framebuffer capture library
2764 - donvidia ${NV_OBJ}/libnvidia-fbc.so.${NV_SOVER}
2765 -
2766 - # NVIDIA video encode/decode <-> CUDA
2767 - if use kernel_linux; then
2768 - donvidia ${NV_OBJ}/libnvcuvid.so.${NV_SOVER}
2769 - donvidia ${NV_OBJ}/libnvidia-encode.so.${NV_SOVER}
2770 - fi
2771 -
2772 - if use X; then
2773 - # Xorg DDX driver
2774 - insinto /usr/$(get_libdir)/xorg/modules/drivers
2775 - doins ${NV_X11}/nvidia_drv.so
2776 -
2777 - # Xorg GLX driver
2778 - donvidia ${NV_X11}/libglx.so.${NV_SOVER} \
2779 - /usr/$(get_libdir)/opengl/nvidia/extensions
2780 -
2781 - # Xorg nvidia.conf
2782 - if has_version '>=x11-base/xorg-server-1.16'; then
2783 - insinto /usr/share/X11/xorg.conf.d
2784 - newins {,50-}nvidia-drm-outputclass.conf
2785 - fi
2786 -
2787 - insinto /usr/share/glvnd/egl_vendor.d
2788 - doins ${NV_X11}/10_nvidia.json
2789 - fi
2790 -
2791 - if use wayland; then
2792 - insinto /usr/share/egl/egl_external_platform.d
2793 - doins ${NV_X11}/10_nvidia_wayland.json
2794 - fi
2795 -
2796 - # OpenCL ICD for NVIDIA
2797 - if use kernel_linux; then
2798 - insinto /etc/OpenCL/vendors
2799 - doins ${NV_OBJ}/nvidia.icd
2800 - fi
2801 -
2802 - # Documentation
2803 - if use kernel_FreeBSD; then
2804 - dodoc "${NV_DOC}/README"
2805 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
2806 - use tools && doman "${NV_MAN}"/nvidia-settings.1
2807 - else
2808 - # Docs
2809 - newdoc "${NV_DOC}/README.txt" README
2810 - dodoc "${NV_DOC}/NVIDIA_Changelog"
2811 - doman "${NV_MAN}"/nvidia-smi.1
2812 - use X && doman "${NV_MAN}"/nvidia-xconfig.1
2813 - use tools && doman "${NV_MAN}"/nvidia-settings.1
2814 - doman "${NV_MAN}"/nvidia-cuda-mps-control.1
2815 - fi
2816 -
2817 - docinto html
2818 - dodoc -r ${NV_DOC}/html/*
2819 -
2820 - # Helper Apps
2821 - exeinto /opt/bin/
2822 -
2823 - if use X; then
2824 - doexe ${NV_OBJ}/nvidia-xconfig
2825 -
2826 - insinto /etc/vulkan/icd.d
2827 - doins nvidia_icd.json
2828 - fi
2829 -
2830 - if use kernel_linux; then
2831 - doexe ${NV_OBJ}/nvidia-cuda-mps-control
2832 - doexe ${NV_OBJ}/nvidia-cuda-mps-server
2833 - doexe ${NV_OBJ}/nvidia-debugdump
2834 - doexe ${NV_OBJ}/nvidia-persistenced
2835 - doexe ${NV_OBJ}/nvidia-smi
2836 -
2837 - # install nvidia-modprobe setuid and symlink in /usr/bin (bug #505092)
2838 - doexe ${NV_OBJ}/nvidia-modprobe
2839 - fowners root:video /opt/bin/nvidia-modprobe
2840 - fperms 4710 /opt/bin/nvidia-modprobe
2841 - dosym /{opt,usr}/bin/nvidia-modprobe
2842 -
2843 - doman nvidia-cuda-mps-control.1
2844 - doman nvidia-modprobe.1
2845 - doman nvidia-persistenced.1
2846 - newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
2847 - newconfd "${FILESDIR}/nvidia-persistenced.conf" nvidia-persistenced
2848 - newinitd "${FILESDIR}/nvidia-persistenced.init" nvidia-persistenced
2849 - fi
2850 -
2851 - if use tools; then
2852 - emake -C "${S}"/nvidia-settings-${PV}/src/ \
2853 - DESTDIR="${D}" \
2854 - GTK3_AVAILABLE=$(usex gtk3 1 0) \
2855 - LIBDIR="${D}/usr/$(get_libdir)" \
2856 - NV_USE_BUNDLED_LIBJANSSON=0 \
2857 - NV_VERBOSE=1 \
2858 - PREFIX=/usr \
2859 - DO_STRIP= \
2860 - install
2861 -
2862 - if use static-libs; then
2863 - dolib.a "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
2864 -
2865 - insinto /usr/include/NVCtrl
2866 - doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
2867 - fi
2868 -
2869 - insinto /usr/share/nvidia/
2870 - doins nvidia-application-profiles-${PV}-key-documentation
2871 -
2872 - insinto /etc/nvidia
2873 - newins \
2874 - nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc
2875 -
2876 - # There is no icon in the FreeBSD tarball.
2877 - use kernel_FreeBSD || \
2878 - doicon ${NV_OBJ}/nvidia-settings.png
2879 -
2880 - domenu "${FILESDIR}"/nvidia-settings.desktop
2881 -
2882 - exeinto /etc/X11/xinit/xinitrc.d
2883 - newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
2884 - fi
2885 -
2886 - dobin ${NV_OBJ}/nvidia-bug-report.sh
2887 -
2888 - if has_multilib_profile && use multilib; then
2889 - local OABI=${ABI}
2890 - for ABI in $(get_install_abis); do
2891 - src_install-libs
2892 - done
2893 - ABI=${OABI}
2894 - unset OABI
2895 - else
2896 - src_install-libs
2897 - fi
2898 -
2899 - is_final_abi || die "failed to iterate through all ABIs"
2900 -
2901 - readme.gentoo_create_doc
2902 -}
2903 -
2904 -src_install-libs() {
2905 - local inslibdir=$(get_libdir)
2906 - local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
2907 - local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
2908 - local nv_libdir="${NV_OBJ}"
2909 -
2910 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "x86" ]]; then
2911 - nv_libdir="${NV_OBJ}"/32
2912 - fi
2913 -
2914 - if use X; then
2915 - NV_GLX_LIBRARIES=(
2916 - "libEGL.so.$(usex compat ${NV_SOVER} 1.1.0) ${GL_ROOT}"
2917 - "libEGL_nvidia.so.${NV_SOVER} ${GL_ROOT}"
2918 - "libGL.so.$(usex compat ${NV_SOVER} 1.7.0) ${GL_ROOT}"
2919 - "libGLESv1_CM.so.1.2.0 ${GL_ROOT}"
2920 - "libGLESv1_CM_nvidia.so.${NV_SOVER} ${GL_ROOT}"
2921 - "libGLESv2.so.2.1.0 ${GL_ROOT}"
2922 - "libGLESv2_nvidia.so.${NV_SOVER} ${GL_ROOT}"
2923 - "libGLX.so.0 ${GL_ROOT}"
2924 - "libGLX_nvidia.so.${NV_SOVER} ${GL_ROOT}"
2925 - "libGLdispatch.so.0 ${GL_ROOT}"
2926 - "libOpenCL.so.1.0.0 ${CL_ROOT}"
2927 - "libOpenGL.so.0 ${GL_ROOT}"
2928 - "libcuda.so.${NV_SOVER}"
2929 - "libnvcuvid.so.${NV_SOVER}"
2930 - "libnvidia-compiler.so.${NV_SOVER}"
2931 - "libnvidia-eglcore.so.${NV_SOVER}"
2932 - "libnvidia-encode.so.${NV_SOVER}"
2933 - "libnvidia-fatbinaryloader.so.${NV_SOVER}"
2934 - "libnvidia-fbc.so.${NV_SOVER}"
2935 - "libnvidia-glcore.so.${NV_SOVER}"
2936 - "libnvidia-glsi.so.${NV_SOVER}"
2937 - "libnvidia-glvkspirv.so.${NV_SOVER}"
2938 - "libnvidia-ifr.so.${NV_SOVER}"
2939 - "libnvidia-opencl.so.${NV_SOVER}"
2940 - "libnvidia-ptxjitcompiler.so.${NV_SOVER}"
2941 - "libvdpau_nvidia.so.${NV_SOVER}"
2942 - )
2943 -
2944 - if use wayland && has_multilib_profile && [[ ${ABI} == "amd64" ]];
2945 - then
2946 - NV_GLX_LIBRARIES+=(
2947 - "libnvidia-egl-wayland.so.1.0.3"
2948 - )
2949 - fi
2950 -
2951 - if use kernel_linux && has_multilib_profile && [[ ${ABI} == "amd64" ]];
2952 - then
2953 - NV_GLX_LIBRARIES+=(
2954 - "libnvidia-wfb.so.${NV_SOVER}"
2955 - )
2956 - fi
2957 -
2958 - if use kernel_FreeBSD; then
2959 - NV_GLX_LIBRARIES+=(
2960 - "libnvidia-tls.so.${NV_SOVER}"
2961 - )
2962 - fi
2963 -
2964 - if use kernel_linux; then
2965 - NV_GLX_LIBRARIES+=(
2966 - "libnvidia-ml.so.${NV_SOVER}"
2967 - "tls/libnvidia-tls.so.${NV_SOVER}"
2968 - )
2969 - fi
2970 -
2971 - for NV_LIB in "${NV_GLX_LIBRARIES[@]}"; do
2972 - donvidia "${nv_libdir}"/${NV_LIB}
2973 - done
2974 - fi
2975 -}
2976 -
2977 -pkg_preinst() {
2978 - if use driver && use kernel_linux; then
2979 - linux-mod_pkg_preinst
2980 -
2981 - local videogroup="$(egetent group video | cut -d ':' -f 3)"
2982 - if [ -z "${videogroup}" ]; then
2983 - eerror "Failed to determine the video group gid"
2984 - die "Failed to determine the video group gid"
2985 - else
2986 - sed -i \
2987 - -e "s:PACKAGE:${PF}:g" \
2988 - -e "s:VIDEOGID:${videogroup}:" \
2989 - "${D}"/etc/modprobe.d/nvidia.conf || die
2990 - fi
2991 - fi
2992 -
2993 - # Clean the dynamic libGL stuff's home to ensure
2994 - # we dont have stale libs floating around
2995 - if [ -d "${ROOT}"/usr/lib/opengl/nvidia ]; then
2996 - rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
2997 - fi
2998 - # Make sure we nuke the old nvidia-glx's env.d file
2999 - if [ -e "${ROOT}"/etc/env.d/09nvidia ]; then
3000 - rm -f "${ROOT}"/etc/env.d/09nvidia
3001 - fi
3002 -}
3003 -
3004 -pkg_postinst() {
3005 - use driver && use kernel_linux && linux-mod_pkg_postinst
3006 -
3007 - # Switch to the nvidia implementation
3008 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
3009 - "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
3010 -
3011 - readme.gentoo_print_elog
3012 -
3013 - if ! use X; then
3014 - elog "You have elected to not install the X.org driver. Along with"
3015 - elog "this the OpenGL libraries and VDPAU libraries were not"
3016 - elog "installed. Additionally, once the driver is loaded your card"
3017 - elog "and fan will run at max speed which may not be desirable."
3018 - elog "Use the 'nvidia-smi' init script to have your card and fan"
3019 - elog "speed scale appropriately."
3020 - elog
3021 - fi
3022 - if ! use tools; then
3023 - elog "USE=tools controls whether the nvidia-settings application"
3024 - elog "is installed. If you would like to use it, enable that"
3025 - elog "flag and re-emerge this ebuild. Optionally you can install"
3026 - elog "media-video/nvidia-settings"
3027 - elog
3028 - fi
3029 -}
3030 -
3031 -pkg_prerm() {
3032 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
3033 -}
3034 -
3035 -pkg_postrm() {
3036 - use driver && use kernel_linux && linux-mod_pkg_postrm
3037 - use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
3038 -}