From b49088575eb777ced2551f484da86317332d6087 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 24 Jul 2021 02:11:45 +0100 Subject: gentoo resync : 24.07.2021 --- media-video/Manifest.gz | Bin 25938 -> 25941 bytes media-video/openshot/Manifest | 4 +- media-video/openshot/openshot-2.5.1-r1.ebuild | 12 +- .../openshot/openshot-2.5.1_p20210228.ebuild | 14 +- media-video/pipewire/Manifest | 18 +- media-video/pipewire/pipewire-0.3.25-r1.ebuild | 236 ++++++++++ media-video/pipewire/pipewire-0.3.25.ebuild | 236 ---------- media-video/pipewire/pipewire-0.3.26-r1.ebuild | 243 ++++++++++ media-video/pipewire/pipewire-0.3.26.ebuild | 243 ---------- media-video/pipewire/pipewire-0.3.27-r1.ebuild | 269 ----------- media-video/pipewire/pipewire-0.3.27-r2.ebuild | 269 +++++++++++ media-video/pipewire/pipewire-0.3.28-r1.ebuild | 270 +++++++++++ media-video/pipewire/pipewire-0.3.28.ebuild | 270 ----------- media-video/pipewire/pipewire-0.3.29-r1.ebuild | 271 +++++++++++ media-video/pipewire/pipewire-0.3.29.ebuild | 271 ----------- media-video/pipewire/pipewire-0.3.30-r1.ebuild | 274 ----------- media-video/pipewire/pipewire-0.3.30-r2.ebuild | 274 +++++++++++ media-video/pipewire/pipewire-0.3.31-r1.ebuild | 274 +++++++++++ media-video/pipewire/pipewire-0.3.31.ebuild | 274 ----------- media-video/pipewire/pipewire-0.3.32.ebuild | 272 +++++++++++ media-video/pipewire/pipewire-9999.ebuild | 4 +- media-video/pitivi/Manifest | 2 +- media-video/pitivi/pitivi-0.999-r4.ebuild | 14 +- media-video/totem/Manifest | 4 +- media-video/totem/totem-3.38.0.ebuild | 6 +- media-video/totem/totem-3.38.1.ebuild | 6 +- media-video/vlc/Manifest | 14 +- media-video/vlc/vlc-3.0.12.1-r101.ebuild | 513 -------------------- media-video/vlc/vlc-3.0.12.1-r102.ebuild | 513 ++++++++++++++++++++ media-video/vlc/vlc-3.0.14-r3.ebuild | 513 -------------------- media-video/vlc/vlc-3.0.14-r4.ebuild | 514 -------------------- media-video/vlc/vlc-3.0.14-r5.ebuild | 513 ++++++++++++++++++++ media-video/vlc/vlc-3.0.14-r6.ebuild | 514 ++++++++++++++++++++ media-video/vlc/vlc-3.0.16-r3.ebuild | 514 -------------------- media-video/vlc/vlc-3.0.16-r4.ebuild | 515 --------------------- media-video/vlc/vlc-3.0.16-r5.ebuild | 514 ++++++++++++++++++++ media-video/vlc/vlc-3.0.16-r6.ebuild | 515 +++++++++++++++++++++ media-video/vlc/vlc-3.0.9999.ebuild | 2 +- media-video/vlc/vlc-9999.ebuild | 2 +- media-video/xvid4conf/Manifest | 2 +- media-video/xvid4conf/xvid4conf-1.12.ebuild | 9 +- 41 files changed, 4734 insertions(+), 4463 deletions(-) create mode 100644 media-video/pipewire/pipewire-0.3.25-r1.ebuild delete mode 100644 media-video/pipewire/pipewire-0.3.25.ebuild create mode 100644 media-video/pipewire/pipewire-0.3.26-r1.ebuild delete mode 100644 media-video/pipewire/pipewire-0.3.26.ebuild delete mode 100644 media-video/pipewire/pipewire-0.3.27-r1.ebuild create mode 100644 media-video/pipewire/pipewire-0.3.27-r2.ebuild create mode 100644 media-video/pipewire/pipewire-0.3.28-r1.ebuild delete mode 100644 media-video/pipewire/pipewire-0.3.28.ebuild create mode 100644 media-video/pipewire/pipewire-0.3.29-r1.ebuild delete mode 100644 media-video/pipewire/pipewire-0.3.29.ebuild delete mode 100644 media-video/pipewire/pipewire-0.3.30-r1.ebuild create mode 100644 media-video/pipewire/pipewire-0.3.30-r2.ebuild create mode 100644 media-video/pipewire/pipewire-0.3.31-r1.ebuild delete mode 100644 media-video/pipewire/pipewire-0.3.31.ebuild create mode 100644 media-video/pipewire/pipewire-0.3.32.ebuild delete mode 100644 media-video/vlc/vlc-3.0.12.1-r101.ebuild create mode 100644 media-video/vlc/vlc-3.0.12.1-r102.ebuild delete mode 100644 media-video/vlc/vlc-3.0.14-r3.ebuild delete mode 100644 media-video/vlc/vlc-3.0.14-r4.ebuild create mode 100644 media-video/vlc/vlc-3.0.14-r5.ebuild create mode 100644 media-video/vlc/vlc-3.0.14-r6.ebuild delete mode 100644 media-video/vlc/vlc-3.0.16-r3.ebuild delete mode 100644 media-video/vlc/vlc-3.0.16-r4.ebuild create mode 100644 media-video/vlc/vlc-3.0.16-r5.ebuild create mode 100644 media-video/vlc/vlc-3.0.16-r6.ebuild (limited to 'media-video') diff --git a/media-video/Manifest.gz b/media-video/Manifest.gz index da17c265deff..4ce199282049 100644 Binary files a/media-video/Manifest.gz and b/media-video/Manifest.gz differ diff --git a/media-video/openshot/Manifest b/media-video/openshot/Manifest index fd7bd7c9cfe1..f07c476a6214 100644 --- a/media-video/openshot/Manifest +++ b/media-video/openshot/Manifest @@ -1,5 +1,5 @@ DIST openshot-2.5.1.tar.gz 60217543 BLAKE2B 3f195b14a9fb004e845c731be64138c20da84ac0c90db43b547ee9ea059d32f85ada04aa0462b755a7ea5c3d3b30088fab35414147dded55deb9d5eab5926d2d SHA512 8254a45254bbe523b6485b9598022de2c46ec30818e606ac4665790d29486693c4efe9f5bc55ee43d6342de6782cf0090e4bc880e831c08e3b1218bca555af14 DIST openshot-2.5.1_p20210228.tar.gz 64780534 BLAKE2B c31bd2531df28ce9bed688fbc34dc383018024ffe9364699e45c08135f5c0692d97f601bc578ba07fd44e2f8f58f0b27c5bc10bb3af48c8cf0be17a45b966116 SHA512 b5ce39d31bc1b997d272b3817ccdcef4749126755e329a278700f6735a1484b0c2b917e04a5f1b9826ee0e5ea983a624be59af16bf79f038be44a29763cc68b5 -EBUILD openshot-2.5.1-r1.ebuild 1244 BLAKE2B 72ebe9eabc129ce50d31f4b508b5587e1859ceca5f2e82bf96fdcafcf594aa69ed99e32a45135a2a726d8a3afa793ec8d29e509acb4bcfc0401e1c123cfc6d49 SHA512 93e3a66e3f25f83535598335a6b044dd056a5ab6d9f8e5149eb09ee8848dc6da2a0dc7907cebd3a8a99c639007af5322e3d469839082ab4e9d0f760d31f41842 -EBUILD openshot-2.5.1_p20210228.ebuild 1335 BLAKE2B fa1de51206b4c92add5075a218df9b5efba55bfd392c1c1f3593b2eca0103f60d2a0aee659452a26db6da305202e584a11c7240d5a606758f4c2fbce08443c9f SHA512 9de80c57c34ab236d24cfef7b1afb24f4f7aee5b5d9c9ed14c751b9e97e116dd283bca0c0d675781cb5efbc7b01c0873ab0685320d16f16072a11c07b051290f +EBUILD openshot-2.5.1-r1.ebuild 1212 BLAKE2B 115cdee1e2387d7aef578e93aee8c14287bd586fcd5610caaa9b2d30dd7bcfe427d5e48d9b0a8c192f5478addba460ebe3be404a34bd49b951ab6e5638bc110b SHA512 4f959d3c043c62832fd78af6f69b619b49dfc2679a165ce08367567b262f52c20bc26185f00c3e5e89ac377af2a8c1f53b9e8d11c324ad0bb53ae0dec4e536d1 +EBUILD openshot-2.5.1_p20210228.ebuild 1297 BLAKE2B a73294a019877143fef1dd33c1aa15ad5571239954f60e9d249ff33e6ac0b0a18eea9cbb04bf1219be0cbd68a262a3fc4541cca5ae01fb019b57fd154c0766d3 SHA512 c75338d63a32d903ac6754de4f0557e90af0288b24638b10e70ddd17c42fb495e335f53d8e7cbee84d6059ce6f1f4263cf1b7e3a016309577eb875f11dbb3166 MISC metadata.xml 520 BLAKE2B 78c1c2c7058fe041a5aa1e783622529dd897a609ce801d718466c7d14b9b5ccd05ba496f468f9100301f20ccfa04c3824aed975f39f7febce487b87bddce9282 SHA512 3d2227d47b72451b5b600384ef70b3085a8e46cba1f076d05c558b69ef50d18084dd31d2f14323237c1500842ddea664bcc78a68de9f9d5d472f44ab90a6c325 diff --git a/media-video/openshot/openshot-2.5.1-r1.ebuild b/media-video/openshot/openshot-2.5.1-r1.ebuild index 42798adc92f3..5bdad6fff912 100644 --- a/media-video/openshot/openshot-2.5.1-r1.ebuild +++ b/media-video/openshot/openshot-2.5.1-r1.ebuild @@ -3,7 +3,7 @@ EAPI=7 -PYTHON_COMPAT=( python3_{7,8,9} ) +PYTHON_COMPAT=( python3_{8,9} ) PYTHON_REQ_USE=xml DISTUTILS_SINGLE_IMPL=1 @@ -22,16 +22,16 @@ IUSE="doc" RDEPEND=" $(python_gen_cond_dep ' - dev-python/httplib2[${PYTHON_MULTI_USEDEP}] - dev-python/PyQt5[${PYTHON_MULTI_USEDEP},gui,svg,webkit(-),widgets] - dev-python/pyzmq[${PYTHON_MULTI_USEDEP}] - dev-python/requests[${PYTHON_MULTI_USEDEP}] + dev-python/httplib2[${PYTHON_USEDEP}] + dev-python/PyQt5[${PYTHON_USEDEP},gui,svg,webkit(-),widgets] + dev-python/pyzmq[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] ') >=media-libs/libopenshot-0.2.5:0=[python,${PYTHON_SINGLE_USEDEP}] " BDEPEND=" $(python_gen_cond_dep ' - doc? ( dev-python/sphinx[${PYTHON_MULTI_USEDEP}] ) + doc? ( dev-python/sphinx[${PYTHON_USEDEP}] ) ') " diff --git a/media-video/openshot/openshot-2.5.1_p20210228.ebuild b/media-video/openshot/openshot-2.5.1_p20210228.ebuild index 7eb405299fe5..16b6035f8946 100644 --- a/media-video/openshot/openshot-2.5.1_p20210228.ebuild +++ b/media-video/openshot/openshot-2.5.1_p20210228.ebuild @@ -3,7 +3,7 @@ EAPI=7 -PYTHON_COMPAT=( python3_{7,8,9} ) +PYTHON_COMPAT=( python3_{8,9} ) PYTHON_REQ_USE=xml DISTUTILS_SINGLE_IMPL=1 @@ -23,17 +23,17 @@ IUSE="doc" RDEPEND=" $(python_gen_cond_dep ' - dev-python/httplib2[${PYTHON_MULTI_USEDEP}] - dev-python/PyQt5[${PYTHON_MULTI_USEDEP},gui,svg,widgets] - dev-python/PyQtWebEngine[${PYTHON_MULTI_USEDEP}] - dev-python/pyzmq[${PYTHON_MULTI_USEDEP}] - dev-python/requests[${PYTHON_MULTI_USEDEP}] + dev-python/httplib2[${PYTHON_USEDEP}] + dev-python/PyQt5[${PYTHON_USEDEP},gui,svg,widgets] + dev-python/PyQtWebEngine[${PYTHON_USEDEP}] + dev-python/pyzmq[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] ') >=media-libs/libopenshot-0.2.5:0=[python,${PYTHON_SINGLE_USEDEP}] " BDEPEND=" $(python_gen_cond_dep ' - doc? ( dev-python/sphinx[${PYTHON_MULTI_USEDEP}] ) + doc? ( dev-python/sphinx[${PYTHON_USEDEP}] ) ') " diff --git a/media-video/pipewire/Manifest b/media-video/pipewire/Manifest index 1786062e4d25..3c49aa49dfe9 100644 --- a/media-video/pipewire/Manifest +++ b/media-video/pipewire/Manifest @@ -15,13 +15,15 @@ DIST pipewire-0.3.28.tar.gz 1474219 BLAKE2B d20b39c8ed49cd44f2109aab6453aac547ff DIST pipewire-0.3.29.tar.gz 1504935 BLAKE2B fe3984ec4b02fe91683d382e3891e174748b52c5e2f609dc838837f1ac0fea736e06395a022b8ec152fe015cca24c54d4c1896acde3a2ac66eb700dc2336fe4f SHA512 bc163ad3e2d7696295fd3720e8f9cc4d478a55c0694c0faa03a40333e3b65fcbff27e4e296eb9dd0191ca2782e04934915c46e04a2444b458491cd2905823ddd DIST pipewire-0.3.30.tar.gz 1540950 BLAKE2B 69b35743e3ad9a8caf68d9bb16cf395203efed6c3046b3f4ea33bbcdd6649f5d425d813042c12396a7cd5ff4e8ed91dbc395a96fe55935ad50f9c3f3918b0407 SHA512 ec525e0fb7e5c5313245fcc745b971fd7d4a1caa7ab9fe1fa38dc20d50f03e5969197e86b60659971676bec0f79aa7b7951c8209bfe9565a3fd1dcac1b8535b3 DIST pipewire-0.3.31.tar.gz 1594284 BLAKE2B 0ff358c53ea4357a72ac58ee45ccac792161d3ddd7a9dbcd6933be88e0ddc5d9c49468a3b1eb0cdf9ea81ec4272ad53078f6cae1fd20358bbeed108139e217ce SHA512 ff21e281bb3e5f6da1001e0c64b33368e96d31f0ec2d395cdfcfac105b0442d8fedd2225e6e5d1c93fdbd5e0108accecebbb7c294c55803a4ea853f1efa0c069 +DIST pipewire-0.3.32.tar.gz 1604622 BLAKE2B cab83a17a2b27f710e1377a2ad2ad7003053ef3e8b55423362f0b428e22d52c2ce564da00aab71cc93262d4cb21f239fffea195d05937fdf3489dc540b77d58d SHA512 8a7fe26a78071fdd8d4c9e2d9bf3791af8e0cb53b976b45d39dcab4ad08196808f416911fb1b366cc85e3fa80592ec79c4e4556bb3a390f4a10229b4bf9893f7 EBUILD pipewire-0.3.22.ebuild 3177 BLAKE2B 712e773c42b0a89d482a1c38f1d5b2ad73bd9790173093813f257378e5bcda3aaaeedb2d215812637d14dccc4c57cb25ba3d4574d579821f7c09f8a110cac8ac SHA512 89583f0495c8a12598c829de80d2b515a1a37aecf51b4cb54c4988f0fc3aff2f5d9b7f4d23621678d5f1b2e67f145d941eacc0d9eca0281d9cf202ff109a7195 -EBUILD pipewire-0.3.25.ebuild 8586 BLAKE2B b1e467d7e9352a510239d1aee632e4fe6704811cf89d8add118757b6d38240bc0b44f1501db416c1f2c693846667a953826cef6bec8e32bf9362b9c07b804138 SHA512 f16b4f5b1dbfea605f628941edb3931c315854f99a242f63ec6d1b7b1bd2754bb27e417215d02e57b1a7980db8660616cf54dcf4aa12b077a847c9136c73c735 -EBUILD pipewire-0.3.26.ebuild 8737 BLAKE2B d739d6931d1a2b4a12b011abefcac40d9cf81a363ad1897967cf12c33c346ca0b7c217d5ce8e2433b601fd698f74361a5719d667aa6bc45253d8003f14b5076d SHA512 e782ffc242bb437d8a5f465321ece26c86bfc40e65b7beb9ad4ff89fb4edbb1c7458dbe9ea6ce1568ae092747c56226adab568b694c176cea1bf99b137647ee5 -EBUILD pipewire-0.3.27-r1.ebuild 9298 BLAKE2B 92e91609706d83720cd6aefd0afa5d3f06a543d98c783ccf92e562eeb7f4bd07e3de54c6834116f62952c6d83b0dc19a759ec14712d076dc327999aecbfd2f18 SHA512 0584ba24a57f4227b550943a09793846192820f898a7ff71ddd391447059bda83b250aa209efa74d6482dd7055617f815a35960a625c5bdb05151548106507be -EBUILD pipewire-0.3.28.ebuild 9370 BLAKE2B 305b012d603420eb7c6c8bd70747889a89b2321649f43d3108eb21cf8046ddc64b7884045656793a9787bcd45973698aa61351c0930d4181cdecc34ebcda3388 SHA512 904e6c09d47ee6198bfcb6c3a8d3f1edf9eb69af5676f6401e1e54509ac8d510c33d62d146c3104e5c7ff571e08db50bfc6568e8cf269b654c4fefef3330019b -EBUILD pipewire-0.3.29.ebuild 9389 BLAKE2B 3809e908b15e24a41137880a37c2e4eec2fbbb8c03387131bf3b7a57dbde220980480156843565134f29c9ae0d21a038dd9be55c681a92b689e1d6e12210f070 SHA512 822b0134c90bdb01b7019b94b5676e149fb8d6801a47ddfee831288a6e6139334308302b5654b49469dee07f1f52701a3b021aebf40d4c49acc6278955c82bf8 -EBUILD pipewire-0.3.30-r1.ebuild 9672 BLAKE2B 7ce9271b57e764142166d4a527d2bdf19152d940bcb06761d4e3da38451c356f246186f82a2448f3b9d35b71e6ea3abb5c0acfbddbf39b0fb32258899cceddf2 SHA512 50a032216f076ed6341ac10b4ccf13565047cb28da54d2f32d4e7d7b87e2a0915ac0ccb8601f9f1cbab3f023f4f2dea5a18c5a494a6813f40c79da44870cac97 -EBUILD pipewire-0.3.31.ebuild 9676 BLAKE2B 9629c2dd52835484d9dc6ea149213ba832a76f03344a6098a4207a2e501d5066b2872c6adcde9d0f1dd937f7dafa1f37fba85a974d72b69777f720d15be9b02b SHA512 29f4cdb87ca7f3acf8474c4b86b30ed1db065d5071eb50aafb5f48d490180e8875b8008d168ec8e6f03ed465a90fbb79d9bfc81159c3650ea7d5d305baa7a485 -EBUILD pipewire-9999.ebuild 9676 BLAKE2B 9629c2dd52835484d9dc6ea149213ba832a76f03344a6098a4207a2e501d5066b2872c6adcde9d0f1dd937f7dafa1f37fba85a974d72b69777f720d15be9b02b SHA512 29f4cdb87ca7f3acf8474c4b86b30ed1db065d5071eb50aafb5f48d490180e8875b8008d168ec8e6f03ed465a90fbb79d9bfc81159c3650ea7d5d305baa7a485 +EBUILD pipewire-0.3.25-r1.ebuild 8591 BLAKE2B 4ed730cd42404fc94e7665c6ee07e9548e1d5e363f74af0a52ff488e005d6f582081f6ceef383f84e8c378c833f2406646c7b3b84e50074a9519ffeb49912b8a SHA512 5541d51a4888f753f0c463fb54009b5aabe45047df2b7b53c6016abc2481be589067bb0ecf4ee79c64a1ae2d4b06254e6b61f210a9737ee57a159da332bc3820 +EBUILD pipewire-0.3.26-r1.ebuild 8742 BLAKE2B 112df615c5e4549c2d3d44e19f45d48eb1787d4570c6e4ec5041775b3e67c2c010586ffdcccd29a8a8fd521a1b73303ab3086aaa3c5d7b6a11b4db67063fba71 SHA512 20d607009548c323e704cd33b07e0437b9ad9d1ec8a7eff895b558d1825b596550c78a956dbf7ddb9bd7e8aa312271f04c7969577180151d00e27b5128f62317 +EBUILD pipewire-0.3.27-r2.ebuild 9303 BLAKE2B 692ca1e00160f1c07f9962e1b9c22ba6185e4d97298084ef295b5688b79fa1d9b573f675c7d2a25e28001cd0ca6becba2da4e71243354dfdd41b3f97d364bc18 SHA512 128349b662a3f25159f072d998f14291db8185e3d39dfd1c5f081eb54b55bb96204cb34ad478e6f4568df3ea86b0ad68f1fd4673ab776dd49a85351bfa4cb7f4 +EBUILD pipewire-0.3.28-r1.ebuild 9375 BLAKE2B 8c48d0a74514ffb887696a078c20f8c52f583b7ad376b8493b796a5a173bf179c2927f7c04ada6a37a1e8708e3137680b958779652b475b43ae26e56d8adf98f SHA512 7961c80768d42f41a18c814cac91b36504a68f21940b30795e3eaf26b49039f43a64a30855b1789cd35f04fe89ed337fa0828f68dad68e1a9b5d67ec7c3bc1fd +EBUILD pipewire-0.3.29-r1.ebuild 9394 BLAKE2B f14cffd0a50e2405795c56ad277c53e52e1b2b0121f4c0c207246b69f0a3029c67632b664438f15c34cc2f71681d9f8083e2a420d2c2018198d3b61eb127cc43 SHA512 b32f48d64b899a99a6fef1c7fd8045ffda792588950607c568ad14df18ae52731f001bc96c88c6da66e7c8d3ec3615a15f3da4136fc166e2958633514fdbe9aa +EBUILD pipewire-0.3.30-r2.ebuild 9677 BLAKE2B 62e6ec28bf67661acc51f067e298f451ec6331a445ff8963307ea85c08b87dbb596ae16432405d5273bf561f2ed3afe87164070a5ec36dfd7cb16e0d1b6f3c4d SHA512 5075db1140d524776ae7e8503298c10eaea0bf3e5b8bf81dd9c7f34a142072d7c294363eb67f21481697c6487ebaeb6c45882bb25f9d73b7ff363a50cfc46711 +EBUILD pipewire-0.3.31-r1.ebuild 9681 BLAKE2B 539e8528f06605c1874194f9e01d92e6a1e35550c9f177964010a5b39a80ffb027adba89b2aa6ca8a2f59c419e0ed383c96102e62368fa1a9402dfa55a70dabf SHA512 595f83d2f06fc36d5fe83cbc054da9c20f555a28eb443ae40d0b49ba07ad73b0608abfa638285b015117c09d0024760b6493a6c7b2dc435e17412d8326dfbdd8 +EBUILD pipewire-0.3.32.ebuild 9594 BLAKE2B 3e0195e9aeb8e4c2d8c9258d3597c575eb4e7d4a6812fc5479ffd8007bf3eaf8faccd58013fa3e59ba23d7843094e2ab72feb89ce2c4ced6f24ac8e1b887ab2d SHA512 829cbdde885e5d0a72f2a30f2d69058308bdee8ac79c0b001775d36efcbf616c347c0c7b555c5966883fd5fdc4a60303d0ff6ba42f0026eaeabde509a4fc6ba7 +EBUILD pipewire-9999.ebuild 9594 BLAKE2B 3e0195e9aeb8e4c2d8c9258d3597c575eb4e7d4a6812fc5479ffd8007bf3eaf8faccd58013fa3e59ba23d7843094e2ab72feb89ce2c4ced6f24ac8e1b887ab2d SHA512 829cbdde885e5d0a72f2a30f2d69058308bdee8ac79c0b001775d36efcbf616c347c0c7b555c5966883fd5fdc4a60303d0ff6ba42f0026eaeabde509a4fc6ba7 MISC metadata.xml 1600 BLAKE2B 1138c789841fae8ea509ba2becdfef8376b87525b5b1822854ca083ab49e63124cbde6d8064849e0114a0e39269f63cf76d63f49396d709f6b3da865cf539487 SHA512 5ca5105edecf2515049b61e71327236c3e0fd949a25e91a9ed9dc0a9ad5d9d66f0b99329276c824e8840352b699bb9995b9ae073b43f30f87f4a8cc4bc4237a5 diff --git a/media-video/pipewire/pipewire-0.3.25-r1.ebuild b/media-video/pipewire/pipewire-0.3.25-r1.ebuild new file mode 100644 index 000000000000..83afc679686b --- /dev/null +++ b/media-video/pipewire/pipewire-0.3.25-r1.ebuild @@ -0,0 +1,236 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit meson optfeature udev + +if [[ ${PV} == 9999 ]]; then + EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" +# EGIT_BRANCH="master" + inherit git-r3 +else + SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" +fi + +DESCRIPTION="Multimedia processing graphs" +HOMEPAGE="https://pipewire.org/" + +LICENSE="LGPL-2.1+" +SLOT="0/0.3" +IUSE="aac aptx bluetooth doc extra gstreamer jack-client ldac pipewire-alsa systemd test v4l" + +# Once replacing system JACK libraries is possible, it's likely that +# jack-client IUSE will need blocking to avoid users accidentally +# configuring their systems to send PW sink output to the emulated +# JACK's sink - doing so is likely to yield no audio, cause a CPU +# cycles consuming loop (and may even cause GUI crashes)! + +REQUIRED_USE=" + aac? ( bluetooth ) + aptx? ( bluetooth ) + ldac? ( bluetooth ) +" + +BDEPEND=" + app-doc/xmltoman + doc? ( + app-doc/doxygen + media-gfx/graphviz + ) +" +RDEPEND=" + media-libs/alsa-lib + sys-apps/dbus + sys-libs/ncurses:=[unicode(+)] + virtual/libudev + bluetooth? ( + aac? ( media-libs/fdk-aac ) + aptx? ( media-libs/libopenaptx ) + ldac? ( media-libs/libldac ) + media-libs/sbc + >=net-wireless/bluez-4.101:= + ) + extra? ( + >=media-libs/libsndfile-1.0.20 + ) + gstreamer? ( + >=dev-libs/glib-2.32.0:2 + >=media-libs/gstreamer-1.10.0:1.0 + media-libs/gst-plugins-base:1.0 + ) + jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) + pipewire-alsa? ( + >=media-libs/alsa-lib-1.1.7 + || ( + media-plugins/alsa-plugins[-pulseaudio] + !media-plugins/alsa-plugins + ) + ) + !pipewire-alsa? ( media-plugins/alsa-plugins[pulseaudio] ) + systemd? ( sys-apps/systemd ) + v4l? ( media-libs/libv4l ) +" + +DEPEND="${RDEPEND}" + +# Present RDEPEND that are currently always disabled due to the PW +# code using them being required to be disabled by Gentoo guidelines +# (i.e. developer binaries not meant for users) and unready code +# media-video/ffmpeg:= +# media-libs/libsdl2 +# >=media-libs/vulkan-loader-1.1.69 +# +# Ditto for DEPEND +# >=dev-util/vulkan-headers-1.1.69 + +DOCS=( {README,INSTALL}.md NEWS ) + +RESTRICT="!test? ( test )" + +PATCHES=( + "${FILESDIR}"/${PN}-0.3.25-fix-docdir-path.patch + "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch +) + +# limitsdfile related code taken from =sys-auth/realtime-base-0.1 +# with changes as necessary. +limitsdfile=40-${PN}.conf + +src_prepare() { + default + + if ! use systemd; then + # This can be applied non-conditionally but would make for a + # significantly worse user experience on systemd then. + eapply "${FILESDIR}"/${PN}-0.3.25-non-systemd-integration.patch + fi +} + +src_configure() { + local emesonargs=( + -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} + $(meson_feature doc docs) + -Dexamples=enabled # Disabling this implicitly disables -Dmedia-session (not good) + -Dmedia-session=enabled + -Dman=enabled + $(meson_feature test tests) + -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests + $(meson_feature gstreamer) + $(meson_feature gstreamer gstreamer-device-provider) + $(meson_feature systemd) # Also covers logind integration + -Dsystemd-system-service=disabled # Matches upstream + $(meson_feature systemd systemd-user-service) + $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph + -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph + #-Dlibjack-path="" # Where to install libjack.so et al (if an absolute path is used, remember to prefix it with ${EROOT} or similar!); setting this will also break pw-jack's multilib support (but presumably that's okay as the intended use would be to replace system's libraries making the loader irrelevant) + -Dspa-plugins=enabled + -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this) + -Daudiomixer=enabled # Matches upstream + -Daudioconvert=enabled # Matches upstream + $(meson_feature bluetooth bluez5) + $(meson_feature bluetooth bluez5-backend-hsp-native) + $(meson_feature bluetooth bluez5-backend-hfp-native) + $(meson_feature bluetooth bluez5-backend-ofono) + $(meson_feature bluetooth bluez5-backend-hsphfpd) + $(meson_feature aac bluez5-codec-aac) + $(meson_feature aptx bluez5-codec-aptx) + $(meson_feature ldac bluez5-codec-ldac) + -Dcontrol=enabled # Matches upstream + -Daudiotestsrc=enabled # Matches upstream + -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 + $(meson_feature jack-client jack) # Allows PW to act as a JACK client + -Dsupport=enabled # Miscellaneous/common plugins, such as null sink + -Devl=disabled # Matches upstream + -Dtest=disabled # fakesink and fakesource plugins + $(meson_feature v4l v4l2) + -Dlibcamera=disabled # libcamera is not in Portage tree + -Dvideoconvert=enabled # Matches upstream + -Dvideotestsrc=enabled # Matches upstream + -Dvolume=enabled # Matches upstream + -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) + $(meson_feature extra pw-cat) + -Dudev=enabled + -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" + -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) + $(meson_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) + ) + meson_src_configure +} + +src_compile() { + meson_src_compile + + einfo "Generating ${limitsdfile}" + cat > ${limitsdfile} <<- EOF || die + # Start of ${limitsdfile} from ${P} + + 1000:60000 - memlock 256 + + # End of ${limitsdfile} from ${P} + EOF +} + +src_install() { + meson_src_install + + insinto /etc/security/limits.d + doins ${limitsdfile} + + if use pipewire-alsa; then + dodir /etc/alsa/conf.d + # These will break if someone has /etc that is a symbol link to a subfolder! See #724222 + # And the current dosym8 -r implementation is likely affected by the same issue, too. + dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf + dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf + fi +} + +pkg_postinst() { + if ! use pipewire-alsa; then + elog "Contrary to what some online resources may suggest, avoid setting" + elog "PULSE_LATENCY_MSEC environment variable since it may break ALSA clients." + elog + fi + + elog "JACK emulation is incomplete and not all programs will work. PipeWire's" + elog "alternative libraries have been installed to a non-default location." + elog "To use them, put pw-jack before every JACK application." + elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" + elog "provider is still needed to compile the JACK applications themselves." + elog + + if use systemd; then + elog "Per Gentoo policy installed systemd units must be manually enabled:" + elog "systemctl --user disable pulseaudio.service pulseaudio.socket" + elog "systemctl --user enable pipewire.socket pipewire-pulse.socket" + elog "Rebooting is strongly recommended to avoid surprises from" + elog "remnant PulseAudio daemon auto-spawning and surviving logouts." + elog + ewarn "Both new users and those upgrading need to enable pipewire-media-session:" + ewarn "systemctl --user enable pipewire-media-session.service" + else + elog "This ebuild auto-enables PulseAudio replacement. Because of that users" + elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable " + elog "autospawn'ing of the original daemon by setting:" + elog "autospawn = no" + elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" + elog + elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" + elog "${EROOT}/etc/pipewire/pipewire.conf" + elog "by commenting out the relevant command near the end of the file:" + elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }" + elog + elog "It is still necessary to manually enable PipeWire startup. Setup specific" + elog "instructions can be found at: https://wiki.gentoo.org/wiki/PipeWire" + fi + + optfeature_header "The following can be installed for optional runtime features:" + optfeature "restricted realtime capabilities vai D-Bus" sys-auth/rtkit + # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here! + if use bluetooth; then + optfeature "better BT headset support (daemon startup required)" net-misc/ofono + #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd + fi +} diff --git a/media-video/pipewire/pipewire-0.3.25.ebuild b/media-video/pipewire/pipewire-0.3.25.ebuild deleted file mode 100644 index 92606ca61dec..000000000000 --- a/media-video/pipewire/pipewire-0.3.25.ebuild +++ /dev/null @@ -1,236 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit meson optfeature udev - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" -# EGIT_BRANCH="master" - inherit git-r3 -else - SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" -fi - -DESCRIPTION="Multimedia processing graphs" -HOMEPAGE="https://pipewire.org/" - -LICENSE="LGPL-2.1+" -SLOT="0/0.3" -IUSE="aac aptx bluetooth doc extra gstreamer jack-client ldac pipewire-alsa systemd test v4l" - -# Once replacing system JACK libraries is possible, it's likely that -# jack-client IUSE will need blocking to avoid users accidentally -# configuring their systems to send PW sink output to the emulated -# JACK's sink - doing so is likely to yield no audio, cause a CPU -# cycles consuming loop (and may even cause GUI crashes)! - -REQUIRED_USE=" - aac? ( bluetooth ) - aptx? ( bluetooth ) - ldac? ( bluetooth ) -" - -BDEPEND=" - app-doc/xmltoman - doc? ( - app-doc/doxygen - media-gfx/graphviz - ) -" -RDEPEND=" - media-libs/alsa-lib - sys-apps/dbus - sys-libs/ncurses[unicode] - virtual/libudev - bluetooth? ( - aac? ( media-libs/fdk-aac ) - aptx? ( media-libs/libopenaptx ) - ldac? ( media-libs/libldac ) - media-libs/sbc - >=net-wireless/bluez-4.101:= - ) - extra? ( - >=media-libs/libsndfile-1.0.20 - ) - gstreamer? ( - >=dev-libs/glib-2.32.0:2 - >=media-libs/gstreamer-1.10.0:1.0 - media-libs/gst-plugins-base:1.0 - ) - jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) - pipewire-alsa? ( - >=media-libs/alsa-lib-1.1.7 - || ( - media-plugins/alsa-plugins[-pulseaudio] - !media-plugins/alsa-plugins - ) - ) - !pipewire-alsa? ( media-plugins/alsa-plugins[pulseaudio] ) - systemd? ( sys-apps/systemd ) - v4l? ( media-libs/libv4l ) -" - -DEPEND="${RDEPEND}" - -# Present RDEPEND that are currently always disabled due to the PW -# code using them being required to be disabled by Gentoo guidelines -# (i.e. developer binaries not meant for users) and unready code -# media-video/ffmpeg:= -# media-libs/libsdl2 -# >=media-libs/vulkan-loader-1.1.69 -# -# Ditto for DEPEND -# >=dev-util/vulkan-headers-1.1.69 - -DOCS=( {README,INSTALL}.md NEWS ) - -RESTRICT="!test? ( test )" - -PATCHES=( - "${FILESDIR}"/${PN}-0.3.25-fix-docdir-path.patch - "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch -) - -# limitsdfile related code taken from =sys-auth/realtime-base-0.1 -# with changes as necessary. -limitsdfile=40-${PN}.conf - -src_prepare() { - default - - if ! use systemd; then - # This can be applied non-conditionally but would make for a - # significantly worse user experience on systemd then. - eapply "${FILESDIR}"/${PN}-0.3.25-non-systemd-integration.patch - fi -} - -src_configure() { - local emesonargs=( - -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} - $(meson_feature doc docs) - -Dexamples=enabled # Disabling this implicitly disables -Dmedia-session (not good) - -Dmedia-session=enabled - -Dman=enabled - $(meson_feature test tests) - -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests - $(meson_feature gstreamer) - $(meson_feature gstreamer gstreamer-device-provider) - $(meson_feature systemd) # Also covers logind integration - -Dsystemd-system-service=disabled # Matches upstream - $(meson_feature systemd systemd-user-service) - $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph - -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph - #-Dlibjack-path="" # Where to install libjack.so et al (if an absolute path is used, remember to prefix it with ${EROOT} or similar!); setting this will also break pw-jack's multilib support (but presumably that's okay as the intended use would be to replace system's libraries making the loader irrelevant) - -Dspa-plugins=enabled - -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this) - -Daudiomixer=enabled # Matches upstream - -Daudioconvert=enabled # Matches upstream - $(meson_feature bluetooth bluez5) - $(meson_feature bluetooth bluez5-backend-hsp-native) - $(meson_feature bluetooth bluez5-backend-hfp-native) - $(meson_feature bluetooth bluez5-backend-ofono) - $(meson_feature bluetooth bluez5-backend-hsphfpd) - $(meson_feature aac bluez5-codec-aac) - $(meson_feature aptx bluez5-codec-aptx) - $(meson_feature ldac bluez5-codec-ldac) - -Dcontrol=enabled # Matches upstream - -Daudiotestsrc=enabled # Matches upstream - -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 - $(meson_feature jack-client jack) # Allows PW to act as a JACK client - -Dsupport=enabled # Miscellaneous/common plugins, such as null sink - -Devl=disabled # Matches upstream - -Dtest=disabled # fakesink and fakesource plugins - $(meson_feature v4l v4l2) - -Dlibcamera=disabled # libcamera is not in Portage tree - -Dvideoconvert=enabled # Matches upstream - -Dvideotestsrc=enabled # Matches upstream - -Dvolume=enabled # Matches upstream - -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) - $(meson_feature extra pw-cat) - -Dudev=enabled - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" - -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) - $(meson_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) - ) - meson_src_configure -} - -src_compile() { - meson_src_compile - - einfo "Generating ${limitsdfile}" - cat > ${limitsdfile} <<- EOF || die - # Start of ${limitsdfile} from ${P} - - 1000:60000 - memlock 256 - - # End of ${limitsdfile} from ${P} - EOF -} - -src_install() { - meson_src_install - - insinto /etc/security/limits.d - doins ${limitsdfile} - - if use pipewire-alsa; then - dodir /etc/alsa/conf.d - # These will break if someone has /etc that is a symbol link to a subfolder! See #724222 - # And the current dosym8 -r implementation is likely affected by the same issue, too. - dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf - dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf - fi -} - -pkg_postinst() { - if ! use pipewire-alsa; then - elog "Contrary to what some online resources may suggest, avoid setting" - elog "PULSE_LATENCY_MSEC environment variable since it may break ALSA clients." - elog - fi - - elog "JACK emulation is incomplete and not all programs will work. PipeWire's" - elog "alternative libraries have been installed to a non-default location." - elog "To use them, put pw-jack before every JACK application." - elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" - elog "provider is still needed to compile the JACK applications themselves." - elog - - if use systemd; then - elog "Per Gentoo policy installed systemd units must be manually enabled:" - elog "systemctl --user disable pulseaudio.service pulseaudio.socket" - elog "systemctl --user enable pipewire.socket pipewire-pulse.socket" - elog "Rebooting is strongly recommended to avoid surprises from" - elog "remnant PulseAudio daemon auto-spawning and surviving logouts." - elog - ewarn "Both new users and those upgrading need to enable pipewire-media-session:" - ewarn "systemctl --user enable pipewire-media-session.service" - else - elog "This ebuild auto-enables PulseAudio replacement. Because of that users" - elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable " - elog "autospawn'ing of the original daemon by setting:" - elog "autospawn = no" - elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" - elog - elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" - elog "${EROOT}/etc/pipewire/pipewire.conf" - elog "by commenting out the relevant command near the end of the file:" - elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }" - elog - elog "It is still necessary to manually enable PipeWire startup. Setup specific" - elog "instructions can be found at: https://wiki.gentoo.org/wiki/PipeWire" - fi - - optfeature_header "The following can be installed for optional runtime features:" - optfeature "restricted realtime capabilities vai D-Bus" sys-auth/rtkit - # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here! - if use bluetooth; then - optfeature "better BT headset support (daemon startup required)" net-misc/ofono - #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd - fi -} diff --git a/media-video/pipewire/pipewire-0.3.26-r1.ebuild b/media-video/pipewire/pipewire-0.3.26-r1.ebuild new file mode 100644 index 000000000000..56accd5f5077 --- /dev/null +++ b/media-video/pipewire/pipewire-0.3.26-r1.ebuild @@ -0,0 +1,243 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit meson optfeature udev + +if [[ ${PV} == 9999 ]]; then + EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" +# EGIT_BRANCH="master" + inherit git-r3 +else + SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" +fi + +DESCRIPTION="Multimedia processing graphs" +HOMEPAGE="https://pipewire.org/" + +LICENSE="LGPL-2.1+" +SLOT="0/0.3" +IUSE="aac aptx bluetooth doc extra gstreamer jack-client ldac pipewire-alsa systemd test v4l" + +# Once replacing system JACK libraries is possible, it's likely that +# jack-client IUSE will need blocking to avoid users accidentally +# configuring their systems to send PW sink output to the emulated +# JACK's sink - doing so is likely to yield no audio, cause a CPU +# cycles consuming loop (and may even cause GUI crashes)! + +REQUIRED_USE=" + aac? ( bluetooth ) + aptx? ( bluetooth ) + ldac? ( bluetooth ) +" + +BDEPEND=" + app-doc/xmltoman + doc? ( + app-doc/doxygen + media-gfx/graphviz + ) +" +RDEPEND=" + media-libs/alsa-lib + sys-apps/dbus + sys-libs/ncurses:=[unicode(+)] + virtual/libudev + bluetooth? ( + aac? ( media-libs/fdk-aac ) + aptx? ( media-libs/libopenaptx ) + ldac? ( media-libs/libldac ) + media-libs/sbc + >=net-wireless/bluez-4.101:= + ) + extra? ( + >=media-libs/libsndfile-1.0.20 + ) + gstreamer? ( + >=dev-libs/glib-2.32.0:2 + >=media-libs/gstreamer-1.10.0:1.0 + media-libs/gst-plugins-base:1.0 + ) + jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) + pipewire-alsa? ( + >=media-libs/alsa-lib-1.1.7 + || ( + media-plugins/alsa-plugins[-pulseaudio] + !media-plugins/alsa-plugins + ) + ) + !pipewire-alsa? ( media-plugins/alsa-plugins[pulseaudio] ) + systemd? ( sys-apps/systemd ) + v4l? ( media-libs/libv4l ) +" + +DEPEND="${RDEPEND}" + +# Present RDEPEND that are currently always disabled due to the PW +# code using them being required to be disabled by Gentoo guidelines +# (i.e. developer binaries not meant for users) and unready code +# media-video/ffmpeg:= +# media-libs/libsdl2 +# >=media-libs/vulkan-loader-1.1.69 +# +# Ditto for DEPEND +# >=dev-util/vulkan-headers-1.1.69 + +DOCS=( {README,INSTALL}.md NEWS ) + +RESTRICT="!test? ( test )" + +PATCHES=( + "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch +) + +# limitsdfile related code taken from =sys-auth/realtime-base-0.1 +# with changes as necessary. +limitsdfile=40-${PN}.conf + +src_prepare() { + default + + if ! use systemd; then + # This can be applied non-conditionally but would make for a + # significantly worse user experience on systemd then. + eapply "${FILESDIR}"/${PN}-0.3.25-non-systemd-integration.patch + fi +} + +src_configure() { + local emesonargs=( + -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} + $(meson_feature doc docs) + -Dexamples=enabled # Disabling this implicitly disables -Dmedia-session (not good) + -Dmedia-session=enabled + -Dman=enabled + $(meson_feature test tests) + -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests + $(meson_feature gstreamer) + $(meson_feature gstreamer gstreamer-device-provider) + $(meson_feature systemd) # Also covers logind integration + -Dsystemd-system-service=disabled # Matches upstream + $(meson_feature systemd systemd-user-service) + $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph + -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph + #-Dlibjack-path="" # Where to install libjack.so et al (if an absolute path is used, remember to prefix it with ${EROOT} or similar!); setting this will also break pw-jack's multilib support (but presumably that's okay as the intended use would be to replace system's libraries making the loader irrelevant) + -Dspa-plugins=enabled + -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this) + -Daudiomixer=enabled # Matches upstream + -Daudioconvert=enabled # Matches upstream + $(meson_feature bluetooth bluez5) + $(meson_feature bluetooth bluez5-backend-hsp-native) + $(meson_feature bluetooth bluez5-backend-hfp-native) + $(meson_feature bluetooth bluez5-backend-ofono) + $(meson_feature bluetooth bluez5-backend-hsphfpd) + $(meson_feature aac bluez5-codec-aac) + $(meson_feature aptx bluez5-codec-aptx) + $(meson_feature ldac bluez5-codec-ldac) + -Dcontrol=enabled # Matches upstream + -Daudiotestsrc=enabled # Matches upstream + -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 + $(meson_feature jack-client jack) # Allows PW to act as a JACK client + -Dsupport=enabled # Miscellaneous/common plugins, such as null sink + -Devl=disabled # Matches upstream + -Dtest=disabled # fakesink and fakesource plugins + $(meson_feature v4l v4l2) + -Dlibcamera=disabled # libcamera is not in Portage tree + -Dvideoconvert=enabled # Matches upstream + -Dvideotestsrc=enabled # Matches upstream + -Dvolume=enabled # Matches upstream + -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) + $(meson_feature extra pw-cat) + -Dudev=enabled + -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" + -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) + $(meson_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) + ) + meson_src_configure +} + +src_compile() { + meson_src_compile + + einfo "Generating ${limitsdfile}" + cat > ${limitsdfile} <<- EOF || die + # Start of ${limitsdfile} from ${P} + + 1000:60000 - memlock 256 + + # End of ${limitsdfile} from ${P} + EOF +} + +src_install() { + meson_src_install + + insinto /etc/security/limits.d + doins ${limitsdfile} + + if use pipewire-alsa; then + dodir /etc/alsa/conf.d + # These will break if someone has /etc that is a symbol link to a subfolder! See #724222 + # And the current dosym8 -r implementation is likely affected by the same issue, too. + dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf + dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf + fi + + if ! use systemd; then + insinto /etc/xdg/autostart + newins "${FILESDIR}"/pipewire.desktop pipewire.desktop + + exeinto /usr/libexec + newexe "${FILESDIR}"/pipewire-launcher.sh pipewire-launcher + fi +} + +pkg_postinst() { + if ! use pipewire-alsa; then + elog "Contrary to what some online resources may suggest, avoid setting" + elog "PULSE_LATENCY_MSEC environment variable since it may break ALSA clients." + elog + fi + + elog "JACK emulation is incomplete and not all programs will work. PipeWire's" + elog "alternative libraries have been installed to a non-default location." + elog "To use them, put pw-jack before every JACK application." + elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" + elog "provider is still needed to compile the JACK applications themselves." + elog + + if use systemd; then + elog "Per Gentoo policy installed systemd units must be manually enabled:" + elog "systemctl --user disable pulseaudio.service pulseaudio.socket" + elog "systemctl --user enable pipewire.socket pipewire-pulse.socket" + elog "Rebooting is strongly recommended to avoid surprises from" + elog "remnant PulseAudio daemon auto-spawning and surviving logouts." + elog + ewarn "Both new users and those upgrading need to enable pipewire-media-session:" + ewarn "systemctl --user enable pipewire-media-session.service" + else + elog "This ebuild auto-enables PulseAudio replacement. Because of that users" + elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable " + elog "autospawn'ing of the original daemon by setting:" + elog "autospawn = no" + elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" + elog + elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" + elog "${EROOT}/etc/pipewire/pipewire.conf" + elog "by commenting out the relevant command near the end of the file:" + elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }" + elog + elog "It is still necessary to manually enable PipeWire startup. Setup specific" + elog "instructions can be found at: https://wiki.gentoo.org/wiki/PipeWire" + fi + + optfeature_header "The following can be installed for optional runtime features:" + optfeature "restricted realtime capabilities vai D-Bus" sys-auth/rtkit + # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here! + if use bluetooth; then + optfeature "better BT headset support (daemon startup required)" net-misc/ofono + #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd + fi +} diff --git a/media-video/pipewire/pipewire-0.3.26.ebuild b/media-video/pipewire/pipewire-0.3.26.ebuild deleted file mode 100644 index 932a2e4cc0b6..000000000000 --- a/media-video/pipewire/pipewire-0.3.26.ebuild +++ /dev/null @@ -1,243 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit meson optfeature udev - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" -# EGIT_BRANCH="master" - inherit git-r3 -else - SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" -fi - -DESCRIPTION="Multimedia processing graphs" -HOMEPAGE="https://pipewire.org/" - -LICENSE="LGPL-2.1+" -SLOT="0/0.3" -IUSE="aac aptx bluetooth doc extra gstreamer jack-client ldac pipewire-alsa systemd test v4l" - -# Once replacing system JACK libraries is possible, it's likely that -# jack-client IUSE will need blocking to avoid users accidentally -# configuring their systems to send PW sink output to the emulated -# JACK's sink - doing so is likely to yield no audio, cause a CPU -# cycles consuming loop (and may even cause GUI crashes)! - -REQUIRED_USE=" - aac? ( bluetooth ) - aptx? ( bluetooth ) - ldac? ( bluetooth ) -" - -BDEPEND=" - app-doc/xmltoman - doc? ( - app-doc/doxygen - media-gfx/graphviz - ) -" -RDEPEND=" - media-libs/alsa-lib - sys-apps/dbus - sys-libs/ncurses[unicode] - virtual/libudev - bluetooth? ( - aac? ( media-libs/fdk-aac ) - aptx? ( media-libs/libopenaptx ) - ldac? ( media-libs/libldac ) - media-libs/sbc - >=net-wireless/bluez-4.101:= - ) - extra? ( - >=media-libs/libsndfile-1.0.20 - ) - gstreamer? ( - >=dev-libs/glib-2.32.0:2 - >=media-libs/gstreamer-1.10.0:1.0 - media-libs/gst-plugins-base:1.0 - ) - jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) - pipewire-alsa? ( - >=media-libs/alsa-lib-1.1.7 - || ( - media-plugins/alsa-plugins[-pulseaudio] - !media-plugins/alsa-plugins - ) - ) - !pipewire-alsa? ( media-plugins/alsa-plugins[pulseaudio] ) - systemd? ( sys-apps/systemd ) - v4l? ( media-libs/libv4l ) -" - -DEPEND="${RDEPEND}" - -# Present RDEPEND that are currently always disabled due to the PW -# code using them being required to be disabled by Gentoo guidelines -# (i.e. developer binaries not meant for users) and unready code -# media-video/ffmpeg:= -# media-libs/libsdl2 -# >=media-libs/vulkan-loader-1.1.69 -# -# Ditto for DEPEND -# >=dev-util/vulkan-headers-1.1.69 - -DOCS=( {README,INSTALL}.md NEWS ) - -RESTRICT="!test? ( test )" - -PATCHES=( - "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch -) - -# limitsdfile related code taken from =sys-auth/realtime-base-0.1 -# with changes as necessary. -limitsdfile=40-${PN}.conf - -src_prepare() { - default - - if ! use systemd; then - # This can be applied non-conditionally but would make for a - # significantly worse user experience on systemd then. - eapply "${FILESDIR}"/${PN}-0.3.25-non-systemd-integration.patch - fi -} - -src_configure() { - local emesonargs=( - -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} - $(meson_feature doc docs) - -Dexamples=enabled # Disabling this implicitly disables -Dmedia-session (not good) - -Dmedia-session=enabled - -Dman=enabled - $(meson_feature test tests) - -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests - $(meson_feature gstreamer) - $(meson_feature gstreamer gstreamer-device-provider) - $(meson_feature systemd) # Also covers logind integration - -Dsystemd-system-service=disabled # Matches upstream - $(meson_feature systemd systemd-user-service) - $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph - -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph - #-Dlibjack-path="" # Where to install libjack.so et al (if an absolute path is used, remember to prefix it with ${EROOT} or similar!); setting this will also break pw-jack's multilib support (but presumably that's okay as the intended use would be to replace system's libraries making the loader irrelevant) - -Dspa-plugins=enabled - -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this) - -Daudiomixer=enabled # Matches upstream - -Daudioconvert=enabled # Matches upstream - $(meson_feature bluetooth bluez5) - $(meson_feature bluetooth bluez5-backend-hsp-native) - $(meson_feature bluetooth bluez5-backend-hfp-native) - $(meson_feature bluetooth bluez5-backend-ofono) - $(meson_feature bluetooth bluez5-backend-hsphfpd) - $(meson_feature aac bluez5-codec-aac) - $(meson_feature aptx bluez5-codec-aptx) - $(meson_feature ldac bluez5-codec-ldac) - -Dcontrol=enabled # Matches upstream - -Daudiotestsrc=enabled # Matches upstream - -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 - $(meson_feature jack-client jack) # Allows PW to act as a JACK client - -Dsupport=enabled # Miscellaneous/common plugins, such as null sink - -Devl=disabled # Matches upstream - -Dtest=disabled # fakesink and fakesource plugins - $(meson_feature v4l v4l2) - -Dlibcamera=disabled # libcamera is not in Portage tree - -Dvideoconvert=enabled # Matches upstream - -Dvideotestsrc=enabled # Matches upstream - -Dvolume=enabled # Matches upstream - -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) - $(meson_feature extra pw-cat) - -Dudev=enabled - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" - -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) - $(meson_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) - ) - meson_src_configure -} - -src_compile() { - meson_src_compile - - einfo "Generating ${limitsdfile}" - cat > ${limitsdfile} <<- EOF || die - # Start of ${limitsdfile} from ${P} - - 1000:60000 - memlock 256 - - # End of ${limitsdfile} from ${P} - EOF -} - -src_install() { - meson_src_install - - insinto /etc/security/limits.d - doins ${limitsdfile} - - if use pipewire-alsa; then - dodir /etc/alsa/conf.d - # These will break if someone has /etc that is a symbol link to a subfolder! See #724222 - # And the current dosym8 -r implementation is likely affected by the same issue, too. - dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf - dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf - fi - - if ! use systemd; then - insinto /etc/xdg/autostart - newins "${FILESDIR}"/pipewire.desktop pipewire.desktop - - exeinto /usr/libexec - newexe "${FILESDIR}"/pipewire-launcher.sh pipewire-launcher - fi -} - -pkg_postinst() { - if ! use pipewire-alsa; then - elog "Contrary to what some online resources may suggest, avoid setting" - elog "PULSE_LATENCY_MSEC environment variable since it may break ALSA clients." - elog - fi - - elog "JACK emulation is incomplete and not all programs will work. PipeWire's" - elog "alternative libraries have been installed to a non-default location." - elog "To use them, put pw-jack before every JACK application." - elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" - elog "provider is still needed to compile the JACK applications themselves." - elog - - if use systemd; then - elog "Per Gentoo policy installed systemd units must be manually enabled:" - elog "systemctl --user disable pulseaudio.service pulseaudio.socket" - elog "systemctl --user enable pipewire.socket pipewire-pulse.socket" - elog "Rebooting is strongly recommended to avoid surprises from" - elog "remnant PulseAudio daemon auto-spawning and surviving logouts." - elog - ewarn "Both new users and those upgrading need to enable pipewire-media-session:" - ewarn "systemctl --user enable pipewire-media-session.service" - else - elog "This ebuild auto-enables PulseAudio replacement. Because of that users" - elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable " - elog "autospawn'ing of the original daemon by setting:" - elog "autospawn = no" - elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" - elog - elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" - elog "${EROOT}/etc/pipewire/pipewire.conf" - elog "by commenting out the relevant command near the end of the file:" - elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }" - elog - elog "It is still necessary to manually enable PipeWire startup. Setup specific" - elog "instructions can be found at: https://wiki.gentoo.org/wiki/PipeWire" - fi - - optfeature_header "The following can be installed for optional runtime features:" - optfeature "restricted realtime capabilities vai D-Bus" sys-auth/rtkit - # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here! - if use bluetooth; then - optfeature "better BT headset support (daemon startup required)" net-misc/ofono - #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd - fi -} diff --git a/media-video/pipewire/pipewire-0.3.27-r1.ebuild b/media-video/pipewire/pipewire-0.3.27-r1.ebuild deleted file mode 100644 index b3b112d4c875..000000000000 --- a/media-video/pipewire/pipewire-0.3.27-r1.ebuild +++ /dev/null @@ -1,269 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -inherit meson-multilib optfeature udev - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" - inherit git-r3 -else - SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" -fi - -DESCRIPTION="Multimedia processing graphs" -HOMEPAGE="https://pipewire.org/" - -LICENSE="LGPL-2.1+" -SLOT="0/0.3" -IUSE="aac aptx bluetooth doc extra gstreamer jack-client jack-sdk ldac pipewire-alsa systemd test v4l" - -# Once replacing system JACK libraries is possible, it's likely that -# jack-client IUSE will need blocking to avoid users accidentally -# configuring their systems to send PW sink output to the emulated -# JACK's sink - doing so is likely to yield no audio, cause a CPU -# cycles consuming loop (and may even cause GUI crashes)! - -REQUIRED_USE=" - aac? ( bluetooth ) - aptx? ( bluetooth ) - jack-sdk? ( !jack-client ) - ldac? ( bluetooth ) -" - -RESTRICT="!test? ( test )" - -BDEPEND=" - app-doc/xmltoman - doc? ( - app-doc/doxygen - media-gfx/graphviz - ) -" -RDEPEND=" - acct-group/audio - media-libs/alsa-lib - sys-apps/dbus[${MULTILIB_USEDEP}] - sys-libs/ncurses[unicode] - virtual/libintl[${MULTILIB_USEDEP}] - virtual/libudev[${MULTILIB_USEDEP}] - bluetooth? ( - aac? ( media-libs/fdk-aac ) - aptx? ( media-libs/libopenaptx ) - ldac? ( media-libs/libldac ) - media-libs/sbc - >=net-wireless/bluez-4.101:= - ) - extra? ( - >=media-libs/libsndfile-1.0.20 - ) - gstreamer? ( - >=dev-libs/glib-2.32.0:2 - >=media-libs/gstreamer-1.10.0:1.0 - media-libs/gst-plugins-base:1.0 - ) - jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) - jack-sdk? ( - !media-sound/jack-audio-connection-kit - !media-sound/jack2 - ) - pipewire-alsa? ( - >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}] - || ( - media-plugins/alsa-plugins[-pulseaudio] - !media-plugins/alsa-plugins - ) - ) - !pipewire-alsa? ( media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] ) - systemd? ( sys-apps/systemd ) - v4l? ( media-libs/libv4l ) -" - -DEPEND="${RDEPEND}" - -# Present RDEPEND that are currently always disabled due to the PW -# code using them being required to be disabled by Gentoo guidelines -# (i.e. developer binaries not meant for users) and unready code -# media-video/ffmpeg:= -# media-libs/libsdl2 -# >=media-libs/vulkan-loader-1.1.69 -# -# Ditto for DEPEND -# >=dev-util/vulkan-headers-1.1.69 - -DOCS=( {README,INSTALL}.md NEWS ) - -PATCHES=( - "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch -) - -# limitsdfile related code taken from =sys-auth/realtime-base-0.1 -# with changes as necessary. -limitsdfile=40-${PN}.conf - -src_prepare() { - default - - if ! use systemd; then - # This can be applied non-conditionally but would make for a - # significantly worse user experience on systemd then. - eapply "${FILESDIR}"/${PN}-0.3.25-non-systemd-integration.patch - fi - - einfo "Generating ${limitsdfile}" - cat > ${limitsdfile} <<- EOF || die - # Start of ${limitsdfile} from ${P} - - @audio - memlock 256 - - # End of ${limitsdfile} from ${P} - EOF -} - -multilib_src_configure() { - local emesonargs=( - -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} - $(meson_native_use_feature doc docs) - $(meson_native_enabled examples) # Disabling this implicitly disables -Dmedia-session - $(meson_native_enabled media-session) - $(meson_native_enabled man) - $(meson_feature test tests) - -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests - $(meson_native_use_feature gstreamer) - $(meson_native_use_feature gstreamer gstreamer-device-provider) - $(meson_native_use_feature systemd) - -Dsystemd-system-service=disabled # Matches upstream - $(meson_native_use_feature systemd systemd-user-service) - $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph - -Dspa-plugins=enabled - -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this) - -Daudiomixer=enabled # Matches upstream - -Daudioconvert=enabled # Matches upstream - $(meson_native_use_feature bluetooth bluez5) - $(meson_native_use_feature bluetooth bluez5-backend-hsp-native) - $(meson_native_use_feature bluetooth bluez5-backend-hfp-native) - $(meson_native_use_feature bluetooth bluez5-backend-ofono) - $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd) - $(meson_native_use_feature aac bluez5-codec-aac) - $(meson_native_use_feature aptx bluez5-codec-aptx) - $(meson_native_use_feature ldac bluez5-codec-ldac) - -Dcontrol=enabled # Matches upstream - -Daudiotestsrc=enabled # Matches upstream - -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 - -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph - $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client - $(meson_feature jack-sdk jack-devel) - $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '') - -Dsupport=enabled # Miscellaneous/common plugins, such as null sink - -Devl=disabled # Matches upstream - -Dtest=disabled # fakesink and fakesource plugins - $(meson_native_use_feature v4l v4l2) - -Dlibcamera=disabled # libcamera is not in Portage tree - -Dvideoconvert=enabled # Matches upstream - -Dvideotestsrc=enabled # Matches upstream - -Dvolume=enabled # Matches upstream - -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) - $(meson_native_use_feature extra pw-cat) - -Dudev=enabled - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" - -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) - $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) - ) - - meson_src_configure -} - -multilib_src_install() { - # Our customs DOCS do not exist in multilib source directory - DOCS= meson_src_install -} - -multilib_src_install_all() { - einstalldocs - - insinto /etc/security/limits.d - doins ${limitsdfile} - - if use pipewire-alsa; then - dodir /etc/alsa/conf.d - # These will break if someone has /etc that is a symbol link to a subfolder! See #724222 - # And the current dosym8 -r implementation is likely affected by the same issue, too. - dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf - dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf - fi - - if ! use systemd; then - insinto /etc/xdg/autostart - newins "${FILESDIR}"/pipewire.desktop pipewire.desktop - - exeinto /usr/libexec - newexe "${FILESDIR}"/pipewire-launcher.sh pipewire-launcher - fi -} - -pkg_postinst() { - elog "It is recommended to raise RLIMIT_MEMLOCK to 256 for users" - elog "using PipeWire. Do it either manually or add yourself" - elog "to the 'audio' group:" - elog - elog " usermod -aG audio " - elog - - if ! use jack-sdk; then - elog "JACK emulation is incomplete and not all programs will work. PipeWire's" - elog "alternative libraries have been installed to a non-default location." - elog "To use them, put pw-jack before every JACK application." - elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" - elog "provider is still needed to compile the JACK applications themselves." - elog - fi - - if use systemd; then - elog "To use PipeWire for audio, the user units must be manually enabled:" - elog - elog " systemctl --user enable pipewire.socket pipewire-pulse.socket" - elog - elog "When switching from PulseAudio, do not forget to disable PulseAudio:" - elog - elog " systemctl --user disable pulseaudio.service pulseaudio.socket" - elog - elog "A reboot is recommended to avoid interferences from still running" - elog "PulseAudio daemon." - elog - elog "Both, new users and those upgrading, need to enable pipewire-media-session:" - elog - elog " systemctl --user enable pipewire-media-session.service" - elog - elog "NOTE: This is not required when using PipeWire only for screencasting." - elog - else - elog "This ebuild auto-enables PulseAudio replacement. Because of that, users" - elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable " - elog "autospawn'ing of the original daemon by setting:" - elog - elog " autospawn = no" - elog - elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" - elog - elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" - elog "${EROOT}/etc/pipewire/pipewire.conf by commenting out the relevant" - elog "command near the end of the file:" - elog - elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }" - elog - fi - - elog "For latest tips and tricks, troubleshooting information and documentation" - elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire" - elog - - optfeature_header "The following can be installed for optional runtime features:" - optfeature "restricted realtime capabilities vai D-Bus" sys-auth/rtkit - # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here! - if use bluetooth; then - optfeature "better BT headset support (daemon startup required)" net-misc/ofono - #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd - fi -} diff --git a/media-video/pipewire/pipewire-0.3.27-r2.ebuild b/media-video/pipewire/pipewire-0.3.27-r2.ebuild new file mode 100644 index 000000000000..990c290d7d21 --- /dev/null +++ b/media-video/pipewire/pipewire-0.3.27-r2.ebuild @@ -0,0 +1,269 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +inherit meson-multilib optfeature udev + +if [[ ${PV} == 9999 ]]; then + EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" + inherit git-r3 +else + SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" +fi + +DESCRIPTION="Multimedia processing graphs" +HOMEPAGE="https://pipewire.org/" + +LICENSE="LGPL-2.1+" +SLOT="0/0.3" +IUSE="aac aptx bluetooth doc extra gstreamer jack-client jack-sdk ldac pipewire-alsa systemd test v4l" + +# Once replacing system JACK libraries is possible, it's likely that +# jack-client IUSE will need blocking to avoid users accidentally +# configuring their systems to send PW sink output to the emulated +# JACK's sink - doing so is likely to yield no audio, cause a CPU +# cycles consuming loop (and may even cause GUI crashes)! + +REQUIRED_USE=" + aac? ( bluetooth ) + aptx? ( bluetooth ) + jack-sdk? ( !jack-client ) + ldac? ( bluetooth ) +" + +RESTRICT="!test? ( test )" + +BDEPEND=" + app-doc/xmltoman + doc? ( + app-doc/doxygen + media-gfx/graphviz + ) +" +RDEPEND=" + acct-group/audio + media-libs/alsa-lib + sys-apps/dbus[${MULTILIB_USEDEP}] + sys-libs/ncurses:=[unicode(+)] + virtual/libintl[${MULTILIB_USEDEP}] + virtual/libudev[${MULTILIB_USEDEP}] + bluetooth? ( + aac? ( media-libs/fdk-aac ) + aptx? ( media-libs/libopenaptx ) + ldac? ( media-libs/libldac ) + media-libs/sbc + >=net-wireless/bluez-4.101:= + ) + extra? ( + >=media-libs/libsndfile-1.0.20 + ) + gstreamer? ( + >=dev-libs/glib-2.32.0:2 + >=media-libs/gstreamer-1.10.0:1.0 + media-libs/gst-plugins-base:1.0 + ) + jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) + jack-sdk? ( + !media-sound/jack-audio-connection-kit + !media-sound/jack2 + ) + pipewire-alsa? ( + >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}] + || ( + media-plugins/alsa-plugins[-pulseaudio] + !media-plugins/alsa-plugins + ) + ) + !pipewire-alsa? ( media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] ) + systemd? ( sys-apps/systemd ) + v4l? ( media-libs/libv4l ) +" + +DEPEND="${RDEPEND}" + +# Present RDEPEND that are currently always disabled due to the PW +# code using them being required to be disabled by Gentoo guidelines +# (i.e. developer binaries not meant for users) and unready code +# media-video/ffmpeg:= +# media-libs/libsdl2 +# >=media-libs/vulkan-loader-1.1.69 +# +# Ditto for DEPEND +# >=dev-util/vulkan-headers-1.1.69 + +DOCS=( {README,INSTALL}.md NEWS ) + +PATCHES=( + "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch +) + +# limitsdfile related code taken from =sys-auth/realtime-base-0.1 +# with changes as necessary. +limitsdfile=40-${PN}.conf + +src_prepare() { + default + + if ! use systemd; then + # This can be applied non-conditionally but would make for a + # significantly worse user experience on systemd then. + eapply "${FILESDIR}"/${PN}-0.3.25-non-systemd-integration.patch + fi + + einfo "Generating ${limitsdfile}" + cat > ${limitsdfile} <<- EOF || die + # Start of ${limitsdfile} from ${P} + + @audio - memlock 256 + + # End of ${limitsdfile} from ${P} + EOF +} + +multilib_src_configure() { + local emesonargs=( + -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} + $(meson_native_use_feature doc docs) + $(meson_native_enabled examples) # Disabling this implicitly disables -Dmedia-session + $(meson_native_enabled media-session) + $(meson_native_enabled man) + $(meson_feature test tests) + -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests + $(meson_native_use_feature gstreamer) + $(meson_native_use_feature gstreamer gstreamer-device-provider) + $(meson_native_use_feature systemd) + -Dsystemd-system-service=disabled # Matches upstream + $(meson_native_use_feature systemd systemd-user-service) + $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph + -Dspa-plugins=enabled + -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this) + -Daudiomixer=enabled # Matches upstream + -Daudioconvert=enabled # Matches upstream + $(meson_native_use_feature bluetooth bluez5) + $(meson_native_use_feature bluetooth bluez5-backend-hsp-native) + $(meson_native_use_feature bluetooth bluez5-backend-hfp-native) + $(meson_native_use_feature bluetooth bluez5-backend-ofono) + $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd) + $(meson_native_use_feature aac bluez5-codec-aac) + $(meson_native_use_feature aptx bluez5-codec-aptx) + $(meson_native_use_feature ldac bluez5-codec-ldac) + -Dcontrol=enabled # Matches upstream + -Daudiotestsrc=enabled # Matches upstream + -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 + -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph + $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client + $(meson_feature jack-sdk jack-devel) + $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '') + -Dsupport=enabled # Miscellaneous/common plugins, such as null sink + -Devl=disabled # Matches upstream + -Dtest=disabled # fakesink and fakesource plugins + $(meson_native_use_feature v4l v4l2) + -Dlibcamera=disabled # libcamera is not in Portage tree + -Dvideoconvert=enabled # Matches upstream + -Dvideotestsrc=enabled # Matches upstream + -Dvolume=enabled # Matches upstream + -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) + $(meson_native_use_feature extra pw-cat) + -Dudev=enabled + -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" + -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) + $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) + ) + + meson_src_configure +} + +multilib_src_install() { + # Our customs DOCS do not exist in multilib source directory + DOCS= meson_src_install +} + +multilib_src_install_all() { + einstalldocs + + insinto /etc/security/limits.d + doins ${limitsdfile} + + if use pipewire-alsa; then + dodir /etc/alsa/conf.d + # These will break if someone has /etc that is a symbol link to a subfolder! See #724222 + # And the current dosym8 -r implementation is likely affected by the same issue, too. + dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf + dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf + fi + + if ! use systemd; then + insinto /etc/xdg/autostart + newins "${FILESDIR}"/pipewire.desktop pipewire.desktop + + exeinto /usr/libexec + newexe "${FILESDIR}"/pipewire-launcher.sh pipewire-launcher + fi +} + +pkg_postinst() { + elog "It is recommended to raise RLIMIT_MEMLOCK to 256 for users" + elog "using PipeWire. Do it either manually or add yourself" + elog "to the 'audio' group:" + elog + elog " usermod -aG audio " + elog + + if ! use jack-sdk; then + elog "JACK emulation is incomplete and not all programs will work. PipeWire's" + elog "alternative libraries have been installed to a non-default location." + elog "To use them, put pw-jack before every JACK application." + elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" + elog "provider is still needed to compile the JACK applications themselves." + elog + fi + + if use systemd; then + elog "To use PipeWire for audio, the user units must be manually enabled:" + elog + elog " systemctl --user enable pipewire.socket pipewire-pulse.socket" + elog + elog "When switching from PulseAudio, do not forget to disable PulseAudio:" + elog + elog " systemctl --user disable pulseaudio.service pulseaudio.socket" + elog + elog "A reboot is recommended to avoid interferences from still running" + elog "PulseAudio daemon." + elog + elog "Both, new users and those upgrading, need to enable pipewire-media-session:" + elog + elog " systemctl --user enable pipewire-media-session.service" + elog + elog "NOTE: This is not required when using PipeWire only for screencasting." + elog + else + elog "This ebuild auto-enables PulseAudio replacement. Because of that, users" + elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable " + elog "autospawn'ing of the original daemon by setting:" + elog + elog " autospawn = no" + elog + elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" + elog + elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" + elog "${EROOT}/etc/pipewire/pipewire.conf by commenting out the relevant" + elog "command near the end of the file:" + elog + elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }" + elog + fi + + elog "For latest tips and tricks, troubleshooting information and documentation" + elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire" + elog + + optfeature_header "The following can be installed for optional runtime features:" + optfeature "restricted realtime capabilities vai D-Bus" sys-auth/rtkit + # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here! + if use bluetooth; then + optfeature "better BT headset support (daemon startup required)" net-misc/ofono + #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd + fi +} diff --git a/media-video/pipewire/pipewire-0.3.28-r1.ebuild b/media-video/pipewire/pipewire-0.3.28-r1.ebuild new file mode 100644 index 000000000000..e45f023b6a0e --- /dev/null +++ b/media-video/pipewire/pipewire-0.3.28-r1.ebuild @@ -0,0 +1,270 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +inherit meson-multilib optfeature udev + +if [[ ${PV} == 9999 ]]; then + EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" + inherit git-r3 +else + SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" +fi + +DESCRIPTION="Multimedia processing graphs" +HOMEPAGE="https://pipewire.org/" + +LICENSE="MIT LGPL-2.1+ GPL-2" +SLOT="0/0.3" +IUSE="aac aptx bluetooth doc extra gstreamer jack-client jack-sdk ldac pipewire-alsa systemd test v4l" + +# Once replacing system JACK libraries is possible, it's likely that +# jack-client IUSE will need blocking to avoid users accidentally +# configuring their systems to send PW sink output to the emulated +# JACK's sink - doing so is likely to yield no audio, cause a CPU +# cycles consuming loop (and may even cause GUI crashes)! + +REQUIRED_USE=" + aac? ( bluetooth ) + aptx? ( bluetooth ) + jack-sdk? ( !jack-client ) + ldac? ( bluetooth ) +" + +RESTRICT="!test? ( test )" + +BDEPEND=" + app-doc/xmltoman + doc? ( + app-doc/doxygen + media-gfx/graphviz + ) +" +RDEPEND=" + acct-group/audio + media-libs/alsa-lib + sys-apps/dbus[${MULTILIB_USEDEP}] + sys-libs/ncurses:=[unicode(+)] + virtual/libintl[${MULTILIB_USEDEP}] + virtual/libudev[${MULTILIB_USEDEP}] + bluetooth? ( + aac? ( media-libs/fdk-aac ) + aptx? ( media-libs/libopenaptx ) + ldac? ( media-libs/libldac ) + media-libs/sbc + >=net-wireless/bluez-4.101:= + ) + extra? ( + >=media-libs/libsndfile-1.0.20 + ) + gstreamer? ( + >=dev-libs/glib-2.32.0:2 + >=media-libs/gstreamer-1.10.0:1.0 + media-libs/gst-plugins-base:1.0 + ) + jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) + jack-sdk? ( + !media-sound/jack-audio-connection-kit + !media-sound/jack2 + ) + pipewire-alsa? ( + >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}] + || ( + media-plugins/alsa-plugins[-pulseaudio] + !media-plugins/alsa-plugins + ) + ) + !pipewire-alsa? ( media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] ) + systemd? ( sys-apps/systemd ) + v4l? ( media-libs/libv4l ) +" + +DEPEND="${RDEPEND}" + +# Present RDEPEND that are currently always disabled due to the PW +# code using them being required to be disabled by Gentoo guidelines +# (i.e. developer binaries not meant for users) and unready code +# media-video/ffmpeg:= +# media-libs/libsdl2 +# >=media-libs/vulkan-loader-1.1.69 +# +# Ditto for DEPEND +# >=dev-util/vulkan-headers-1.1.69 + +DOCS=( {README,INSTALL}.md NEWS ) + +PATCHES=( + "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch + "${FILESDIR}"/${PN}-0.3.28-revert-openaptx-restriction.patch +) + +# limitsdfile related code taken from =sys-auth/realtime-base-0.1 +# with changes as necessary. +limitsdfile=40-${PN}.conf + +src_prepare() { + default + + if ! use systemd; then + # This can be applied non-conditionally but would make for a + # significantly worse user experience on systemd then. + eapply "${FILESDIR}"/${PN}-0.3.25-non-systemd-integration.patch + fi + + einfo "Generating ${limitsdfile}" + cat > ${limitsdfile} <<- EOF || die + # Start of ${limitsdfile} from ${P} + + @audio - memlock 256 + + # End of ${limitsdfile} from ${P} + EOF +} + +multilib_src_configure() { + local emesonargs=( + -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} + $(meson_native_use_feature doc docs) + $(meson_native_enabled examples) # Disabling this implicitly disables -Dmedia-session + $(meson_native_enabled media-session) + $(meson_native_enabled man) + $(meson_feature test tests) + -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests + $(meson_native_use_feature gstreamer) + $(meson_native_use_feature gstreamer gstreamer-device-provider) + $(meson_native_use_feature systemd) + -Dsystemd-system-service=disabled # Matches upstream + $(meson_native_use_feature systemd systemd-user-service) + $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph + -Dspa-plugins=enabled + -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this) + -Daudiomixer=enabled # Matches upstream + -Daudioconvert=enabled # Matches upstream + $(meson_native_use_feature bluetooth bluez5) + $(meson_native_use_feature bluetooth bluez5-backend-hsp-native) + $(meson_native_use_feature bluetooth bluez5-backend-hfp-native) + $(meson_native_use_feature bluetooth bluez5-backend-ofono) + $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd) + $(meson_native_use_feature aac bluez5-codec-aac) + $(meson_native_use_feature aptx bluez5-codec-aptx) + $(meson_native_use_feature ldac bluez5-codec-ldac) + -Dcontrol=enabled # Matches upstream + -Daudiotestsrc=enabled # Matches upstream + -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 + -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph + $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client + $(meson_feature jack-sdk jack-devel) + $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '') + -Dsupport=enabled # Miscellaneous/common plugins, such as null sink + -Devl=disabled # Matches upstream + -Dtest=disabled # fakesink and fakesource plugins + $(meson_native_use_feature v4l v4l2) + -Dlibcamera=disabled # libcamera is not in Portage tree + -Dvideoconvert=enabled # Matches upstream + -Dvideotestsrc=enabled # Matches upstream + -Dvolume=enabled # Matches upstream + -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) + $(meson_native_use_feature extra pw-cat) + -Dudev=enabled + -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" + -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) + $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) + ) + + meson_src_configure +} + +multilib_src_install() { + # Our customs DOCS do not exist in multilib source directory + DOCS= meson_src_install +} + +multilib_src_install_all() { + einstalldocs + + insinto /etc/security/limits.d + doins ${limitsdfile} + + if use pipewire-alsa; then + dodir /etc/alsa/conf.d + # These will break if someone has /etc that is a symbol link to a subfolder! See #724222 + # And the current dosym8 -r implementation is likely affected by the same issue, too. + dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf + dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf + fi + + if ! use systemd; then + insinto /etc/xdg/autostart + newins "${FILESDIR}"/pipewire.desktop pipewire.desktop + + exeinto /usr/libexec + newexe "${FILESDIR}"/pipewire-launcher.sh pipewire-launcher + fi +} + +pkg_postinst() { + elog "It is recommended to raise RLIMIT_MEMLOCK to 256 for users" + elog "using PipeWire. Do it either manually or add yourself" + elog "to the 'audio' group:" + elog + elog " usermod -aG audio " + elog + + if ! use jack-sdk; then + elog "JACK emulation is incomplete and not all programs will work. PipeWire's" + elog "alternative libraries have been installed to a non-default location." + elog "To use them, put pw-jack before every JACK application." + elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" + elog "provider is still needed to compile the JACK applications themselves." + elog + fi + + if use systemd; then + elog "To use PipeWire for audio, the user units must be manually enabled:" + elog + elog " systemctl --user enable pipewire.socket pipewire-pulse.socket" + elog + elog "When switching from PulseAudio, do not forget to disable PulseAudio:" + elog + elog " systemctl --user disable pulseaudio.service pulseaudio.socket" + elog + elog "A reboot is recommended to avoid interferences from still running" + elog "PulseAudio daemon." + elog + elog "Both, new users and those upgrading, need to enable pipewire-media-session:" + elog + elog " systemctl --user enable pipewire-media-session.service" + elog + elog "NOTE: This is not required when using PipeWire only for screencasting." + elog + else + elog "This ebuild auto-enables PulseAudio replacement. Because of that, users" + elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable " + elog "autospawn'ing of the original daemon by setting:" + elog + elog " autospawn = no" + elog + elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" + elog + elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" + elog "${EROOT}/etc/pipewire/pipewire.conf by commenting out the relevant" + elog "command near the end of the file:" + elog + elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }" + elog + fi + + elog "For latest tips and tricks, troubleshooting information and documentation" + elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire" + elog + + optfeature_header "The following can be installed for optional runtime features:" + optfeature "restricted realtime capabilities vai D-Bus" sys-auth/rtkit + # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here! + if use bluetooth; then + optfeature "better BT headset support (daemon startup required)" net-misc/ofono + #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd + fi +} diff --git a/media-video/pipewire/pipewire-0.3.28.ebuild b/media-video/pipewire/pipewire-0.3.28.ebuild deleted file mode 100644 index af219402bdc9..000000000000 --- a/media-video/pipewire/pipewire-0.3.28.ebuild +++ /dev/null @@ -1,270 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -inherit meson-multilib optfeature udev - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" - inherit git-r3 -else - SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" -fi - -DESCRIPTION="Multimedia processing graphs" -HOMEPAGE="https://pipewire.org/" - -LICENSE="MIT LGPL-2.1+ GPL-2" -SLOT="0/0.3" -IUSE="aac aptx bluetooth doc extra gstreamer jack-client jack-sdk ldac pipewire-alsa systemd test v4l" - -# Once replacing system JACK libraries is possible, it's likely that -# jack-client IUSE will need blocking to avoid users accidentally -# configuring their systems to send PW sink output to the emulated -# JACK's sink - doing so is likely to yield no audio, cause a CPU -# cycles consuming loop (and may even cause GUI crashes)! - -REQUIRED_USE=" - aac? ( bluetooth ) - aptx? ( bluetooth ) - jack-sdk? ( !jack-client ) - ldac? ( bluetooth ) -" - -RESTRICT="!test? ( test )" - -BDEPEND=" - app-doc/xmltoman - doc? ( - app-doc/doxygen - media-gfx/graphviz - ) -" -RDEPEND=" - acct-group/audio - media-libs/alsa-lib - sys-apps/dbus[${MULTILIB_USEDEP}] - sys-libs/ncurses[unicode] - virtual/libintl[${MULTILIB_USEDEP}] - virtual/libudev[${MULTILIB_USEDEP}] - bluetooth? ( - aac? ( media-libs/fdk-aac ) - aptx? ( media-libs/libopenaptx ) - ldac? ( media-libs/libldac ) - media-libs/sbc - >=net-wireless/bluez-4.101:= - ) - extra? ( - >=media-libs/libsndfile-1.0.20 - ) - gstreamer? ( - >=dev-libs/glib-2.32.0:2 - >=media-libs/gstreamer-1.10.0:1.0 - media-libs/gst-plugins-base:1.0 - ) - jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) - jack-sdk? ( - !media-sound/jack-audio-connection-kit - !media-sound/jack2 - ) - pipewire-alsa? ( - >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}] - || ( - media-plugins/alsa-plugins[-pulseaudio] - !media-plugins/alsa-plugins - ) - ) - !pipewire-alsa? ( media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] ) - systemd? ( sys-apps/systemd ) - v4l? ( media-libs/libv4l ) -" - -DEPEND="${RDEPEND}" - -# Present RDEPEND that are currently always disabled due to the PW -# code using them being required to be disabled by Gentoo guidelines -# (i.e. developer binaries not meant for users) and unready code -# media-video/ffmpeg:= -# media-libs/libsdl2 -# >=media-libs/vulkan-loader-1.1.69 -# -# Ditto for DEPEND -# >=dev-util/vulkan-headers-1.1.69 - -DOCS=( {README,INSTALL}.md NEWS ) - -PATCHES=( - "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch - "${FILESDIR}"/${PN}-0.3.28-revert-openaptx-restriction.patch -) - -# limitsdfile related code taken from =sys-auth/realtime-base-0.1 -# with changes as necessary. -limitsdfile=40-${PN}.conf - -src_prepare() { - default - - if ! use systemd; then - # This can be applied non-conditionally but would make for a - # significantly worse user experience on systemd then. - eapply "${FILESDIR}"/${PN}-0.3.25-non-systemd-integration.patch - fi - - einfo "Generating ${limitsdfile}" - cat > ${limitsdfile} <<- EOF || die - # Start of ${limitsdfile} from ${P} - - @audio - memlock 256 - - # End of ${limitsdfile} from ${P} - EOF -} - -multilib_src_configure() { - local emesonargs=( - -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} - $(meson_native_use_feature doc docs) - $(meson_native_enabled examples) # Disabling this implicitly disables -Dmedia-session - $(meson_native_enabled media-session) - $(meson_native_enabled man) - $(meson_feature test tests) - -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests - $(meson_native_use_feature gstreamer) - $(meson_native_use_feature gstreamer gstreamer-device-provider) - $(meson_native_use_feature systemd) - -Dsystemd-system-service=disabled # Matches upstream - $(meson_native_use_feature systemd systemd-user-service) - $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph - -Dspa-plugins=enabled - -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this) - -Daudiomixer=enabled # Matches upstream - -Daudioconvert=enabled # Matches upstream - $(meson_native_use_feature bluetooth bluez5) - $(meson_native_use_feature bluetooth bluez5-backend-hsp-native) - $(meson_native_use_feature bluetooth bluez5-backend-hfp-native) - $(meson_native_use_feature bluetooth bluez5-backend-ofono) - $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd) - $(meson_native_use_feature aac bluez5-codec-aac) - $(meson_native_use_feature aptx bluez5-codec-aptx) - $(meson_native_use_feature ldac bluez5-codec-ldac) - -Dcontrol=enabled # Matches upstream - -Daudiotestsrc=enabled # Matches upstream - -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 - -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph - $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client - $(meson_feature jack-sdk jack-devel) - $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '') - -Dsupport=enabled # Miscellaneous/common plugins, such as null sink - -Devl=disabled # Matches upstream - -Dtest=disabled # fakesink and fakesource plugins - $(meson_native_use_feature v4l v4l2) - -Dlibcamera=disabled # libcamera is not in Portage tree - -Dvideoconvert=enabled # Matches upstream - -Dvideotestsrc=enabled # Matches upstream - -Dvolume=enabled # Matches upstream - -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) - $(meson_native_use_feature extra pw-cat) - -Dudev=enabled - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" - -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) - $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) - ) - - meson_src_configure -} - -multilib_src_install() { - # Our customs DOCS do not exist in multilib source directory - DOCS= meson_src_install -} - -multilib_src_install_all() { - einstalldocs - - insinto /etc/security/limits.d - doins ${limitsdfile} - - if use pipewire-alsa; then - dodir /etc/alsa/conf.d - # These will break if someone has /etc that is a symbol link to a subfolder! See #724222 - # And the current dosym8 -r implementation is likely affected by the same issue, too. - dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf - dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf - fi - - if ! use systemd; then - insinto /etc/xdg/autostart - newins "${FILESDIR}"/pipewire.desktop pipewire.desktop - - exeinto /usr/libexec - newexe "${FILESDIR}"/pipewire-launcher.sh pipewire-launcher - fi -} - -pkg_postinst() { - elog "It is recommended to raise RLIMIT_MEMLOCK to 256 for users" - elog "using PipeWire. Do it either manually or add yourself" - elog "to the 'audio' group:" - elog - elog " usermod -aG audio " - elog - - if ! use jack-sdk; then - elog "JACK emulation is incomplete and not all programs will work. PipeWire's" - elog "alternative libraries have been installed to a non-default location." - elog "To use them, put pw-jack before every JACK application." - elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" - elog "provider is still needed to compile the JACK applications themselves." - elog - fi - - if use systemd; then - elog "To use PipeWire for audio, the user units must be manually enabled:" - elog - elog " systemctl --user enable pipewire.socket pipewire-pulse.socket" - elog - elog "When switching from PulseAudio, do not forget to disable PulseAudio:" - elog - elog " systemctl --user disable pulseaudio.service pulseaudio.socket" - elog - elog "A reboot is recommended to avoid interferences from still running" - elog "PulseAudio daemon." - elog - elog "Both, new users and those upgrading, need to enable pipewire-media-session:" - elog - elog " systemctl --user enable pipewire-media-session.service" - elog - elog "NOTE: This is not required when using PipeWire only for screencasting." - elog - else - elog "This ebuild auto-enables PulseAudio replacement. Because of that, users" - elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable " - elog "autospawn'ing of the original daemon by setting:" - elog - elog " autospawn = no" - elog - elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" - elog - elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" - elog "${EROOT}/etc/pipewire/pipewire.conf by commenting out the relevant" - elog "command near the end of the file:" - elog - elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }" - elog - fi - - elog "For latest tips and tricks, troubleshooting information and documentation" - elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire" - elog - - optfeature_header "The following can be installed for optional runtime features:" - optfeature "restricted realtime capabilities vai D-Bus" sys-auth/rtkit - # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here! - if use bluetooth; then - optfeature "better BT headset support (daemon startup required)" net-misc/ofono - #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd - fi -} diff --git a/media-video/pipewire/pipewire-0.3.29-r1.ebuild b/media-video/pipewire/pipewire-0.3.29-r1.ebuild new file mode 100644 index 000000000000..94c7194ef130 --- /dev/null +++ b/media-video/pipewire/pipewire-0.3.29-r1.ebuild @@ -0,0 +1,271 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +inherit meson-multilib optfeature udev + +if [[ ${PV} == 9999 ]]; then + EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" + inherit git-r3 +else + SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" +fi + +DESCRIPTION="Multimedia processing graphs" +HOMEPAGE="https://pipewire.org/" + +LICENSE="MIT LGPL-2.1+ GPL-2" +SLOT="0/0.3" +IUSE="aac aptx bluetooth doc extra gstreamer jack-client jack-sdk ldac pipewire-alsa systemd test v4l" + +# Once replacing system JACK libraries is possible, it's likely that +# jack-client IUSE will need blocking to avoid users accidentally +# configuring their systems to send PW sink output to the emulated +# JACK's sink - doing so is likely to yield no audio, cause a CPU +# cycles consuming loop (and may even cause GUI crashes)! + +REQUIRED_USE=" + aac? ( bluetooth ) + aptx? ( bluetooth ) + jack-sdk? ( !jack-client ) + ldac? ( bluetooth ) +" + +RESTRICT="!test? ( test )" + +BDEPEND=" + app-doc/xmltoman + virtual/pkgconfig + doc? ( + app-doc/doxygen + media-gfx/graphviz + ) +" +RDEPEND=" + acct-group/audio + media-libs/alsa-lib + sys-apps/dbus[${MULTILIB_USEDEP}] + sys-libs/ncurses:=[unicode(+)] + virtual/libintl[${MULTILIB_USEDEP}] + virtual/libudev[${MULTILIB_USEDEP}] + bluetooth? ( + aac? ( media-libs/fdk-aac ) + aptx? ( media-libs/libopenaptx ) + ldac? ( media-libs/libldac ) + media-libs/sbc + >=net-wireless/bluez-4.101:= + ) + extra? ( + >=media-libs/libsndfile-1.0.20 + ) + gstreamer? ( + >=dev-libs/glib-2.32.0:2 + >=media-libs/gstreamer-1.10.0:1.0 + media-libs/gst-plugins-base:1.0 + ) + jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) + jack-sdk? ( + !media-sound/jack-audio-connection-kit + !media-sound/jack2 + ) + pipewire-alsa? ( + >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}] + || ( + media-plugins/alsa-plugins[-pulseaudio] + !media-plugins/alsa-plugins + ) + ) + !pipewire-alsa? ( media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] ) + systemd? ( sys-apps/systemd ) + v4l? ( media-libs/libv4l ) +" + +DEPEND="${RDEPEND}" + +# Present RDEPEND that are currently always disabled due to the PW +# code using them being required to be disabled by Gentoo guidelines +# (i.e. developer binaries not meant for users) and unready code +# media-video/ffmpeg:= +# media-libs/libsdl2 +# >=media-libs/vulkan-loader-1.1.69 +# +# Ditto for DEPEND +# >=dev-util/vulkan-headers-1.1.69 + +DOCS=( {README,INSTALL}.md NEWS ) + +PATCHES=( + "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch + "${FILESDIR}"/${PN}-0.3.29-revert-openaptx-restriction.patch +) + +# limitsdfile related code taken from =sys-auth/realtime-base-0.1 +# with changes as necessary. +limitsdfile=40-${PN}.conf + +src_prepare() { + default + + if ! use systemd; then + # This can be applied non-conditionally but would make for a + # significantly worse user experience on systemd then. + eapply "${FILESDIR}"/${PN}-0.3.25-non-systemd-integration.patch + fi + + einfo "Generating ${limitsdfile}" + cat > ${limitsdfile} <<- EOF || die + # Start of ${limitsdfile} from ${P} + + @audio - memlock 256 + + # End of ${limitsdfile} from ${P} + EOF +} + +multilib_src_configure() { + local emesonargs=( + -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} + $(meson_native_use_feature doc docs) + $(meson_native_enabled examples) # Disabling this implicitly disables -Dmedia-session + $(meson_native_enabled media-session) + $(meson_native_enabled man) + $(meson_feature test tests) + -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests + $(meson_native_use_feature gstreamer) + $(meson_native_use_feature gstreamer gstreamer-device-provider) + $(meson_native_use_feature systemd) + -Dsystemd-system-service=disabled # Matches upstream + $(meson_native_use_feature systemd systemd-user-service) + $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph + -Dspa-plugins=enabled + -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this) + -Daudiomixer=enabled # Matches upstream + -Daudioconvert=enabled # Matches upstream + $(meson_native_use_feature bluetooth bluez5) + $(meson_native_use_feature bluetooth bluez5-backend-hsp-native) + $(meson_native_use_feature bluetooth bluez5-backend-hfp-native) + $(meson_native_use_feature bluetooth bluez5-backend-ofono) + $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd) + $(meson_native_use_feature aac bluez5-codec-aac) + $(meson_native_use_feature aptx bluez5-codec-aptx) + $(meson_native_use_feature ldac bluez5-codec-ldac) + -Dcontrol=enabled # Matches upstream + -Daudiotestsrc=enabled # Matches upstream + -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 + -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph + $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client + $(meson_feature jack-sdk jack-devel) + $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '') + -Dsupport=enabled # Miscellaneous/common plugins, such as null sink + -Devl=disabled # Matches upstream + -Dtest=disabled # fakesink and fakesource plugins + $(meson_native_use_feature v4l v4l2) + -Dlibcamera=disabled # libcamera is not in Portage tree + -Dvideoconvert=enabled # Matches upstream + -Dvideotestsrc=enabled # Matches upstream + -Dvolume=enabled # Matches upstream + -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) + $(meson_native_use_feature extra pw-cat) + -Dudev=enabled + -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" + -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) + $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) + ) + + meson_src_configure +} + +multilib_src_install() { + # Our customs DOCS do not exist in multilib source directory + DOCS= meson_src_install +} + +multilib_src_install_all() { + einstalldocs + + insinto /etc/security/limits.d + doins ${limitsdfile} + + if use pipewire-alsa; then + dodir /etc/alsa/conf.d + # These will break if someone has /etc that is a symbol link to a subfolder! See #724222 + # And the current dosym8 -r implementation is likely affected by the same issue, too. + dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf + dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf + fi + + if ! use systemd; then + insinto /etc/xdg/autostart + newins "${FILESDIR}"/pipewire.desktop pipewire.desktop + + exeinto /usr/libexec + newexe "${FILESDIR}"/pipewire-launcher.sh pipewire-launcher + fi +} + +pkg_postinst() { + elog "It is recommended to raise RLIMIT_MEMLOCK to 256 for users" + elog "using PipeWire. Do it either manually or add yourself" + elog "to the 'audio' group:" + elog + elog " usermod -aG audio " + elog + + if ! use jack-sdk; then + elog "JACK emulation is incomplete and not all programs will work. PipeWire's" + elog "alternative libraries have been installed to a non-default location." + elog "To use them, put pw-jack before every JACK application." + elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" + elog "provider is still needed to compile the JACK applications themselves." + elog + fi + + if use systemd; then + elog "To use PipeWire for audio, the user units must be manually enabled:" + elog + elog " systemctl --user enable pipewire.socket pipewire-pulse.socket" + elog + elog "When switching from PulseAudio, do not forget to disable PulseAudio:" + elog + elog " systemctl --user disable pulseaudio.service pulseaudio.socket" + elog + elog "A reboot is recommended to avoid interferences from still running" + elog "PulseAudio daemon." + elog + elog "Both, new users and those upgrading, need to enable pipewire-media-session:" + elog + elog " systemctl --user enable pipewire-media-session.service" + elog + elog "NOTE: This is not required when using PipeWire only for screencasting." + elog + else + elog "This ebuild auto-enables PulseAudio replacement. Because of that, users" + elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable " + elog "autospawn'ing of the original daemon by setting:" + elog + elog " autospawn = no" + elog + elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" + elog + elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" + elog "${EROOT}/etc/pipewire/pipewire.conf by commenting out the relevant" + elog "command near the end of the file:" + elog + elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }" + elog + fi + + elog "For latest tips and tricks, troubleshooting information and documentation" + elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire" + elog + + optfeature_header "The following can be installed for optional runtime features:" + optfeature "restricted realtime capabilities vai D-Bus" sys-auth/rtkit + # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here! + if use bluetooth; then + optfeature "better BT headset support (daemon startup required)" net-misc/ofono + #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd + fi +} diff --git a/media-video/pipewire/pipewire-0.3.29.ebuild b/media-video/pipewire/pipewire-0.3.29.ebuild deleted file mode 100644 index 80f6797bd0b5..000000000000 --- a/media-video/pipewire/pipewire-0.3.29.ebuild +++ /dev/null @@ -1,271 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -inherit meson-multilib optfeature udev - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" - inherit git-r3 -else - SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" -fi - -DESCRIPTION="Multimedia processing graphs" -HOMEPAGE="https://pipewire.org/" - -LICENSE="MIT LGPL-2.1+ GPL-2" -SLOT="0/0.3" -IUSE="aac aptx bluetooth doc extra gstreamer jack-client jack-sdk ldac pipewire-alsa systemd test v4l" - -# Once replacing system JACK libraries is possible, it's likely that -# jack-client IUSE will need blocking to avoid users accidentally -# configuring their systems to send PW sink output to the emulated -# JACK's sink - doing so is likely to yield no audio, cause a CPU -# cycles consuming loop (and may even cause GUI crashes)! - -REQUIRED_USE=" - aac? ( bluetooth ) - aptx? ( bluetooth ) - jack-sdk? ( !jack-client ) - ldac? ( bluetooth ) -" - -RESTRICT="!test? ( test )" - -BDEPEND=" - app-doc/xmltoman - virtual/pkgconfig - doc? ( - app-doc/doxygen - media-gfx/graphviz - ) -" -RDEPEND=" - acct-group/audio - media-libs/alsa-lib - sys-apps/dbus[${MULTILIB_USEDEP}] - sys-libs/ncurses[unicode] - virtual/libintl[${MULTILIB_USEDEP}] - virtual/libudev[${MULTILIB_USEDEP}] - bluetooth? ( - aac? ( media-libs/fdk-aac ) - aptx? ( media-libs/libopenaptx ) - ldac? ( media-libs/libldac ) - media-libs/sbc - >=net-wireless/bluez-4.101:= - ) - extra? ( - >=media-libs/libsndfile-1.0.20 - ) - gstreamer? ( - >=dev-libs/glib-2.32.0:2 - >=media-libs/gstreamer-1.10.0:1.0 - media-libs/gst-plugins-base:1.0 - ) - jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) - jack-sdk? ( - !media-sound/jack-audio-connection-kit - !media-sound/jack2 - ) - pipewire-alsa? ( - >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}] - || ( - media-plugins/alsa-plugins[-pulseaudio] - !media-plugins/alsa-plugins - ) - ) - !pipewire-alsa? ( media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] ) - systemd? ( sys-apps/systemd ) - v4l? ( media-libs/libv4l ) -" - -DEPEND="${RDEPEND}" - -# Present RDEPEND that are currently always disabled due to the PW -# code using them being required to be disabled by Gentoo guidelines -# (i.e. developer binaries not meant for users) and unready code -# media-video/ffmpeg:= -# media-libs/libsdl2 -# >=media-libs/vulkan-loader-1.1.69 -# -# Ditto for DEPEND -# >=dev-util/vulkan-headers-1.1.69 - -DOCS=( {README,INSTALL}.md NEWS ) - -PATCHES=( - "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch - "${FILESDIR}"/${PN}-0.3.29-revert-openaptx-restriction.patch -) - -# limitsdfile related code taken from =sys-auth/realtime-base-0.1 -# with changes as necessary. -limitsdfile=40-${PN}.conf - -src_prepare() { - default - - if ! use systemd; then - # This can be applied non-conditionally but would make for a - # significantly worse user experience on systemd then. - eapply "${FILESDIR}"/${PN}-0.3.25-non-systemd-integration.patch - fi - - einfo "Generating ${limitsdfile}" - cat > ${limitsdfile} <<- EOF || die - # Start of ${limitsdfile} from ${P} - - @audio - memlock 256 - - # End of ${limitsdfile} from ${P} - EOF -} - -multilib_src_configure() { - local emesonargs=( - -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} - $(meson_native_use_feature doc docs) - $(meson_native_enabled examples) # Disabling this implicitly disables -Dmedia-session - $(meson_native_enabled media-session) - $(meson_native_enabled man) - $(meson_feature test tests) - -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests - $(meson_native_use_feature gstreamer) - $(meson_native_use_feature gstreamer gstreamer-device-provider) - $(meson_native_use_feature systemd) - -Dsystemd-system-service=disabled # Matches upstream - $(meson_native_use_feature systemd systemd-user-service) - $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph - -Dspa-plugins=enabled - -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this) - -Daudiomixer=enabled # Matches upstream - -Daudioconvert=enabled # Matches upstream - $(meson_native_use_feature bluetooth bluez5) - $(meson_native_use_feature bluetooth bluez5-backend-hsp-native) - $(meson_native_use_feature bluetooth bluez5-backend-hfp-native) - $(meson_native_use_feature bluetooth bluez5-backend-ofono) - $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd) - $(meson_native_use_feature aac bluez5-codec-aac) - $(meson_native_use_feature aptx bluez5-codec-aptx) - $(meson_native_use_feature ldac bluez5-codec-ldac) - -Dcontrol=enabled # Matches upstream - -Daudiotestsrc=enabled # Matches upstream - -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 - -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph - $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client - $(meson_feature jack-sdk jack-devel) - $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '') - -Dsupport=enabled # Miscellaneous/common plugins, such as null sink - -Devl=disabled # Matches upstream - -Dtest=disabled # fakesink and fakesource plugins - $(meson_native_use_feature v4l v4l2) - -Dlibcamera=disabled # libcamera is not in Portage tree - -Dvideoconvert=enabled # Matches upstream - -Dvideotestsrc=enabled # Matches upstream - -Dvolume=enabled # Matches upstream - -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) - $(meson_native_use_feature extra pw-cat) - -Dudev=enabled - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" - -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) - $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) - ) - - meson_src_configure -} - -multilib_src_install() { - # Our customs DOCS do not exist in multilib source directory - DOCS= meson_src_install -} - -multilib_src_install_all() { - einstalldocs - - insinto /etc/security/limits.d - doins ${limitsdfile} - - if use pipewire-alsa; then - dodir /etc/alsa/conf.d - # These will break if someone has /etc that is a symbol link to a subfolder! See #724222 - # And the current dosym8 -r implementation is likely affected by the same issue, too. - dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf - dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf - fi - - if ! use systemd; then - insinto /etc/xdg/autostart - newins "${FILESDIR}"/pipewire.desktop pipewire.desktop - - exeinto /usr/libexec - newexe "${FILESDIR}"/pipewire-launcher.sh pipewire-launcher - fi -} - -pkg_postinst() { - elog "It is recommended to raise RLIMIT_MEMLOCK to 256 for users" - elog "using PipeWire. Do it either manually or add yourself" - elog "to the 'audio' group:" - elog - elog " usermod -aG audio " - elog - - if ! use jack-sdk; then - elog "JACK emulation is incomplete and not all programs will work. PipeWire's" - elog "alternative libraries have been installed to a non-default location." - elog "To use them, put pw-jack before every JACK application." - elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" - elog "provider is still needed to compile the JACK applications themselves." - elog - fi - - if use systemd; then - elog "To use PipeWire for audio, the user units must be manually enabled:" - elog - elog " systemctl --user enable pipewire.socket pipewire-pulse.socket" - elog - elog "When switching from PulseAudio, do not forget to disable PulseAudio:" - elog - elog " systemctl --user disable pulseaudio.service pulseaudio.socket" - elog - elog "A reboot is recommended to avoid interferences from still running" - elog "PulseAudio daemon." - elog - elog "Both, new users and those upgrading, need to enable pipewire-media-session:" - elog - elog " systemctl --user enable pipewire-media-session.service" - elog - elog "NOTE: This is not required when using PipeWire only for screencasting." - elog - else - elog "This ebuild auto-enables PulseAudio replacement. Because of that, users" - elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable " - elog "autospawn'ing of the original daemon by setting:" - elog - elog " autospawn = no" - elog - elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" - elog - elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" - elog "${EROOT}/etc/pipewire/pipewire.conf by commenting out the relevant" - elog "command near the end of the file:" - elog - elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }" - elog - fi - - elog "For latest tips and tricks, troubleshooting information and documentation" - elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire" - elog - - optfeature_header "The following can be installed for optional runtime features:" - optfeature "restricted realtime capabilities vai D-Bus" sys-auth/rtkit - # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here! - if use bluetooth; then - optfeature "better BT headset support (daemon startup required)" net-misc/ofono - #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd - fi -} diff --git a/media-video/pipewire/pipewire-0.3.30-r1.ebuild b/media-video/pipewire/pipewire-0.3.30-r1.ebuild deleted file mode 100644 index cd67e12343ca..000000000000 --- a/media-video/pipewire/pipewire-0.3.30-r1.ebuild +++ /dev/null @@ -1,274 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -PYTHON_COMPAT=( python3_{7..10} ) - -inherit meson-multilib optfeature python-any-r1 udev - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" - inherit git-r3 -else - SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz" - KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 x86" -fi - -DESCRIPTION="Multimedia processing graphs" -HOMEPAGE="https://pipewire.org/" - -LICENSE="MIT LGPL-2.1+ GPL-2" -SLOT="0/0.3" -IUSE="bluetooth doc extra gstreamer jack-client jack-sdk pipewire-alsa systemd test v4l" - -# Once replacing system JACK libraries is possible, it's likely that -# jack-client IUSE will need blocking to avoid users accidentally -# configuring their systems to send PW sink output to the emulated -# JACK's sink - doing so is likely to yield no audio, cause a CPU -# cycles consuming loop (and may even cause GUI crashes)! - -REQUIRED_USE="jack-sdk? ( !jack-client )" - -RESTRICT="!test? ( test )" - -BDEPEND=" - app-doc/xmltoman - virtual/pkgconfig - ${PYTHON_DEPS} - doc? ( - app-doc/doxygen - media-gfx/graphviz - ) -" -RDEPEND=" - acct-group/audio - media-libs/alsa-lib - sys-apps/dbus[${MULTILIB_USEDEP}] - sys-libs/ncurses[unicode] - virtual/libintl[${MULTILIB_USEDEP}] - virtual/libudev[${MULTILIB_USEDEP}] - bluetooth? ( - media-libs/fdk-aac - media-libs/libldac - media-libs/libopenaptx - media-libs/sbc - >=net-wireless/bluez-4.101:= - ) - extra? ( - >=media-libs/libsndfile-1.0.20 - ) - gstreamer? ( - >=dev-libs/glib-2.32.0:2 - >=media-libs/gstreamer-1.10.0:1.0 - media-libs/gst-plugins-base:1.0 - ) - jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) - jack-sdk? ( - !media-sound/jack-audio-connection-kit - !media-sound/jack2 - ) - pipewire-alsa? ( - >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}] - || ( - media-plugins/alsa-plugins[-pulseaudio] - !media-plugins/alsa-plugins - ) - ) - !pipewire-alsa? ( media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] ) - systemd? ( sys-apps/systemd ) - v4l? ( media-libs/libv4l ) -" - -DEPEND="${RDEPEND}" - -# Present RDEPEND that are currently always disabled due to the PW -# code using them being required to be disabled by Gentoo guidelines -# (i.e. developer binaries not meant for users) and unready code -# media-video/ffmpeg:= -# media-libs/libsdl2 -# >=media-libs/vulkan-loader-1.1.69 -# -# Ditto for DEPEND -# >=dev-util/vulkan-headers-1.1.69 - -DOCS=( {README,INSTALL}.md NEWS ) - -PATCHES=( - "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch - "${FILESDIR}"/${PN}-0.3.29-revert-openaptx-restriction.patch -) - -# limitsdfile related code taken from =sys-auth/realtime-base-0.1 -# with changes as necessary. -limitsdfile=40-${PN}.conf - -src_prepare() { - default - - if ! use systemd; then - # This can be applied non-conditionally but would make for a - # significantly worse user experience on systemd then. - eapply "${FILESDIR}"/${PN}-0.3.25-non-systemd-integration.patch - fi - - einfo "Generating ${limitsdfile}" - cat > ${limitsdfile} <<- EOF || die - # Start of ${limitsdfile} from ${P} - - @audio - memlock 256 - - # End of ${limitsdfile} from ${P} - EOF -} - -multilib_src_configure() { - local emesonargs=( - -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} - $(meson_native_use_feature doc docs) - $(meson_native_enabled examples) # Disabling this implicitly disables -Dmedia-session - $(meson_native_enabled media-session) - $(meson_native_enabled man) - $(meson_feature test tests) - -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests - $(meson_native_use_feature gstreamer) - $(meson_native_use_feature gstreamer gstreamer-device-provider) - $(meson_native_use_feature systemd) - -Dsystemd-system-service=disabled # Matches upstream - $(meson_native_use_feature systemd systemd-user-service) - $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph - -Dspa-plugins=enabled - -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this) - -Daudiomixer=enabled # Matches upstream - -Daudioconvert=enabled # Matches upstream - $(meson_native_use_feature bluetooth bluez5) - $(meson_native_use_feature bluetooth bluez5-backend-hsp-native) - $(meson_native_use_feature bluetooth bluez5-backend-hfp-native) - $(meson_native_use_feature bluetooth bluez5-backend-ofono) - $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd) - $(meson_native_use_feature bluetooth bluez5-codec-aac) - $(meson_native_use_feature bluetooth bluez5-codec-aptx) - $(meson_native_use_feature bluetooth bluez5-codec-ldac) - -Dcontrol=enabled # Matches upstream - -Daudiotestsrc=enabled # Matches upstream - -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 - -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph - $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client - $(meson_feature jack-sdk jack-devel) - $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '') - -Dsupport=enabled # Miscellaneous/common plugins, such as null sink - -Devl=disabled # Matches upstream - -Dtest=disabled # fakesink and fakesource plugins - $(meson_native_use_feature v4l v4l2) - -Dlibcamera=disabled # libcamera is not in Portage tree - -Dvideoconvert=enabled # Matches upstream - -Dvideotestsrc=enabled # Matches upstream - -Dvolume=enabled # Matches upstream - -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) - $(meson_native_use_feature extra pw-cat) - -Dudev=enabled - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" - -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) - $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) - ) - - meson_src_configure -} - -multilib_src_install() { - # Our customs DOCS do not exist in multilib source directory - DOCS= meson_src_install -} - -multilib_src_install_all() { - einstalldocs - - insinto /etc/security/limits.d - doins ${limitsdfile} - - if use pipewire-alsa; then - dodir /etc/alsa/conf.d - # These will break if someone has /etc that is a symbol link to a subfolder! See #724222 - # And the current dosym8 -r implementation is likely affected by the same issue, too. - dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf - dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf - fi - - if ! use systemd; then - insinto /etc/xdg/autostart - newins "${FILESDIR}"/pipewire.desktop pipewire.desktop - - exeinto /usr/libexec - newexe "${FILESDIR}"/pipewire-launcher.sh pipewire-launcher - fi -} - -pkg_postinst() { - elog "It is recommended to raise RLIMIT_MEMLOCK to 256 for users" - elog "using PipeWire. Do it either manually or add yourself" - elog "to the 'audio' group:" - elog - elog " usermod -aG audio " - elog - - if ! use jack-sdk; then - elog "JACK emulation is incomplete and not all programs will work. PipeWire's" - elog "alternative libraries have been installed to a non-default location." - elog "To use them, put pw-jack before every JACK application." - elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" - elog "provider is still needed to compile the JACK applications themselves." - elog - fi - - if use systemd; then - elog "To use PipeWire for audio, the user units must be manually enabled:" - elog - elog " systemctl --user enable pipewire.socket pipewire-pulse.socket" - elog - elog "When switching from PulseAudio, do not forget to disable PulseAudio:" - elog - elog " systemctl --user disable pulseaudio.service pulseaudio.socket" - elog - elog "A reboot is recommended to avoid interferences from still running" - elog "PulseAudio daemon." - elog - elog "Both, new users and those upgrading, need to enable pipewire-media-session:" - elog - elog " systemctl --user enable pipewire-media-session.service" - elog - elog "NOTE: This is not required when using PipeWire only for screencasting." - elog - else - elog "This ebuild auto-enables PulseAudio replacement. Because of that, users" - elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable " - elog "autospawn'ing of the original daemon by setting:" - elog - elog " autospawn = no" - elog - elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" - elog - elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" - elog "${EROOT}/etc/pipewire/pipewire.conf by commenting out the relevant" - elog "command near the end of the file:" - elog - elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }" - elog - elog "NOTE:" - elog "Starting with PipeWire-0.3.30, package is no longer installing config" - elog "into ${EROOT}/etc/pipewire by default. In case you need to change" - elog "config, please start by copying default config from ${EROOT}/usr/share/pipewire" - elog "and just override sections you want to change." - fi - - elog "For latest tips and tricks, troubleshooting information and documentation" - elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire" - elog - - optfeature_header "The following can be installed for optional runtime features:" - optfeature "restricted realtime capabilities vai D-Bus" sys-auth/rtkit - # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here! - if use bluetooth; then - optfeature "better BT headset support (daemon startup required)" net-misc/ofono - #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd - fi -} diff --git a/media-video/pipewire/pipewire-0.3.30-r2.ebuild b/media-video/pipewire/pipewire-0.3.30-r2.ebuild new file mode 100644 index 000000000000..4017b4dbc693 --- /dev/null +++ b/media-video/pipewire/pipewire-0.3.30-r2.ebuild @@ -0,0 +1,274 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +PYTHON_COMPAT=( python3_{7..10} ) + +inherit meson-multilib optfeature python-any-r1 udev + +if [[ ${PV} == 9999 ]]; then + EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" + inherit git-r3 +else + SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz" + KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 x86" +fi + +DESCRIPTION="Multimedia processing graphs" +HOMEPAGE="https://pipewire.org/" + +LICENSE="MIT LGPL-2.1+ GPL-2" +SLOT="0/0.3" +IUSE="bluetooth doc extra gstreamer jack-client jack-sdk pipewire-alsa systemd test v4l" + +# Once replacing system JACK libraries is possible, it's likely that +# jack-client IUSE will need blocking to avoid users accidentally +# configuring their systems to send PW sink output to the emulated +# JACK's sink - doing so is likely to yield no audio, cause a CPU +# cycles consuming loop (and may even cause GUI crashes)! + +REQUIRED_USE="jack-sdk? ( !jack-client )" + +RESTRICT="!test? ( test )" + +BDEPEND=" + app-doc/xmltoman + virtual/pkgconfig + ${PYTHON_DEPS} + doc? ( + app-doc/doxygen + media-gfx/graphviz + ) +" +RDEPEND=" + acct-group/audio + media-libs/alsa-lib + sys-apps/dbus[${MULTILIB_USEDEP}] + sys-libs/ncurses:=[unicode(+)] + virtual/libintl[${MULTILIB_USEDEP}] + virtual/libudev[${MULTILIB_USEDEP}] + bluetooth? ( + media-libs/fdk-aac + media-libs/libldac + media-libs/libopenaptx + media-libs/sbc + >=net-wireless/bluez-4.101:= + ) + extra? ( + >=media-libs/libsndfile-1.0.20 + ) + gstreamer? ( + >=dev-libs/glib-2.32.0:2 + >=media-libs/gstreamer-1.10.0:1.0 + media-libs/gst-plugins-base:1.0 + ) + jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) + jack-sdk? ( + !media-sound/jack-audio-connection-kit + !media-sound/jack2 + ) + pipewire-alsa? ( + >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}] + || ( + media-plugins/alsa-plugins[-pulseaudio] + !media-plugins/alsa-plugins + ) + ) + !pipewire-alsa? ( media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] ) + systemd? ( sys-apps/systemd ) + v4l? ( media-libs/libv4l ) +" + +DEPEND="${RDEPEND}" + +# Present RDEPEND that are currently always disabled due to the PW +# code using them being required to be disabled by Gentoo guidelines +# (i.e. developer binaries not meant for users) and unready code +# media-video/ffmpeg:= +# media-libs/libsdl2 +# >=media-libs/vulkan-loader-1.1.69 +# +# Ditto for DEPEND +# >=dev-util/vulkan-headers-1.1.69 + +DOCS=( {README,INSTALL}.md NEWS ) + +PATCHES=( + "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch + "${FILESDIR}"/${PN}-0.3.29-revert-openaptx-restriction.patch +) + +# limitsdfile related code taken from =sys-auth/realtime-base-0.1 +# with changes as necessary. +limitsdfile=40-${PN}.conf + +src_prepare() { + default + + if ! use systemd; then + # This can be applied non-conditionally but would make for a + # significantly worse user experience on systemd then. + eapply "${FILESDIR}"/${PN}-0.3.25-non-systemd-integration.patch + fi + + einfo "Generating ${limitsdfile}" + cat > ${limitsdfile} <<- EOF || die + # Start of ${limitsdfile} from ${P} + + @audio - memlock 256 + + # End of ${limitsdfile} from ${P} + EOF +} + +multilib_src_configure() { + local emesonargs=( + -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} + $(meson_native_use_feature doc docs) + $(meson_native_enabled examples) # Disabling this implicitly disables -Dmedia-session + $(meson_native_enabled media-session) + $(meson_native_enabled man) + $(meson_feature test tests) + -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests + $(meson_native_use_feature gstreamer) + $(meson_native_use_feature gstreamer gstreamer-device-provider) + $(meson_native_use_feature systemd) + -Dsystemd-system-service=disabled # Matches upstream + $(meson_native_use_feature systemd systemd-user-service) + $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph + -Dspa-plugins=enabled + -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this) + -Daudiomixer=enabled # Matches upstream + -Daudioconvert=enabled # Matches upstream + $(meson_native_use_feature bluetooth bluez5) + $(meson_native_use_feature bluetooth bluez5-backend-hsp-native) + $(meson_native_use_feature bluetooth bluez5-backend-hfp-native) + $(meson_native_use_feature bluetooth bluez5-backend-ofono) + $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd) + $(meson_native_use_feature bluetooth bluez5-codec-aac) + $(meson_native_use_feature bluetooth bluez5-codec-aptx) + $(meson_native_use_feature bluetooth bluez5-codec-ldac) + -Dcontrol=enabled # Matches upstream + -Daudiotestsrc=enabled # Matches upstream + -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 + -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph + $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client + $(meson_feature jack-sdk jack-devel) + $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '') + -Dsupport=enabled # Miscellaneous/common plugins, such as null sink + -Devl=disabled # Matches upstream + -Dtest=disabled # fakesink and fakesource plugins + $(meson_native_use_feature v4l v4l2) + -Dlibcamera=disabled # libcamera is not in Portage tree + -Dvideoconvert=enabled # Matches upstream + -Dvideotestsrc=enabled # Matches upstream + -Dvolume=enabled # Matches upstream + -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) + $(meson_native_use_feature extra pw-cat) + -Dudev=enabled + -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" + -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) + $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) + ) + + meson_src_configure +} + +multilib_src_install() { + # Our customs DOCS do not exist in multilib source directory + DOCS= meson_src_install +} + +multilib_src_install_all() { + einstalldocs + + insinto /etc/security/limits.d + doins ${limitsdfile} + + if use pipewire-alsa; then + dodir /etc/alsa/conf.d + # These will break if someone has /etc that is a symbol link to a subfolder! See #724222 + # And the current dosym8 -r implementation is likely affected by the same issue, too. + dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf + dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf + fi + + if ! use systemd; then + insinto /etc/xdg/autostart + newins "${FILESDIR}"/pipewire.desktop pipewire.desktop + + exeinto /usr/libexec + newexe "${FILESDIR}"/pipewire-launcher.sh pipewire-launcher + fi +} + +pkg_postinst() { + elog "It is recommended to raise RLIMIT_MEMLOCK to 256 for users" + elog "using PipeWire. Do it either manually or add yourself" + elog "to the 'audio' group:" + elog + elog " usermod -aG audio " + elog + + if ! use jack-sdk; then + elog "JACK emulation is incomplete and not all programs will work. PipeWire's" + elog "alternative libraries have been installed to a non-default location." + elog "To use them, put pw-jack before every JACK application." + elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" + elog "provider is still needed to compile the JACK applications themselves." + elog + fi + + if use systemd; then + elog "To use PipeWire for audio, the user units must be manually enabled:" + elog + elog " systemctl --user enable pipewire.socket pipewire-pulse.socket" + elog + elog "When switching from PulseAudio, do not forget to disable PulseAudio:" + elog + elog " systemctl --user disable pulseaudio.service pulseaudio.socket" + elog + elog "A reboot is recommended to avoid interferences from still running" + elog "PulseAudio daemon." + elog + elog "Both, new users and those upgrading, need to enable pipewire-media-session:" + elog + elog " systemctl --user enable pipewire-media-session.service" + elog + elog "NOTE: This is not required when using PipeWire only for screencasting." + elog + else + elog "This ebuild auto-enables PulseAudio replacement. Because of that, users" + elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable " + elog "autospawn'ing of the original daemon by setting:" + elog + elog " autospawn = no" + elog + elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" + elog + elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" + elog "${EROOT}/etc/pipewire/pipewire.conf by commenting out the relevant" + elog "command near the end of the file:" + elog + elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }" + elog + elog "NOTE:" + elog "Starting with PipeWire-0.3.30, package is no longer installing config" + elog "into ${EROOT}/etc/pipewire by default. In case you need to change" + elog "config, please start by copying default config from ${EROOT}/usr/share/pipewire" + elog "and just override sections you want to change." + fi + + elog "For latest tips and tricks, troubleshooting information and documentation" + elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire" + elog + + optfeature_header "The following can be installed for optional runtime features:" + optfeature "restricted realtime capabilities vai D-Bus" sys-auth/rtkit + # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here! + if use bluetooth; then + optfeature "better BT headset support (daemon startup required)" net-misc/ofono + #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd + fi +} diff --git a/media-video/pipewire/pipewire-0.3.31-r1.ebuild b/media-video/pipewire/pipewire-0.3.31-r1.ebuild new file mode 100644 index 000000000000..a4448bb20cdc --- /dev/null +++ b/media-video/pipewire/pipewire-0.3.31-r1.ebuild @@ -0,0 +1,274 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +PYTHON_COMPAT=( python3_{7..10} ) + +inherit meson-multilib optfeature python-any-r1 udev + +if [[ ${PV} == 9999 ]]; then + EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" + inherit git-r3 +else + SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" +fi + +DESCRIPTION="Multimedia processing graphs" +HOMEPAGE="https://pipewire.org/" + +LICENSE="MIT LGPL-2.1+ GPL-2" +SLOT="0/0.3" +IUSE="bluetooth doc extra gstreamer jack-client jack-sdk pipewire-alsa systemd test v4l" + +# Once replacing system JACK libraries is possible, it's likely that +# jack-client IUSE will need blocking to avoid users accidentally +# configuring their systems to send PW sink output to the emulated +# JACK's sink - doing so is likely to yield no audio, cause a CPU +# cycles consuming loop (and may even cause GUI crashes)! + +REQUIRED_USE="jack-sdk? ( !jack-client )" + +RESTRICT="!test? ( test )" + +BDEPEND=" + app-doc/xmltoman + virtual/pkgconfig + ${PYTHON_DEPS} + doc? ( + app-doc/doxygen + media-gfx/graphviz + ) +" +RDEPEND=" + acct-group/audio + media-libs/alsa-lib + sys-apps/dbus[${MULTILIB_USEDEP}] + sys-libs/ncurses:=[unicode(+)] + virtual/libintl[${MULTILIB_USEDEP}] + virtual/libudev[${MULTILIB_USEDEP}] + bluetooth? ( + media-libs/fdk-aac + media-libs/libldac + media-libs/libopenaptx + media-libs/sbc + >=net-wireless/bluez-4.101:= + ) + extra? ( + >=media-libs/libsndfile-1.0.20 + ) + gstreamer? ( + >=dev-libs/glib-2.32.0:2 + >=media-libs/gstreamer-1.10.0:1.0 + media-libs/gst-plugins-base:1.0 + ) + jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) + jack-sdk? ( + !media-sound/jack-audio-connection-kit + !media-sound/jack2 + ) + pipewire-alsa? ( + >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}] + || ( + media-plugins/alsa-plugins[-pulseaudio] + !media-plugins/alsa-plugins + ) + ) + !pipewire-alsa? ( media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] ) + systemd? ( sys-apps/systemd ) + v4l? ( media-libs/libv4l ) +" + +DEPEND="${RDEPEND}" + +# Present RDEPEND that are currently always disabled due to the PW +# code using them being required to be disabled by Gentoo guidelines +# (i.e. developer binaries not meant for users) and unready code +# media-video/ffmpeg:= +# media-libs/libsdl2 +# >=media-libs/vulkan-loader-1.1.69 +# +# Ditto for DEPEND +# >=dev-util/vulkan-headers-1.1.69 + +DOCS=( {README,INSTALL}.md NEWS ) + +PATCHES=( + "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch + "${FILESDIR}"/${PN}-0.3.31-revert-openaptx-restriction.patch +) + +# limitsdfile related code taken from =sys-auth/realtime-base-0.1 +# with changes as necessary. +limitsdfile=40-${PN}.conf + +src_prepare() { + default + + if ! use systemd; then + # This can be applied non-conditionally but would make for a + # significantly worse user experience on systemd then. + eapply "${FILESDIR}"/${PN}-0.3.31-non-systemd-integration.patch + fi + + einfo "Generating ${limitsdfile}" + cat > ${limitsdfile} <<- EOF || die + # Start of ${limitsdfile} from ${P} + + @audio - memlock 256 + + # End of ${limitsdfile} from ${P} + EOF +} + +multilib_src_configure() { + local emesonargs=( + -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} + $(meson_native_use_feature doc docs) + $(meson_native_enabled examples) # Disabling this implicitly disables -Dmedia-session + $(meson_native_enabled media-session) + $(meson_native_enabled man) + $(meson_feature test tests) + -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests + $(meson_native_use_feature gstreamer) + $(meson_native_use_feature gstreamer gstreamer-device-provider) + $(meson_native_use_feature systemd) + -Dsystemd-system-service=disabled # Matches upstream + $(meson_native_use_feature systemd systemd-user-service) + $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph + -Dspa-plugins=enabled + -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this) + -Daudiomixer=enabled # Matches upstream + -Daudioconvert=enabled # Matches upstream + $(meson_native_use_feature bluetooth bluez5) + $(meson_native_use_feature bluetooth bluez5-backend-hsp-native) + $(meson_native_use_feature bluetooth bluez5-backend-hfp-native) + $(meson_native_use_feature bluetooth bluez5-backend-ofono) + $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd) + $(meson_native_use_feature bluetooth bluez5-codec-aac) + $(meson_native_use_feature bluetooth bluez5-codec-aptx) + $(meson_native_use_feature bluetooth bluez5-codec-ldac) + -Dcontrol=enabled # Matches upstream + -Daudiotestsrc=enabled # Matches upstream + -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 + -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph + $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client + $(meson_feature jack-sdk jack-devel) + $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '') + -Dsupport=enabled # Miscellaneous/common plugins, such as null sink + -Devl=disabled # Matches upstream + -Dtest=disabled # fakesink and fakesource plugins + $(meson_native_use_feature v4l v4l2) + -Dlibcamera=disabled # libcamera is not in Portage tree + -Dvideoconvert=enabled # Matches upstream + -Dvideotestsrc=enabled # Matches upstream + -Dvolume=enabled # Matches upstream + -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) + $(meson_native_use_feature extra pw-cat) + -Dudev=enabled + -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" + -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) + $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) + ) + + meson_src_configure +} + +multilib_src_install() { + # Our customs DOCS do not exist in multilib source directory + DOCS= meson_src_install +} + +multilib_src_install_all() { + einstalldocs + + insinto /etc/security/limits.d + doins ${limitsdfile} + + if use pipewire-alsa; then + dodir /etc/alsa/conf.d + # These will break if someone has /etc that is a symbol link to a subfolder! See #724222 + # And the current dosym8 -r implementation is likely affected by the same issue, too. + dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf + dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf + fi + + if ! use systemd; then + insinto /etc/xdg/autostart + newins "${FILESDIR}"/pipewire.desktop pipewire.desktop + + exeinto /usr/libexec + newexe "${FILESDIR}"/pipewire-launcher.sh pipewire-launcher + fi +} + +pkg_postinst() { + elog "It is recommended to raise RLIMIT_MEMLOCK to 256 for users" + elog "using PipeWire. Do it either manually or add yourself" + elog "to the 'audio' group:" + elog + elog " usermod -aG audio " + elog + + if ! use jack-sdk; then + elog "JACK emulation is incomplete and not all programs will work. PipeWire's" + elog "alternative libraries have been installed to a non-default location." + elog "To use them, put pw-jack before every JACK application." + elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" + elog "provider is still needed to compile the JACK applications themselves." + elog + fi + + if use systemd; then + elog "To use PipeWire for audio, the user units must be manually enabled:" + elog + elog " systemctl --user enable pipewire.socket pipewire-pulse.socket" + elog + elog "When switching from PulseAudio, do not forget to disable PulseAudio:" + elog + elog " systemctl --user disable pulseaudio.service pulseaudio.socket" + elog + elog "A reboot is recommended to avoid interferences from still running" + elog "PulseAudio daemon." + elog + elog "Both, new users and those upgrading, need to enable pipewire-media-session:" + elog + elog " systemctl --user enable pipewire-media-session.service" + elog + elog "NOTE: This is not required when using PipeWire only for screencasting." + elog + else + elog "This ebuild auto-enables PulseAudio replacement. Because of that, users" + elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable " + elog "autospawn'ing of the original daemon by setting:" + elog + elog " autospawn = no" + elog + elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" + elog + elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" + elog "${EROOT}/etc/pipewire/pipewire.conf by commenting out the relevant" + elog "command near the end of the file:" + elog + elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }" + elog + elog "NOTE:" + elog "Starting with PipeWire-0.3.30, package is no longer installing config" + elog "into ${EROOT}/etc/pipewire by default. In case you need to change" + elog "config, please start by copying default config from ${EROOT}/usr/share/pipewire" + elog "and just override sections you want to change." + fi + + elog "For latest tips and tricks, troubleshooting information and documentation" + elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire" + elog + + optfeature_header "The following can be installed for optional runtime features:" + optfeature "restricted realtime capabilities vai D-Bus" sys-auth/rtkit + # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here! + if use bluetooth; then + optfeature "better BT headset support (daemon startup required)" net-misc/ofono + #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd + fi +} diff --git a/media-video/pipewire/pipewire-0.3.31.ebuild b/media-video/pipewire/pipewire-0.3.31.ebuild deleted file mode 100644 index 29da21cf2dc0..000000000000 --- a/media-video/pipewire/pipewire-0.3.31.ebuild +++ /dev/null @@ -1,274 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -PYTHON_COMPAT=( python3_{7..10} ) - -inherit meson-multilib optfeature python-any-r1 udev - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" - inherit git-r3 -else - SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" -fi - -DESCRIPTION="Multimedia processing graphs" -HOMEPAGE="https://pipewire.org/" - -LICENSE="MIT LGPL-2.1+ GPL-2" -SLOT="0/0.3" -IUSE="bluetooth doc extra gstreamer jack-client jack-sdk pipewire-alsa systemd test v4l" - -# Once replacing system JACK libraries is possible, it's likely that -# jack-client IUSE will need blocking to avoid users accidentally -# configuring their systems to send PW sink output to the emulated -# JACK's sink - doing so is likely to yield no audio, cause a CPU -# cycles consuming loop (and may even cause GUI crashes)! - -REQUIRED_USE="jack-sdk? ( !jack-client )" - -RESTRICT="!test? ( test )" - -BDEPEND=" - app-doc/xmltoman - virtual/pkgconfig - ${PYTHON_DEPS} - doc? ( - app-doc/doxygen - media-gfx/graphviz - ) -" -RDEPEND=" - acct-group/audio - media-libs/alsa-lib - sys-apps/dbus[${MULTILIB_USEDEP}] - sys-libs/ncurses[unicode] - virtual/libintl[${MULTILIB_USEDEP}] - virtual/libudev[${MULTILIB_USEDEP}] - bluetooth? ( - media-libs/fdk-aac - media-libs/libldac - media-libs/libopenaptx - media-libs/sbc - >=net-wireless/bluez-4.101:= - ) - extra? ( - >=media-libs/libsndfile-1.0.20 - ) - gstreamer? ( - >=dev-libs/glib-2.32.0:2 - >=media-libs/gstreamer-1.10.0:1.0 - media-libs/gst-plugins-base:1.0 - ) - jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) - jack-sdk? ( - !media-sound/jack-audio-connection-kit - !media-sound/jack2 - ) - pipewire-alsa? ( - >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}] - || ( - media-plugins/alsa-plugins[-pulseaudio] - !media-plugins/alsa-plugins - ) - ) - !pipewire-alsa? ( media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] ) - systemd? ( sys-apps/systemd ) - v4l? ( media-libs/libv4l ) -" - -DEPEND="${RDEPEND}" - -# Present RDEPEND that are currently always disabled due to the PW -# code using them being required to be disabled by Gentoo guidelines -# (i.e. developer binaries not meant for users) and unready code -# media-video/ffmpeg:= -# media-libs/libsdl2 -# >=media-libs/vulkan-loader-1.1.69 -# -# Ditto for DEPEND -# >=dev-util/vulkan-headers-1.1.69 - -DOCS=( {README,INSTALL}.md NEWS ) - -PATCHES=( - "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch - "${FILESDIR}"/${PN}-0.3.31-revert-openaptx-restriction.patch -) - -# limitsdfile related code taken from =sys-auth/realtime-base-0.1 -# with changes as necessary. -limitsdfile=40-${PN}.conf - -src_prepare() { - default - - if ! use systemd; then - # This can be applied non-conditionally but would make for a - # significantly worse user experience on systemd then. - eapply "${FILESDIR}"/${PN}-0.3.31-non-systemd-integration.patch - fi - - einfo "Generating ${limitsdfile}" - cat > ${limitsdfile} <<- EOF || die - # Start of ${limitsdfile} from ${P} - - @audio - memlock 256 - - # End of ${limitsdfile} from ${P} - EOF -} - -multilib_src_configure() { - local emesonargs=( - -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} - $(meson_native_use_feature doc docs) - $(meson_native_enabled examples) # Disabling this implicitly disables -Dmedia-session - $(meson_native_enabled media-session) - $(meson_native_enabled man) - $(meson_feature test tests) - -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests - $(meson_native_use_feature gstreamer) - $(meson_native_use_feature gstreamer gstreamer-device-provider) - $(meson_native_use_feature systemd) - -Dsystemd-system-service=disabled # Matches upstream - $(meson_native_use_feature systemd systemd-user-service) - $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph - -Dspa-plugins=enabled - -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this) - -Daudiomixer=enabled # Matches upstream - -Daudioconvert=enabled # Matches upstream - $(meson_native_use_feature bluetooth bluez5) - $(meson_native_use_feature bluetooth bluez5-backend-hsp-native) - $(meson_native_use_feature bluetooth bluez5-backend-hfp-native) - $(meson_native_use_feature bluetooth bluez5-backend-ofono) - $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd) - $(meson_native_use_feature bluetooth bluez5-codec-aac) - $(meson_native_use_feature bluetooth bluez5-codec-aptx) - $(meson_native_use_feature bluetooth bluez5-codec-ldac) - -Dcontrol=enabled # Matches upstream - -Daudiotestsrc=enabled # Matches upstream - -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 - -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph - $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client - $(meson_feature jack-sdk jack-devel) - $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '') - -Dsupport=enabled # Miscellaneous/common plugins, such as null sink - -Devl=disabled # Matches upstream - -Dtest=disabled # fakesink and fakesource plugins - $(meson_native_use_feature v4l v4l2) - -Dlibcamera=disabled # libcamera is not in Portage tree - -Dvideoconvert=enabled # Matches upstream - -Dvideotestsrc=enabled # Matches upstream - -Dvolume=enabled # Matches upstream - -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) - $(meson_native_use_feature extra pw-cat) - -Dudev=enabled - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" - -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) - $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) - ) - - meson_src_configure -} - -multilib_src_install() { - # Our customs DOCS do not exist in multilib source directory - DOCS= meson_src_install -} - -multilib_src_install_all() { - einstalldocs - - insinto /etc/security/limits.d - doins ${limitsdfile} - - if use pipewire-alsa; then - dodir /etc/alsa/conf.d - # These will break if someone has /etc that is a symbol link to a subfolder! See #724222 - # And the current dosym8 -r implementation is likely affected by the same issue, too. - dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf - dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf - fi - - if ! use systemd; then - insinto /etc/xdg/autostart - newins "${FILESDIR}"/pipewire.desktop pipewire.desktop - - exeinto /usr/libexec - newexe "${FILESDIR}"/pipewire-launcher.sh pipewire-launcher - fi -} - -pkg_postinst() { - elog "It is recommended to raise RLIMIT_MEMLOCK to 256 for users" - elog "using PipeWire. Do it either manually or add yourself" - elog "to the 'audio' group:" - elog - elog " usermod -aG audio " - elog - - if ! use jack-sdk; then - elog "JACK emulation is incomplete and not all programs will work. PipeWire's" - elog "alternative libraries have been installed to a non-default location." - elog "To use them, put pw-jack before every JACK application." - elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" - elog "provider is still needed to compile the JACK applications themselves." - elog - fi - - if use systemd; then - elog "To use PipeWire for audio, the user units must be manually enabled:" - elog - elog " systemctl --user enable pipewire.socket pipewire-pulse.socket" - elog - elog "When switching from PulseAudio, do not forget to disable PulseAudio:" - elog - elog " systemctl --user disable pulseaudio.service pulseaudio.socket" - elog - elog "A reboot is recommended to avoid interferences from still running" - elog "PulseAudio daemon." - elog - elog "Both, new users and those upgrading, need to enable pipewire-media-session:" - elog - elog " systemctl --user enable pipewire-media-session.service" - elog - elog "NOTE: This is not required when using PipeWire only for screencasting." - elog - else - elog "This ebuild auto-enables PulseAudio replacement. Because of that, users" - elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable " - elog "autospawn'ing of the original daemon by setting:" - elog - elog " autospawn = no" - elog - elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" - elog - elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" - elog "${EROOT}/etc/pipewire/pipewire.conf by commenting out the relevant" - elog "command near the end of the file:" - elog - elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }" - elog - elog "NOTE:" - elog "Starting with PipeWire-0.3.30, package is no longer installing config" - elog "into ${EROOT}/etc/pipewire by default. In case you need to change" - elog "config, please start by copying default config from ${EROOT}/usr/share/pipewire" - elog "and just override sections you want to change." - fi - - elog "For latest tips and tricks, troubleshooting information and documentation" - elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire" - elog - - optfeature_header "The following can be installed for optional runtime features:" - optfeature "restricted realtime capabilities vai D-Bus" sys-auth/rtkit - # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here! - if use bluetooth; then - optfeature "better BT headset support (daemon startup required)" net-misc/ofono - #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd - fi -} diff --git a/media-video/pipewire/pipewire-0.3.32.ebuild b/media-video/pipewire/pipewire-0.3.32.ebuild new file mode 100644 index 000000000000..ca8a33f0f304 --- /dev/null +++ b/media-video/pipewire/pipewire-0.3.32.ebuild @@ -0,0 +1,272 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +PYTHON_COMPAT=( python3_{7..10} ) + +inherit meson-multilib optfeature python-any-r1 udev + +if [[ ${PV} == 9999 ]]; then + EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git" + inherit git-r3 +else + SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" +fi + +DESCRIPTION="Multimedia processing graphs" +HOMEPAGE="https://pipewire.org/" + +LICENSE="MIT LGPL-2.1+ GPL-2" +SLOT="0/0.3" +IUSE="bluetooth doc extra gstreamer jack-client jack-sdk pipewire-alsa systemd test v4l" + +# Once replacing system JACK libraries is possible, it's likely that +# jack-client IUSE will need blocking to avoid users accidentally +# configuring their systems to send PW sink output to the emulated +# JACK's sink - doing so is likely to yield no audio, cause a CPU +# cycles consuming loop (and may even cause GUI crashes)! + +REQUIRED_USE="jack-sdk? ( !jack-client )" + +RESTRICT="!test? ( test )" + +BDEPEND=" + app-doc/xmltoman + virtual/pkgconfig + ${PYTHON_DEPS} + doc? ( + app-doc/doxygen + media-gfx/graphviz + ) +" +RDEPEND=" + acct-group/audio + media-libs/alsa-lib + sys-apps/dbus[${MULTILIB_USEDEP}] + sys-libs/ncurses:=[unicode(+)] + virtual/libintl[${MULTILIB_USEDEP}] + virtual/libudev[${MULTILIB_USEDEP}] + bluetooth? ( + media-libs/fdk-aac + media-libs/libldac + media-libs/libopenaptx + media-libs/sbc + >=net-wireless/bluez-4.101:= + ) + extra? ( + >=media-libs/libsndfile-1.0.20 + ) + gstreamer? ( + >=dev-libs/glib-2.32.0:2 + >=media-libs/gstreamer-1.10.0:1.0 + media-libs/gst-plugins-base:1.0 + ) + jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] ) + jack-sdk? ( + !media-sound/jack-audio-connection-kit + !media-sound/jack2 + ) + pipewire-alsa? ( + >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}] + || ( + media-plugins/alsa-plugins[-pulseaudio] + !media-plugins/alsa-plugins + ) + ) + !pipewire-alsa? ( media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] ) + systemd? ( sys-apps/systemd ) + v4l? ( media-libs/libv4l ) +" + +DEPEND="${RDEPEND}" + +# Present RDEPEND that are currently always disabled due to the PW +# code using them being required to be disabled by Gentoo guidelines +# (i.e. developer binaries not meant for users) and unready code +# media-video/ffmpeg:= +# media-libs/libsdl2 +# >=media-libs/vulkan-loader-1.1.69 +# +# Ditto for DEPEND +# >=dev-util/vulkan-headers-1.1.69 + +DOCS=( {README,INSTALL}.md NEWS ) + +PATCHES=( + "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch + "${FILESDIR}"/${PN}-0.3.31-revert-openaptx-restriction.patch +) + +# limitsdfile related code taken from =sys-auth/realtime-base-0.1 +# with changes as necessary. +limitsdfile=40-${PN}.conf + +src_prepare() { + default + + if ! use systemd; then + # This can be applied non-conditionally but would make for a + # significantly worse user experience on systemd then. + eapply "${FILESDIR}"/${PN}-0.3.31-non-systemd-integration.patch + fi + + einfo "Generating ${limitsdfile}" + cat > ${limitsdfile} <<- EOF || die + # Start of ${limitsdfile} from ${P} + + @audio - memlock 256 + + # End of ${limitsdfile} from ${P} + EOF +} + +multilib_src_configure() { + local emesonargs=( + -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} + $(meson_native_use_feature doc docs) + $(meson_native_enabled examples) # Disabling this implicitly disables -Dmedia-session + $(meson_native_enabled media-session) + $(meson_native_enabled man) + $(meson_feature test tests) + -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests + $(meson_native_use_feature gstreamer) + $(meson_native_use_feature gstreamer gstreamer-device-provider) + $(meson_native_use_feature systemd) + -Dsystemd-system-service=disabled # Matches upstream + $(meson_native_use_feature systemd systemd-user-service) + $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph + -Dspa-plugins=enabled + -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this) + -Daudiomixer=enabled # Matches upstream + -Daudioconvert=enabled # Matches upstream + $(meson_native_use_feature bluetooth bluez5) + $(meson_native_use_feature bluetooth bluez5-backend-hsp-native) + $(meson_native_use_feature bluetooth bluez5-backend-hfp-native) + $(meson_native_use_feature bluetooth bluez5-backend-ofono) + $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd) + $(meson_native_use_feature bluetooth bluez5-codec-aac) + $(meson_native_use_feature bluetooth bluez5-codec-aptx) + $(meson_native_use_feature bluetooth bluez5-codec-ldac) + -Dcontrol=enabled # Matches upstream + -Daudiotestsrc=enabled # Matches upstream + -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020 + -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph + $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client + $(meson_feature jack-sdk jack-devel) + $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '') + -Dsupport=enabled # Miscellaneous/common plugins, such as null sink + -Devl=disabled # Matches upstream + -Dtest=disabled # fakesink and fakesource plugins + $(meson_native_use_feature v4l v4l2) + -Dlibcamera=disabled # libcamera is not in Portage tree + -Dvideoconvert=enabled # Matches upstream + -Dvideotestsrc=enabled # Matches upstream + -Dvolume=enabled # Matches upstream + -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream) + $(meson_native_use_feature extra pw-cat) + -Dudev=enabled + -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" + -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install) + $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat) + ) + + meson_src_configure +} + +multilib_src_install() { + # Our customs DOCS do not exist in multilib source directory + DOCS= meson_src_install +} + +multilib_src_install_all() { + einstalldocs + + insinto /etc/security/limits.d + doins ${limitsdfile} + + if use pipewire-alsa; then + dodir /etc/alsa/conf.d + # These will break if someone has /etc that is a symbol link to a subfolder! See #724222 + # And the current dosym8 -r implementation is likely affected by the same issue, too. + dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf + dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf + fi + + if ! use systemd; then + insinto /etc/xdg/autostart + newins "${FILESDIR}"/pipewire.desktop pipewire.desktop + + exeinto /usr/libexec + newexe "${FILESDIR}"/pipewire-launcher.sh pipewire-launcher + fi +} + +pkg_postinst() { + elog "It is recommended to raise RLIMIT_MEMLOCK to 256 for users" + elog "using PipeWire. Do it either manually or add yourself" + elog "to the 'audio' group:" + elog + elog " usermod -aG audio " + elog + + if ! use jack-sdk; then + elog "JACK emulation is incomplete and not all programs will work. PipeWire's" + elog "alternative libraries have been installed to a non-default location." + elog "To use them, put pw-jack before every JACK application." + elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack" + elog "provider is still needed to compile the JACK applications themselves." + elog + fi + + if use systemd; then + elog "To use PipeWire for audio, the user units must be manually enabled:" + elog + elog " systemctl --user enable pipewire.socket pipewire-pulse.socket" + elog + elog "When switching from PulseAudio, do not forget to disable PulseAudio:" + elog + elog " systemctl --user disable pulseaudio.service pulseaudio.socket" + elog + elog "A reboot is recommended to avoid interferences from still running" + elog "PulseAudio daemon." + elog + elog "Both, new users and those upgrading, need to enable pipewire-media-session:" + elog + elog " systemctl --user enable pipewire-media-session.service" + elog + else + elog "This ebuild auto-enables PulseAudio replacement. Because of that, users" + elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable " + elog "autospawn'ing of the original daemon by setting:" + elog + elog " autospawn = no" + elog + elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!" + elog + elog "Alternatively, if replacing PulseAudio daemon is not desired, edit" + elog "${EROOT}/etc/pipewire/pipewire.conf by commenting out the relevant" + elog "command near the end of the file:" + elog + elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }" + elog + elog "NOTE:" + elog "Starting with PipeWire-0.3.30, package is no longer installing config" + elog "into ${EROOT}/etc/pipewire by default. In case you need to change" + elog "config, please start by copying default config from ${EROOT}/usr/share/pipewire" + elog "and just override sections you want to change." + fi + + elog "For latest tips and tricks, troubleshooting information and documentation" + elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire" + elog + + optfeature_header "The following can be installed for optional runtime features:" + optfeature "restricted realtime capabilities vai D-Bus" sys-auth/rtkit + # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here! + if use bluetooth; then + optfeature "better BT headset support (daemon startup required)" net-misc/ofono + #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd + fi +} diff --git a/media-video/pipewire/pipewire-9999.ebuild b/media-video/pipewire/pipewire-9999.ebuild index 29da21cf2dc0..ca8a33f0f304 100644 --- a/media-video/pipewire/pipewire-9999.ebuild +++ b/media-video/pipewire/pipewire-9999.ebuild @@ -45,7 +45,7 @@ RDEPEND=" acct-group/audio media-libs/alsa-lib sys-apps/dbus[${MULTILIB_USEDEP}] - sys-libs/ncurses[unicode] + sys-libs/ncurses:=[unicode(+)] virtual/libintl[${MULTILIB_USEDEP}] virtual/libudev[${MULTILIB_USEDEP}] bluetooth? ( @@ -236,8 +236,6 @@ pkg_postinst() { elog elog " systemctl --user enable pipewire-media-session.service" elog - elog "NOTE: This is not required when using PipeWire only for screencasting." - elog else elog "This ebuild auto-enables PulseAudio replacement. Because of that, users" elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable " diff --git a/media-video/pitivi/Manifest b/media-video/pitivi/Manifest index a9a9a816ed29..61735101a725 100644 --- a/media-video/pitivi/Manifest +++ b/media-video/pitivi/Manifest @@ -2,5 +2,5 @@ AUX pitivi-0.999-metainfo.patch 734 BLAKE2B 6187b6d596c80e3ea00e5b79df6f9092f6be AUX pitivi-0.999-optional-tests.patch 638 BLAKE2B 7d43b76384250b091908369ed274d93d3dde9365df1a6fb31d30bcb35c824cd9dfae8802346ee3019625a83cf4fcf9a249cecae9f670594b1d7f9b73c42f4efd SHA512 d564ab01b702bf30486c3fa947fa62ef9021b00816f3d2759ace16590e3b4ea3d6423ef4f41acc78bf857c2d54a4402fd8da8a4a14762067b26f25396a216e1f AUX pitivi-0.999-python38.patch 1809 BLAKE2B fe95c44a409f0a629602d4656cfc90a02e2e676a40d3d3f232457e2a506225f25ab86d585f26ddbaf8551c5efc54e13f474b8b259dd05c2a8285c0b98b9249ba SHA512 f90523242fd8acaa4f0637b8facc5a528186c5dd371f67049b11b307bd6f06c693dd79bb305f2163bed4bd0140bd7fcee86fe7d4b2239be82a7dea47c6038026 DIST pitivi-0.999.tar.xz 12296928 BLAKE2B 16736fef4f2d16c02b64f8eba56f8c9ddb26f49742ee577da4e4c47077f8d5d71ce653dba366a041ba523153532728c5eb37cb2b76e11e9c51827efb990bd99d SHA512 663db84a00634f0e83f0c1dd80a4f3a6603a50826905adb24fdd567c6e8bb58e20de04c7753fa04a36692cdcf5bbbcc9a87327fd3b56ebb70caffcff13835fc8 -EBUILD pitivi-0.999-r4.ebuild 2736 BLAKE2B 981f15775c3c8e973e770cab8c0c6782d091bf437044dd2d71a74f0761bc3d0d1df3839b3cd613cbbec24665eba7b0b3ee7f1fe1746b95e6ea7d5fb3ea5cdf7f SHA512 0d9386f3f48bcbba95ab5f44807e4d6b02ee406e9a7c2f81985dbdfa95d7b998f186a8c68ebece39ef38de813769e62a6343d9c23ffc95f1d259988ae72529f8 +EBUILD pitivi-0.999-r4.ebuild 2694 BLAKE2B 08f404a53c6904808629d7c794fa6095695aff57135e318cc3d7ba900db27e8ee6e2874afb55b0ac90d2ed066622f0d53ba5a5fd161b90814202cdcded83d66d SHA512 de1911d77b966949d6e3d4c23085706dfe1f673f1dac7d0042a20eadb36ada5275068569f2c344e5cb1513dadbf601d76eb52c5d1b3e697e87605a8e737edc11 MISC metadata.xml 379 BLAKE2B a4f21a8cd6e5f4b09d1a89e426610108ab92ba52ef432d1780d100e76e43dda198cee09f105aec83994d4d1fa701be6c33a5981253b6c38b8ec888da08b5975a SHA512 30023299fba3c7c3743e24223d36366e7b59b01540a874ff432b8431ab29b240fdcd4ac4066b228af5421b009cfe4f67fdb69f7d1030c0fa409a4d545ffd43d1 diff --git a/media-video/pitivi/pitivi-0.999-r4.ebuild b/media-video/pitivi/pitivi-0.999-r4.ebuild index 7347dd1ee0a5..b7c61e6d521f 100644 --- a/media-video/pitivi/pitivi-0.999-r4.ebuild +++ b/media-video/pitivi/pitivi-0.999-r4.ebuild @@ -27,7 +27,7 @@ GST_VER="1.14.2" COMMON_DEPEND=" ${PYTHON_DEPS} $(python_gen_cond_dep ' - >=dev-python/pycairo-1.10[${PYTHON_MULTI_USEDEP}] + >=dev-python/pycairo-1.10[${PYTHON_USEDEP}] ') >=x11-libs/cairo-1.10 @@ -39,11 +39,11 @@ RDEPEND="${COMMON_DEPEND} >=dev-libs/gobject-introspection-1.34:= $(python_gen_cond_dep ' - dev-python/dbus-python[${PYTHON_MULTI_USEDEP}] - >=dev-python/gst-python-1.4:1.0[${PYTHON_MULTI_USEDEP}] - dev-python/matplotlib[${PYTHON_MULTI_USEDEP}] - dev-python/numpy[${PYTHON_MULTI_USEDEP}] - >=dev-python/pygobject-3.8:3[${PYTHON_MULTI_USEDEP}] + dev-python/dbus-python[${PYTHON_USEDEP}] + >=dev-python/gst-python-1.4:1.0[${PYTHON_USEDEP}] + dev-python/matplotlib[${PYTHON_USEDEP}] + dev-python/numpy[${PYTHON_USEDEP}] + >=dev-python/pygobject-3.8:3[${PYTHON_USEDEP}] ') gnome-base/librsvg:= @@ -73,7 +73,7 @@ BDEPEND=" virtual/pkgconfig test? ( $(python_gen_cond_dep ' - dev-python/nose2[${PYTHON_MULTI_USEDEP}] + dev-python/nose2[${PYTHON_USEDEP}] ') ) " diff --git a/media-video/totem/Manifest b/media-video/totem/Manifest index 36ac71652cab..e35ad69b0618 100644 --- a/media-video/totem/Manifest +++ b/media-video/totem/Manifest @@ -1,6 +1,6 @@ AUX 3.38.0-gst-inspect-sandbox.patch 1823 BLAKE2B 14be244c4bd9d96264ff776fb68381df5ea153fac41bf358e2253628bdb09733846a9331e6b129a1abd9186b967357549d6247d5ac021a37362a34206d8e17d8 SHA512 45f7602233b2f64debe1624442a2f6a21e0bf0b2cddf06b49dcdae7dcf0fc0ae6c3f16e5ec2603340df7cd89271501be70a31a0e0b0a737f85f667ac10c3ad53 DIST totem-3.38.0.tar.xz 2235672 BLAKE2B 31a69bce69316e06b6ba1b1c98bfc5b87cae0b30e682bb1b32bbac713fb2ff262084e76c19690eb78495969a67c2be484bc45adcd1b432a3de7a33c3dc04109c SHA512 231aca873bb53f23f81a7981177761d0bf7768baa845309b0dc0821db58377d692cf7e8a65135090dac14e856aa3e1dc0c1f11c55a7b25d694822019bfa9eecf DIST totem-3.38.1.tar.xz 2196156 BLAKE2B a9f5771d7406df9490b6eb0f9dc03ef449bee05d6ff038fce9adbac63692b5555de6ff36fe90b3b63cf4bc59739d91b23e57b3a03bf953594567e6a21060b509 SHA512 f33583b0890bfdd0dfff0722f73242b1d38605564a3055b587a30eae4c0ba51159c105ef577ab144792ca1994f385c2b8a9375a356b7cdf2b93bfeb6317f6040 -EBUILD totem-3.38.0.ebuild 2788 BLAKE2B a510d93af942297fe1dde5835caad6a2cd5dc04f90d7314f3d02dae0b64c3fb6fec45894034e0b958e3d6d6968852a0bae5b9b8609a9bd456d8c8b98e9d35fd2 SHA512 ddd5ea038d0e5158689ecf67998b32ad0989ea3f2fe69dc4b1bdc0a0fd6f43de7a21d2bfe65ce095e5678b576bc35d1c630ad3c69801f11d32f949e56011b944 -EBUILD totem-3.38.1.ebuild 2789 BLAKE2B 4975efdc14dc1b63768362b46e38c786e31f5416d6141e79e1dc3a78ddf32086bb293927404ca528ff53b98480c7fd51f9a630d5bbd7ecdd7af8056fc9080cd3 SHA512 de28952209a464fb3fd7574c119c8133dd41ed7b5e883e2c9ef650577f4de40acd768ce5c6afcc42c2b252776ce4863ce082bd597cd76e2f79e5c444ea912e03 +EBUILD totem-3.38.0.ebuild 2776 BLAKE2B c0fc60233bebdde5825fbb4be16138f5ffaee529f23b992fa44652d3d325c7fc7217137bf61b350982a0f8ec631b55de5e252095bc02e8db37dc0798cad29426 SHA512 f34e74f68fe799af78f19d4c9f66a5b6a0d7b354a8239f86230f0ccc5d4370dd866a251b236646824a214481419ab88022968afc95f2c62899121bd85819fc03 +EBUILD totem-3.38.1.ebuild 2777 BLAKE2B 682bad8bd9eac4408b33e285306d137be365625b7621bc60f13ac57d994293e79fb818dc47548046564f523b9998e33a5d414e6f94bbd9114670b9e74e0c8760 SHA512 31a9d00ea794d3dac208df22d0c5ae4a1fb92db79c063e122f4d84c474c141fd0adab40e5b7c43b8bf11fa37349edc0b6781a13c45401015f9c6f815ba86fe79 MISC metadata.xml 1017 BLAKE2B de40f52bc4cc3c838b473d4c444e9c41673cd3c2925f17508d03f5130fe237784d4ee4d02581718c06ccd30fa204d27ba7691fb8046009a540c00f3535f6909d SHA512 9b89a8eaa90ad2f55abf7a53bfba7c065be999233a7bbfe243f4514ca1c3ec5a3934f23ea8ecd6b2674ac82d5e55e2f3e25e3869a0cec019485c9bb99549b625 diff --git a/media-video/totem/totem-3.38.0.ebuild b/media-video/totem/totem-3.38.0.ebuild index 8370cbd704d1..bc6d6ecbc9ee 100644 --- a/media-video/totem/totem-3.38.0.ebuild +++ b/media-video/totem/totem-3.38.0.ebuild @@ -2,7 +2,7 @@ # Distributed under the terms of the GNU General Public License v2 EAPI=7 -PYTHON_COMPAT=( python3_{7..9} ) +PYTHON_COMPAT=( python3_{8..9} ) PYTHON_REQ_USE="threads(+)" inherit gnome.org gnome2-utils meson virtualx xdg python-single-r1 @@ -42,7 +42,7 @@ DEPEND=" python? ( ${PYTHON_DEPS} $(python_gen_cond_dep ' - >=dev-python/pygobject-2.90.3:3[${PYTHON_MULTI_USEDEP}] + >=dev-python/pygobject-2.90.3:3[${PYTHON_USEDEP}] ') ) " @@ -55,7 +55,7 @@ RDEPEND="${DEPEND} x11-libs/pango[introspection] >=dev-libs/libpeas-1.1.0[python,${PYTHON_SINGLE_USEDEP}] $(python_gen_cond_dep ' - dev-python/dbus-python[${PYTHON_MULTI_USEDEP}] + dev-python/dbus-python[${PYTHON_USEDEP}] ') ) " diff --git a/media-video/totem/totem-3.38.1.ebuild b/media-video/totem/totem-3.38.1.ebuild index 6ff2876c06d0..4f5cac066acb 100644 --- a/media-video/totem/totem-3.38.1.ebuild +++ b/media-video/totem/totem-3.38.1.ebuild @@ -2,7 +2,7 @@ # Distributed under the terms of the GNU General Public License v2 EAPI=7 -PYTHON_COMPAT=( python3_{7..9} ) +PYTHON_COMPAT=( python3_{8..9} ) PYTHON_REQ_USE="threads(+)" inherit gnome.org gnome2-utils meson virtualx xdg python-single-r1 @@ -42,7 +42,7 @@ DEPEND=" python? ( ${PYTHON_DEPS} $(python_gen_cond_dep ' - >=dev-python/pygobject-2.90.3:3[${PYTHON_MULTI_USEDEP}] + >=dev-python/pygobject-2.90.3:3[${PYTHON_USEDEP}] ') ) " @@ -55,7 +55,7 @@ RDEPEND="${DEPEND} x11-libs/pango[introspection] >=dev-libs/libpeas-1.1.0[python,${PYTHON_SINGLE_USEDEP}] $(python_gen_cond_dep ' - dev-python/dbus-python[${PYTHON_MULTI_USEDEP}] + dev-python/dbus-python[${PYTHON_USEDEP}] ') ) " diff --git a/media-video/vlc/Manifest b/media-video/vlc/Manifest index 145f59e97a0a..29b0283ae910 100644 --- a/media-video/vlc/Manifest +++ b/media-video/vlc/Manifest @@ -12,11 +12,11 @@ AUX vlc-9999-libupnp-slot-1.8.patch 763 BLAKE2B 6bc8cf46f029db27d6d30d96e871d3bc DIST vlc-3.0-3.0.12.1.tar.gz 34233801 BLAKE2B 0bc571d8f3f8aa40eee93fe8ab13bd1f37e288372d46b13998986899d03bf327b300a98ec5736bb9fe7bb58aae65c1d469786a4dfdb80f4cf8b5bbbb250ee45d SHA512 05b079dcfd4a21cdae7bb19e9d71f2fad33ca846852683c5d2ca6d45f779749ead420d5211b4acce76971d7ec2265d0d07f970f35f647dd446e337dc31aa0ec1 DIST vlc-3.0-3.0.14.tar.gz 34355555 BLAKE2B e8182229da1fe4f73b640fad8005ec3fc49da70f289bd32c33fcec51bf81d393b067a795626bad57c87499e8de181ac3ce159e572431e794586753c4a7c32597 SHA512 6d366c0f17a8bda7f588ab1818d985bccd076dd821bc83dd7d06827d463931e56cb06ca934622ee2cda4a76b0fbe265a66e4566e9307abc768b76174020f0150 DIST vlc-3.0.16.tar.xz 26439328 BLAKE2B 1971b88f3faf6d3b019c3fcb83108242bb218f1472dc3c1763a8eaa996befcb36a685a75beb8c2513e3365e77a9df6623d194ef511b5271e3114f2f46588e1ff SHA512 35cdf191071224d0cf1b5a83c00773ff87b9e5bfcf0f5523f7edd53f75b23eda6b27bb49ffa97d69a1d176b8fe4786d959aeeb00d4380beab71c9f7e6b7c7298 -EBUILD vlc-3.0.12.1-r101.ebuild 13750 BLAKE2B dafda1492a0556f1c3814e0288089f173614498500d9261ba2aebdf2d44ca798306ac0e711c6d6c13430421f7fd82336a84cbf05130929006b7028ac9d043fb7 SHA512 5ffea7c509a35063cdd962972d144662982263d6590aa4b02490e7b573ad3532d1aea5e1053393019b320fec69bda3f67c32676084a9d555d0863dcc18a965e9 -EBUILD vlc-3.0.14-r3.ebuild 13731 BLAKE2B 8b940703166dca421cbdb8c8df71833944a4c5fec6fa8169a90e2276ac58cff96518bb6eab78bf182491667b1fd9fe99897f05c7f8ae3e0d33c48da802f35df9 SHA512 233aa75c5235735b7bccd4fcbd69495c44e9a83a10ebefbdaee564f6d74c8b48cd210f6f88c84f2dff6c9655b9738f552d12e175f329bcf6ffe1e8daedfeb456 -EBUILD vlc-3.0.14-r4.ebuild 13805 BLAKE2B 7e183db7fec8c91a296b82cbd50ebd4aeb00df76e7ea34d714d20854570f8b4f9effaf513a48db5dfeb9fd625214665339556957b244b86349f0ef3313e196f5 SHA512 df42ae8252ce8fbdf82cd44c8a8832f58fb3c45b6e14c68c3d7089b4da8f63257d3e4d5ece8f8d4db82f71d740bafa23f08cea45fe4b103214b1eb3c0ee194b7 -EBUILD vlc-3.0.16-r3.ebuild 13796 BLAKE2B 7fdd61825face14cd3eaf2472f3041c0a43912210df95d89526b241e2d03a702e6301a504875ee1d69c4dac33d39082964a7c73fa192d0184821dee08390e51d SHA512 3ababa58b946caa024486c07403f16437141d204d296a28880cc85df226d616cd203030953325a409e90914e5e1ea01ad399bd194ace4d2f0533f9a0c7c8734b -EBUILD vlc-3.0.16-r4.ebuild 13865 BLAKE2B 21f555ed8794adeadee592006f27cdd8b93f68fa304be1ce44ab5a7aab44145a3d384ce8387b9aa410e12b8a0b5f62aba10d136940bd855721a10e48333f7788 SHA512 be174077080f84f5d5ea02bb993acc72c204684a3432a54e7c828c6c05a5d1e0e8b0894436ee94916b4c34f411e5ff29159827701e82e3a83a3f602afb323f3d -EBUILD vlc-3.0.9999.ebuild 13473 BLAKE2B 886d92e5c06430a20669972d7365022a24a4bce2b269695ad19ecbefaa6bc688becb8dac11b7cf18be82889a2eab8741fd70b9626980ae91a3f4244a0d1a60fb SHA512 3fff63891cd40b4052361033d13812ba20114e89fcd3f4d124a93ef4d73a6d727ed6305e3d522c48e1a6390ed092f0e76286fd46d641f8e68a7bf72431b98c16 -EBUILD vlc-9999.ebuild 13494 BLAKE2B e1cd64d270f7fa817cf080094216e037561b117b7e6944d2a90bb4311547b0851425a8aa98543b5f4d03c13f54cbedb5d56338c94c389d65b68e2837ccadb364 SHA512 de2bdff689ae0976d3fc1a2d3895d6bfeaad37626f5eb2c4499df1334dee68673b456077e32a1e4c88b68b95d3bb5935c508e6fe1ce0c3566670e6b2cce2c781 +EBUILD vlc-3.0.12.1-r102.ebuild 13752 BLAKE2B 74446fb058d6ed5d09be30495edaeeded8b23fb421602712d594165736a13c817c87497ad74ea48bc856802de5233bdbb741eb50e76af4027c99307fe881eae0 SHA512 3d07f4802b011ab0f7a9698331fe20e59177a56653500e853ff8971f0ea0e57ab7fae19996b70e9afdb013fe15476d5f93e700fdfe3c1c381b477bc9e9665a94 +EBUILD vlc-3.0.14-r5.ebuild 13733 BLAKE2B 3143974d5b761a9feb0715ce5b7d6a7b855a5812210f6d79d025c580a136e77efbf7a5242e02c8fc0a39643722d758834ad09888f4de10952e052295416ff9a9 SHA512 317d443c824233441cf41d5917c85a9bac3fae158ca4dbda3bdf10e1b1cf4fef119c7b6f1c1934df026ff4c8c546aa5bec88829dc3006fec26f95c22bbe60b1b +EBUILD vlc-3.0.14-r6.ebuild 13807 BLAKE2B 08cb1ee444cc1287ffba97c5fd595135c4a77f6195c65cf8fffeef37b98bad5500d151378dbe56accb18b9a804b29e046b5ad5dbf5abec73907e5aebf09fbc3b SHA512 4e4bf7ccbb09c16db596fe8ff1539d71b3be9e285339c0b61382bb82d01e3631cd48ceb1e3af65c91d733662853e94688e2039302d741b3a87606e5e5c7a2f00 +EBUILD vlc-3.0.16-r5.ebuild 13798 BLAKE2B 4edba2ab308353f279529117a8dae90e1ce1f1a19321ad92558cc36ffb167b2445048bce0c878724c575827fe635b745401a7ba6b15fc67fffae966f3db614b7 SHA512 edae0b3ebb10a164566cb57234fccd70dee408c720c9dde04166dd10670ecb82304764cb8b355625035d80c515a657e51648669ec0f501dc0c62a162fd70b1c6 +EBUILD vlc-3.0.16-r6.ebuild 13867 BLAKE2B 775a9d4d3e53d03328e1eb63ba3dc1cf51faed7f70789b6382e68a415ff49b9a3b2cf522d768c8a16eabc293983d27568831c11e7bdaf69f77622ba47a58e581 SHA512 80d98b3b3359224a4f81b0b3c15ab05abf1533d6dec069e81e81132354b267e72b0da0f5281d25065c1ff251b64bef36ecf358168f5026e3adcf2fdb370cabb6 +EBUILD vlc-3.0.9999.ebuild 13475 BLAKE2B 528764a390e3e0e859efb50a2e9db5366ba87a86f01483787a4e3fe2fdb36de18448a95746e58ba5705793b53a4534dd3184efcf24e1576de9f57b7e0fff59e4 SHA512 90f884b1419bb717174dd386c5dc3b99dea13f496c49ebaa89970b5910b730852c109d3942a944531449c1557c6a1ab72a0a7e67c550e50a3ed21af09b561bb0 +EBUILD vlc-9999.ebuild 13496 BLAKE2B 46b7e92d8a69a19156d259e9739871f4dc10c3dc2e4e0de0f427be000ed069e7af0959f30cb5346b03c09468289cf606261db3675a07ac92bf39bb12347f688b SHA512 57ad9586d3b9f65cd78738a0e7c8716371525112e8dbdc0533ea3bb965cc31f05bf5da1097a331ff0c9e0e323f7e330cdaf875d4d952e85bd03a5f35f857fa92 MISC metadata.xml 4911 BLAKE2B 689cbaf21ee9adbae82ea670b575286cecfe49865aaff92a92d1cb78305c26306a72d9b010e052955c79e0c39723f03301f7a858de198948759ec228e90e7baf SHA512 62442acac34bf27c40e5cf41313c2f9ed3efd54cfb9c0dc42ca0ba3b37cb8e23690e88f04a3629bbe62b774c2bc6740a33f7336d371589982c8b2578050f13d1 diff --git a/media-video/vlc/vlc-3.0.12.1-r101.ebuild b/media-video/vlc/vlc-3.0.12.1-r101.ebuild deleted file mode 100644 index 5f2d00639f10..000000000000 --- a/media-video/vlc/vlc-3.0.12.1-r101.ebuild +++ /dev/null @@ -1,513 +0,0 @@ -# Copyright 2000-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -LUA_COMPAT=( lua5-{1..2} ) - -MY_PV="${PV/_/-}" -MY_PV="${MY_PV/-beta/-test}" -MY_P="${PN}-${MY_PV}" -if [[ ${PV} = *9999 ]] ; then - if [[ ${PV%.9999} != ${PV} ]] ; then - EGIT_REPO_URI="https://git.videolan.org/git/vlc/vlc-${PV%.9999}.git" - else - EGIT_REPO_URI="https://git.videolan.org/git/vlc.git" - fi - inherit git-r3 -else - SRC_URI="https://code.videolan.org/videolan/vlc-$(ver_cut 1-2)/-/archive/${PV}/vlc-$(ver_cut 1-2)-${PV}.tar.gz" - S="${WORKDIR}/${PN}-$(ver_cut 1-2)-${PV}" - #if [[ ${MY_P} = ${P} ]] ; then - # SRC_URI="https://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.xz" - #else - # SRC_URI="https://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz" - #fi - KEYWORDS="amd64 ~arm arm64 ppc ppc64 -sparc x86" -fi - -inherit autotools flag-o-matic lua-single toolchain-funcs virtualx xdg - -DESCRIPTION="Media player and framework with support for most multimedia files and streaming" -HOMEPAGE="https://www.videolan.org/vlc/" - -LICENSE="LGPL-2.1 GPL-2" -SLOT="0/5-9" # vlc - vlccore - -IUSE="a52 alsa aom archive aribsub bidi bluray cddb chromaprint chromecast - dav1d dbus dc1394 debug directx dts +dvbpsi dvd +encode faad fdk +ffmpeg flac - fluidsynth fontconfig +gcrypt gme gnome-keyring gstreamer ieee1394 jack jpeg kate - libass libcaca libnotify +libsamplerate libtar libtiger linsys lirc - live lua macosx-notifications mad matroska modplug mp3 mpeg mtp musepack ncurses - nfs ogg omxil optimisememory opus png projectm pulseaudio +qt5 rdp - run-as-root samba sdl-image sftp shout sid skins soxr speex srt ssl svg taglib - theora tremor truetype twolame udev upnp vaapi v4l vdpau vnc vorbis vpx wayland +X - x264 x265 xml zeroconf zvbi cpu_flags_arm_neon cpu_flags_ppc_altivec cpu_flags_x86_mmx - cpu_flags_x86_sse -" -REQUIRED_USE=" - chromecast? ( encode ) - directx? ( ffmpeg ) - fontconfig? ( truetype ) - libcaca? ( X ) - libtar? ( skins ) - libtiger? ( kate ) - lua? ( ${LUA_REQUIRED_USE} ) - skins? ( qt5 truetype X xml ) - ssl? ( gcrypt ) - vaapi? ( ffmpeg X ) - vdpau? ( ffmpeg X ) -" -BDEPEND=" - >=sys-devel/gettext-0.19.8 - virtual/pkgconfig - lua? ( ${LUA_DEPS} ) - amd64? ( dev-lang/yasm ) - x86? ( dev-lang/yasm ) -" -RDEPEND=" - net-dns/libidn:= - sys-libs/zlib[minizip] - virtual/libintl - virtual/opengl - a52? ( media-libs/a52dec ) - alsa? ( media-libs/alsa-lib ) - aom? ( media-libs/libaom:= ) - archive? ( app-arch/libarchive:= ) - aribsub? ( media-libs/aribb24 ) - bidi? ( - dev-libs/fribidi - media-libs/freetype:2[harfbuzz] - media-libs/harfbuzz - virtual/ttf-fonts - ) - bluray? ( media-libs/libbluray:= ) - cddb? ( media-libs/libcddb ) - chromaprint? ( media-libs/chromaprint:= ) - chromecast? ( - >=dev-libs/protobuf-2.5.0:= - >=net-libs/libmicrodns-0.1.2:= - ) - dav1d? ( media-libs/dav1d:= ) - dbus? ( sys-apps/dbus ) - dc1394? ( - media-libs/libdc1394:2 - sys-libs/libraw1394 - ) - dts? ( media-libs/libdca ) - dvbpsi? ( >=media-libs/libdvbpsi-1.2.0:= ) - dvd? ( - >=media-libs/libdvdnav-4.9:0= - >=media-libs/libdvdread-4.9:0= - ) - faad? ( media-libs/faad2 ) - fdk? ( media-libs/fdk-aac:= ) - ffmpeg? ( >=media-video/ffmpeg-3.1.3:0=[postproc,vaapi?,vdpau?] ) - flac? ( - media-libs/flac - media-libs/libogg - ) - fluidsynth? ( media-sound/fluidsynth:= ) - fontconfig? ( media-libs/fontconfig:1.0 ) - gcrypt? ( - dev-libs/libgcrypt:0= - dev-libs/libgpg-error - ) - gme? ( media-libs/game-music-emu ) - gnome-keyring? ( app-crypt/libsecret ) - gstreamer? ( >=media-libs/gst-plugins-base-1.4.5:1.0 ) - ieee1394? ( - sys-libs/libavc1394 - sys-libs/libraw1394 - ) - jack? ( virtual/jack ) - jpeg? ( virtual/jpeg:0 ) - kate? ( media-libs/libkate ) - libass? ( - media-libs/fontconfig:1.0 - media-libs/libass:= - ) - libcaca? ( media-libs/libcaca ) - libnotify? ( - dev-libs/glib:2 - x11-libs/gdk-pixbuf:2 - x11-libs/gtk+:3 - x11-libs/libnotify - ) - libsamplerate? ( media-libs/libsamplerate ) - libtar? ( dev-libs/libtar ) - libtiger? ( media-libs/libtiger ) - linsys? ( media-libs/zvbi ) - lirc? ( app-misc/lirc ) - live? ( media-plugins/live:= ) - lua? ( ${LUA_DEPS} ) - mad? ( media-libs/libmad ) - matroska? ( - >=dev-libs/libebml-1.3.6:= - media-libs/libmatroska:= - ) - modplug? ( >=media-libs/libmodplug-0.8.9.0 ) - mp3? ( media-sound/mpg123 ) - mpeg? ( media-libs/libmpeg2 ) - mtp? ( media-libs/libmtp:= ) - musepack? ( media-sound/musepack-tools ) - ncurses? ( sys-libs/ncurses:0=[unicode] ) - nfs? ( >=net-fs/libnfs-0.10.0:= ) - ogg? ( media-libs/libogg ) - opus? ( >=media-libs/opus-1.0.3 ) - png? ( media-libs/libpng:0= ) - projectm? ( - media-fonts/dejavu - media-libs/libprojectm:0= - ) - pulseaudio? ( media-sound/pulseaudio ) - qt5? ( - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtsvg:5 - dev-qt/qtwidgets:5 - X? ( - dev-qt/qtx11extras:5 - x11-libs/libX11 - ) - ) - rdp? ( >=net-misc/freerdp-2.0.0_rc0:=[client(+)] ) - samba? ( >=net-fs/samba-4.0.0:0[client,-debug(-)] ) - sdl-image? ( media-libs/sdl-image ) - sftp? ( net-libs/libssh2 ) - shout? ( media-libs/libshout ) - sid? ( media-libs/libsidplay:2 ) - skins? ( - x11-libs/libXext - x11-libs/libXinerama - x11-libs/libXpm - ) - soxr? ( >=media-libs/soxr-0.1.2 ) - speex? ( - >=media-libs/speex-1.2.0 - media-libs/speexdsp - ) - srt? ( >=net-libs/srt-1.4.2:= ) - ssl? ( net-libs/gnutls:= ) - svg? ( - gnome-base/librsvg:2 - x11-libs/cairo - ) - taglib? ( >=media-libs/taglib-1.9 ) - theora? ( media-libs/libtheora ) - tremor? ( media-libs/tremor ) - truetype? ( - media-libs/freetype:2 - virtual/ttf-fonts - !fontconfig? ( media-fonts/dejavu ) - ) - twolame? ( media-sound/twolame ) - udev? ( virtual/udev ) - upnp? ( net-libs/libupnp:=[ipv6] ) - v4l? ( media-libs/libv4l:= ) - vaapi? ( x11-libs/libva:=[drm,wayland?,X?] ) - vdpau? ( x11-libs/libvdpau ) - vnc? ( net-libs/libvncserver ) - vorbis? ( media-libs/libvorbis ) - vpx? ( media-libs/libvpx:= ) - wayland? ( - >=dev-libs/wayland-1.15 - dev-libs/wayland-protocols - ) - X? ( - x11-libs/libX11 - x11-libs/libxcb - x11-libs/xcb-util - x11-libs/xcb-util-keysyms - ) - x264? ( >=media-libs/x264-0.0.20190214:= ) - x265? ( media-libs/x265:= ) - xml? ( dev-libs/libxml2:2 ) - zeroconf? ( net-dns/avahi[dbus] ) - zvbi? ( media-libs/zvbi ) -" -DEPEND="${RDEPEND} - X? ( x11-base/xorg-proto ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch # build system - "${FILESDIR}"/${PN}-2.2.8-freerdp-2.patch # bug 590164 - "${FILESDIR}"/${PN}-3.0.6-fdk-aac-2.0.0.patch # bug 672290 - "${FILESDIR}"/${PN}-3.0.11.1-configure_lua_version.patch - "${FILESDIR}"/${PN}-3.0.11.1-srt-1.4.2.patch # bug 758062 - "${FILESDIR}"/${PN}-3.0.12.1-limits-p{1,2}.patch # bug 767796 -) - -DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt ) - -pkg_setup() { - if use lua; then - lua-single_pkg_setup - fi -} - -src_prepare() { - xdg_src_prepare # bug 608256 - - has_version 'net-libs/libupnp:1.8' && \ - eapply "${FILESDIR}"/${PN}-2.2.8-libupnp-slot-1.8.patch - - # Bootstrap when we are on a git checkout. - if [[ ${PV} = *9999 ]] ; then - ./bootstrap - fi - - # Make it build with libtool 1.5 - #rm m4/lt* m4/libtool.m4 || die - - # We are not in a real git checkout due to the absence of a .git directory. - touch src/revision.txt || die - - # Don't use --started-from-file when not using dbus. - if ! use dbus ; then - sed -i 's/ --started-from-file//' share/vlc.desktop.in || die - fi - - # Disable running of vlc-cache-gen, we do that in pkg_postinst - sed -e "/test.*build.*host/s/\$(host)/nothanks/" \ - -i Makefile.am -i bin/Makefile.am || die "Failed to disable vlc-cache-gen" - - # Fix gettext version mismatch errors. - sed -i -e s/GETTEXT_VERSION/GETTEXT_REQUIRE_VERSION/ configure.ac || die - - eautoreconf - - # Disable automatic running of tests. - find . -name 'Makefile.in' -exec sed -i 's/\(..*\)check-TESTS/\1/' {} \; || die -} - -src_configure() { - local -x BUILDCC=$(tc-getBUILD_CC) - - local myeconfargs=( - --disable-aa - --disable-optimizations - --disable-rpath - --disable-update-check - --enable-fast-install - --enable-screen - --enable-vcd - --enable-vlc - $(use_enable a52) - $(use_enable alsa) - $(use_enable aom) - $(use_enable archive) - $(use_enable aribsub) - $(use_enable bidi fribidi) - $(use_enable bidi harfbuzz) - $(use_enable bluray) - $(use_enable cddb libcddb) - $(use_enable chromaprint) - $(use_enable chromecast) - $(use_enable chromecast microdns) - $(use_enable cpu_flags_arm_neon neon) - $(use_enable cpu_flags_ppc_altivec altivec) - $(use_enable cpu_flags_x86_mmx mmx) - $(use_enable cpu_flags_x86_sse sse) - $(use_enable dav1d) - $(use_enable dbus) - $(use_enable dbus kwallet) - $(use_enable dc1394) - $(use_enable debug) - $(use_enable directx) - $(use_enable directx d3d11va) - $(use_enable directx dxva2) - $(use_enable dts dca) - $(use_enable dvbpsi) - $(use_enable dvd dvdnav) - $(use_enable dvd dvdread) - $(use_enable encode sout) - $(use_enable encode vlm) - $(use_enable faad) - $(use_enable fdk fdkaac) - $(use_enable ffmpeg avcodec) - $(use_enable ffmpeg avformat) - $(use_enable ffmpeg postproc) - $(use_enable ffmpeg swscale) - $(use_enable flac) - $(use_enable fluidsynth) - $(use_enable fontconfig) - $(use_enable gcrypt libgcrypt) - $(use_enable gme) - $(use_enable gnome-keyring secret) - $(use_enable gstreamer gst-decode) - $(use_enable ieee1394 dv1394) - $(use_enable jack) - $(use_enable jpeg) - $(use_enable kate) - $(use_enable libass) - $(use_enable libcaca caca) - $(use_enable libnotify notify) - $(use_enable libsamplerate samplerate) - $(use_enable libtar) - $(use_enable libtiger tiger) - $(use_enable linsys) - $(use_enable lirc) - $(use_enable live live555) - $(use_enable lua) - $(use_enable macosx-notifications osx-notifications) - $(use_enable mad) - $(use_enable matroska) - $(use_enable modplug mod) - $(use_enable mp3 mpg123) - $(use_enable mpeg libmpeg2) - $(use_enable mtp) - $(use_enable musepack mpc) - $(use_enable ncurses) - $(use_enable nfs) - $(use_enable ogg) - $(use_enable omxil) - $(use_enable omxil omxil-vout) - $(use_enable optimisememory optimize-memory) - $(use_enable opus) - $(use_enable png) - $(use_enable projectm) - $(use_enable pulseaudio pulse) - $(use_enable qt5 qt) - $(use_enable rdp freerdp) - $(use_enable run-as-root) - $(use_enable samba smbclient) - $(use_enable sdl-image) - $(use_enable sftp) - $(use_enable shout) - $(use_enable sid) - $(use_enable skins skins2) - $(use_enable soxr) - $(use_enable speex) - $(use_enable srt) - $(use_enable ssl gnutls) - $(use_enable svg) - $(use_enable svg svgdec) - $(use_enable taglib) - $(use_enable theora) - $(use_enable tremor) - $(use_enable twolame) - $(use_enable udev) - $(use_enable upnp) - $(use_enable v4l v4l2) - $(use_enable vaapi libva) - $(use_enable vdpau) - $(use_enable vnc) - $(use_enable vorbis) - $(use_enable vpx) - $(use_enable wayland) - $(use_with X x) - $(use_enable X xcb) - $(use_enable X xvideo) - $(use_enable x264) - $(use_enable x264 x26410b) - $(use_enable x265) - $(use_enable xml libxml2) - $(use_enable zeroconf avahi) - $(use_enable zvbi) - $(use_enable !zvbi telx) - --with-kde-solid="${EPREFIX}"/usr/share/solid/actions - --disable-asdcp - --disable-coverage - --disable-cprof - --disable-crystalhd - --disable-decklink - --disable-gles2 - --disable-goom - --disable-kai - --disable-kva - --disable-libplacebo - --disable-maintainer-mode - --disable-merge-ffmpeg - --disable-mfx - --disable-mmal - --disable-opencv - --disable-opensles - --disable-oss - --disable-rpi-omxil - --disable-schroedinger - --disable-shine - --disable-sndio - --disable-spatialaudio - --disable-vsxu - --disable-wasapi - --disable-wma-fixed - ) - # ^ We don't have these disabled libraries in the Portage tree yet. - - # Compatibility fix for Samba 4. - use samba && append-cppflags "-I/usr/include/samba-4.0" - - if use x86; then - # We need to disable -fstack-check if use >=gcc 4.8.0. bug #499996 - append-cflags $(test-flags-CC -fno-stack-check) - # Bug 569774 - replace-flags -Os -O2 - fi - - # VLC now requires C++11 after commit 4b1c9dcdda0bbff801e47505ff9dfd3f274eb0d8 - append-cxxflags -std=c++11 - - if use omxil; then - # bug #723006 - # https://trac.videolan.org/vlc/ticket/24617 - append-cflags -fcommon - fi - - # FIXME: Needs libresid-builder from libsidplay:2 which is in another directory... - append-ldflags "-L/usr/$(get_libdir)/sidplay/builders/" - - if use truetype || use bidi; then - myeconfargs+=( --enable-freetype ) - else - myeconfargs+=( --disable-freetype ) - fi - - if use truetype || use projectm; then - local dejavu="${EPREFIX}/usr/share/fonts/dejavu/" - myeconfargs+=( - --with-default-font=${dejavu}/DejaVuSans.ttf - --with-default-font-family=Sans - --with-default-monospace-font=${dejavu}/DejaVuSansMono.ttf - --with-default-monospace-font-family=Monospace - ) - fi - - econf "${myeconfargs[@]}" - - # _FORTIFY_SOURCE is set to 2 in config.h, which is also the default value on Gentoo. - # Other values may break the build (bug 523144), so definition should not be removed. - # To prevent redefinition warnings, we undefine _FORTIFY_SOURCE at the start of config.h - sed -i '1i#undef _FORTIFY_SOURCE' config.h || die -} - -src_test() { - virtx emake check-TESTS -} - -src_install() { - default - find "${ED}" -name '*.la' -delete || die -} - -pkg_postinst() { - if [[ -z "${ROOT}" ]] && [[ -x "${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen" ]] ; then - einfo "Running ${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen on ${EROOT}/usr/$(get_libdir)/vlc/plugins/" - "${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen" "${EROOT}/usr/$(get_libdir)/vlc/plugins/" - else - ewarn "We cannot run vlc-cache-gen (most likely ROOT != /)" - ewarn "Please run ${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen manually" - ewarn "If you do not do it, vlc will take a long time to load." - fi - - xdg_pkg_postinst -} - -pkg_postrm() { - if [[ -e "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat ]]; then - rm "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat || die "Failed to rm plugins.dat" - fi - - xdg_pkg_postrm -} diff --git a/media-video/vlc/vlc-3.0.12.1-r102.ebuild b/media-video/vlc/vlc-3.0.12.1-r102.ebuild new file mode 100644 index 000000000000..95d8346aece2 --- /dev/null +++ b/media-video/vlc/vlc-3.0.12.1-r102.ebuild @@ -0,0 +1,513 @@ +# Copyright 2000-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +LUA_COMPAT=( lua5-{1..2} ) + +MY_PV="${PV/_/-}" +MY_PV="${MY_PV/-beta/-test}" +MY_P="${PN}-${MY_PV}" +if [[ ${PV} = *9999 ]] ; then + if [[ ${PV%.9999} != ${PV} ]] ; then + EGIT_REPO_URI="https://git.videolan.org/git/vlc/vlc-${PV%.9999}.git" + else + EGIT_REPO_URI="https://git.videolan.org/git/vlc.git" + fi + inherit git-r3 +else + SRC_URI="https://code.videolan.org/videolan/vlc-$(ver_cut 1-2)/-/archive/${PV}/vlc-$(ver_cut 1-2)-${PV}.tar.gz" + S="${WORKDIR}/${PN}-$(ver_cut 1-2)-${PV}" + #if [[ ${MY_P} = ${P} ]] ; then + # SRC_URI="https://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.xz" + #else + # SRC_URI="https://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz" + #fi + KEYWORDS="amd64 ~arm arm64 ppc ppc64 -sparc x86" +fi + +inherit autotools flag-o-matic lua-single toolchain-funcs virtualx xdg + +DESCRIPTION="Media player and framework with support for most multimedia files and streaming" +HOMEPAGE="https://www.videolan.org/vlc/" + +LICENSE="LGPL-2.1 GPL-2" +SLOT="0/5-9" # vlc - vlccore + +IUSE="a52 alsa aom archive aribsub bidi bluray cddb chromaprint chromecast + dav1d dbus dc1394 debug directx dts +dvbpsi dvd +encode faad fdk +ffmpeg flac + fluidsynth fontconfig +gcrypt gme gnome-keyring gstreamer ieee1394 jack jpeg kate + libass libcaca libnotify +libsamplerate libtar libtiger linsys lirc + live lua macosx-notifications mad matroska modplug mp3 mpeg mtp musepack ncurses + nfs ogg omxil optimisememory opus png projectm pulseaudio +qt5 rdp + run-as-root samba sdl-image sftp shout sid skins soxr speex srt ssl svg taglib + theora tremor truetype twolame udev upnp vaapi v4l vdpau vnc vorbis vpx wayland +X + x264 x265 xml zeroconf zvbi cpu_flags_arm_neon cpu_flags_ppc_altivec cpu_flags_x86_mmx + cpu_flags_x86_sse +" +REQUIRED_USE=" + chromecast? ( encode ) + directx? ( ffmpeg ) + fontconfig? ( truetype ) + libcaca? ( X ) + libtar? ( skins ) + libtiger? ( kate ) + lua? ( ${LUA_REQUIRED_USE} ) + skins? ( qt5 truetype X xml ) + ssl? ( gcrypt ) + vaapi? ( ffmpeg X ) + vdpau? ( ffmpeg X ) +" +BDEPEND=" + >=sys-devel/gettext-0.19.8 + virtual/pkgconfig + lua? ( ${LUA_DEPS} ) + amd64? ( dev-lang/yasm ) + x86? ( dev-lang/yasm ) +" +RDEPEND=" + net-dns/libidn:= + sys-libs/zlib[minizip] + virtual/libintl + virtual/opengl + a52? ( media-libs/a52dec ) + alsa? ( media-libs/alsa-lib ) + aom? ( media-libs/libaom:= ) + archive? ( app-arch/libarchive:= ) + aribsub? ( media-libs/aribb24 ) + bidi? ( + dev-libs/fribidi + media-libs/freetype:2[harfbuzz] + media-libs/harfbuzz + virtual/ttf-fonts + ) + bluray? ( media-libs/libbluray:= ) + cddb? ( media-libs/libcddb ) + chromaprint? ( media-libs/chromaprint:= ) + chromecast? ( + >=dev-libs/protobuf-2.5.0:= + >=net-libs/libmicrodns-0.1.2:= + ) + dav1d? ( media-libs/dav1d:= ) + dbus? ( sys-apps/dbus ) + dc1394? ( + media-libs/libdc1394:2 + sys-libs/libraw1394 + ) + dts? ( media-libs/libdca ) + dvbpsi? ( >=media-libs/libdvbpsi-1.2.0:= ) + dvd? ( + >=media-libs/libdvdnav-4.9:0= + >=media-libs/libdvdread-4.9:0= + ) + faad? ( media-libs/faad2 ) + fdk? ( media-libs/fdk-aac:= ) + ffmpeg? ( >=media-video/ffmpeg-3.1.3:0=[postproc,vaapi?,vdpau?] ) + flac? ( + media-libs/flac + media-libs/libogg + ) + fluidsynth? ( media-sound/fluidsynth:= ) + fontconfig? ( media-libs/fontconfig:1.0 ) + gcrypt? ( + dev-libs/libgcrypt:0= + dev-libs/libgpg-error + ) + gme? ( media-libs/game-music-emu ) + gnome-keyring? ( app-crypt/libsecret ) + gstreamer? ( >=media-libs/gst-plugins-base-1.4.5:1.0 ) + ieee1394? ( + sys-libs/libavc1394 + sys-libs/libraw1394 + ) + jack? ( virtual/jack ) + jpeg? ( virtual/jpeg:0 ) + kate? ( media-libs/libkate ) + libass? ( + media-libs/fontconfig:1.0 + media-libs/libass:= + ) + libcaca? ( media-libs/libcaca ) + libnotify? ( + dev-libs/glib:2 + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:3 + x11-libs/libnotify + ) + libsamplerate? ( media-libs/libsamplerate ) + libtar? ( dev-libs/libtar ) + libtiger? ( media-libs/libtiger ) + linsys? ( media-libs/zvbi ) + lirc? ( app-misc/lirc ) + live? ( media-plugins/live:= ) + lua? ( ${LUA_DEPS} ) + mad? ( media-libs/libmad ) + matroska? ( + >=dev-libs/libebml-1.3.6:= + media-libs/libmatroska:= + ) + modplug? ( >=media-libs/libmodplug-0.8.9.0 ) + mp3? ( media-sound/mpg123 ) + mpeg? ( media-libs/libmpeg2 ) + mtp? ( media-libs/libmtp:= ) + musepack? ( media-sound/musepack-tools ) + ncurses? ( sys-libs/ncurses:=[unicode(+)] ) + nfs? ( >=net-fs/libnfs-0.10.0:= ) + ogg? ( media-libs/libogg ) + opus? ( >=media-libs/opus-1.0.3 ) + png? ( media-libs/libpng:0= ) + projectm? ( + media-fonts/dejavu + media-libs/libprojectm:0= + ) + pulseaudio? ( media-sound/pulseaudio ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtsvg:5 + dev-qt/qtwidgets:5 + X? ( + dev-qt/qtx11extras:5 + x11-libs/libX11 + ) + ) + rdp? ( >=net-misc/freerdp-2.0.0_rc0:=[client(+)] ) + samba? ( >=net-fs/samba-4.0.0:0[client,-debug(-)] ) + sdl-image? ( media-libs/sdl-image ) + sftp? ( net-libs/libssh2 ) + shout? ( media-libs/libshout ) + sid? ( media-libs/libsidplay:2 ) + skins? ( + x11-libs/libXext + x11-libs/libXinerama + x11-libs/libXpm + ) + soxr? ( >=media-libs/soxr-0.1.2 ) + speex? ( + >=media-libs/speex-1.2.0 + media-libs/speexdsp + ) + srt? ( >=net-libs/srt-1.4.2:= ) + ssl? ( net-libs/gnutls:= ) + svg? ( + gnome-base/librsvg:2 + x11-libs/cairo + ) + taglib? ( >=media-libs/taglib-1.9 ) + theora? ( media-libs/libtheora ) + tremor? ( media-libs/tremor ) + truetype? ( + media-libs/freetype:2 + virtual/ttf-fonts + !fontconfig? ( media-fonts/dejavu ) + ) + twolame? ( media-sound/twolame ) + udev? ( virtual/udev ) + upnp? ( net-libs/libupnp:=[ipv6] ) + v4l? ( media-libs/libv4l:= ) + vaapi? ( x11-libs/libva:=[drm,wayland?,X?] ) + vdpau? ( x11-libs/libvdpau ) + vnc? ( net-libs/libvncserver ) + vorbis? ( media-libs/libvorbis ) + vpx? ( media-libs/libvpx:= ) + wayland? ( + >=dev-libs/wayland-1.15 + dev-libs/wayland-protocols + ) + X? ( + x11-libs/libX11 + x11-libs/libxcb + x11-libs/xcb-util + x11-libs/xcb-util-keysyms + ) + x264? ( >=media-libs/x264-0.0.20190214:= ) + x265? ( media-libs/x265:= ) + xml? ( dev-libs/libxml2:2 ) + zeroconf? ( net-dns/avahi[dbus] ) + zvbi? ( media-libs/zvbi ) +" +DEPEND="${RDEPEND} + X? ( x11-base/xorg-proto ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch # build system + "${FILESDIR}"/${PN}-2.2.8-freerdp-2.patch # bug 590164 + "${FILESDIR}"/${PN}-3.0.6-fdk-aac-2.0.0.patch # bug 672290 + "${FILESDIR}"/${PN}-3.0.11.1-configure_lua_version.patch + "${FILESDIR}"/${PN}-3.0.11.1-srt-1.4.2.patch # bug 758062 + "${FILESDIR}"/${PN}-3.0.12.1-limits-p{1,2}.patch # bug 767796 +) + +DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt ) + +pkg_setup() { + if use lua; then + lua-single_pkg_setup + fi +} + +src_prepare() { + xdg_src_prepare # bug 608256 + + has_version 'net-libs/libupnp:1.8' && \ + eapply "${FILESDIR}"/${PN}-2.2.8-libupnp-slot-1.8.patch + + # Bootstrap when we are on a git checkout. + if [[ ${PV} = *9999 ]] ; then + ./bootstrap + fi + + # Make it build with libtool 1.5 + #rm m4/lt* m4/libtool.m4 || die + + # We are not in a real git checkout due to the absence of a .git directory. + touch src/revision.txt || die + + # Don't use --started-from-file when not using dbus. + if ! use dbus ; then + sed -i 's/ --started-from-file//' share/vlc.desktop.in || die + fi + + # Disable running of vlc-cache-gen, we do that in pkg_postinst + sed -e "/test.*build.*host/s/\$(host)/nothanks/" \ + -i Makefile.am -i bin/Makefile.am || die "Failed to disable vlc-cache-gen" + + # Fix gettext version mismatch errors. + sed -i -e s/GETTEXT_VERSION/GETTEXT_REQUIRE_VERSION/ configure.ac || die + + eautoreconf + + # Disable automatic running of tests. + find . -name 'Makefile.in' -exec sed -i 's/\(..*\)check-TESTS/\1/' {} \; || die +} + +src_configure() { + local -x BUILDCC=$(tc-getBUILD_CC) + + local myeconfargs=( + --disable-aa + --disable-optimizations + --disable-rpath + --disable-update-check + --enable-fast-install + --enable-screen + --enable-vcd + --enable-vlc + $(use_enable a52) + $(use_enable alsa) + $(use_enable aom) + $(use_enable archive) + $(use_enable aribsub) + $(use_enable bidi fribidi) + $(use_enable bidi harfbuzz) + $(use_enable bluray) + $(use_enable cddb libcddb) + $(use_enable chromaprint) + $(use_enable chromecast) + $(use_enable chromecast microdns) + $(use_enable cpu_flags_arm_neon neon) + $(use_enable cpu_flags_ppc_altivec altivec) + $(use_enable cpu_flags_x86_mmx mmx) + $(use_enable cpu_flags_x86_sse sse) + $(use_enable dav1d) + $(use_enable dbus) + $(use_enable dbus kwallet) + $(use_enable dc1394) + $(use_enable debug) + $(use_enable directx) + $(use_enable directx d3d11va) + $(use_enable directx dxva2) + $(use_enable dts dca) + $(use_enable dvbpsi) + $(use_enable dvd dvdnav) + $(use_enable dvd dvdread) + $(use_enable encode sout) + $(use_enable encode vlm) + $(use_enable faad) + $(use_enable fdk fdkaac) + $(use_enable ffmpeg avcodec) + $(use_enable ffmpeg avformat) + $(use_enable ffmpeg postproc) + $(use_enable ffmpeg swscale) + $(use_enable flac) + $(use_enable fluidsynth) + $(use_enable fontconfig) + $(use_enable gcrypt libgcrypt) + $(use_enable gme) + $(use_enable gnome-keyring secret) + $(use_enable gstreamer gst-decode) + $(use_enable ieee1394 dv1394) + $(use_enable jack) + $(use_enable jpeg) + $(use_enable kate) + $(use_enable libass) + $(use_enable libcaca caca) + $(use_enable libnotify notify) + $(use_enable libsamplerate samplerate) + $(use_enable libtar) + $(use_enable libtiger tiger) + $(use_enable linsys) + $(use_enable lirc) + $(use_enable live live555) + $(use_enable lua) + $(use_enable macosx-notifications osx-notifications) + $(use_enable mad) + $(use_enable matroska) + $(use_enable modplug mod) + $(use_enable mp3 mpg123) + $(use_enable mpeg libmpeg2) + $(use_enable mtp) + $(use_enable musepack mpc) + $(use_enable ncurses) + $(use_enable nfs) + $(use_enable ogg) + $(use_enable omxil) + $(use_enable omxil omxil-vout) + $(use_enable optimisememory optimize-memory) + $(use_enable opus) + $(use_enable png) + $(use_enable projectm) + $(use_enable pulseaudio pulse) + $(use_enable qt5 qt) + $(use_enable rdp freerdp) + $(use_enable run-as-root) + $(use_enable samba smbclient) + $(use_enable sdl-image) + $(use_enable sftp) + $(use_enable shout) + $(use_enable sid) + $(use_enable skins skins2) + $(use_enable soxr) + $(use_enable speex) + $(use_enable srt) + $(use_enable ssl gnutls) + $(use_enable svg) + $(use_enable svg svgdec) + $(use_enable taglib) + $(use_enable theora) + $(use_enable tremor) + $(use_enable twolame) + $(use_enable udev) + $(use_enable upnp) + $(use_enable v4l v4l2) + $(use_enable vaapi libva) + $(use_enable vdpau) + $(use_enable vnc) + $(use_enable vorbis) + $(use_enable vpx) + $(use_enable wayland) + $(use_with X x) + $(use_enable X xcb) + $(use_enable X xvideo) + $(use_enable x264) + $(use_enable x264 x26410b) + $(use_enable x265) + $(use_enable xml libxml2) + $(use_enable zeroconf avahi) + $(use_enable zvbi) + $(use_enable !zvbi telx) + --with-kde-solid="${EPREFIX}"/usr/share/solid/actions + --disable-asdcp + --disable-coverage + --disable-cprof + --disable-crystalhd + --disable-decklink + --disable-gles2 + --disable-goom + --disable-kai + --disable-kva + --disable-libplacebo + --disable-maintainer-mode + --disable-merge-ffmpeg + --disable-mfx + --disable-mmal + --disable-opencv + --disable-opensles + --disable-oss + --disable-rpi-omxil + --disable-schroedinger + --disable-shine + --disable-sndio + --disable-spatialaudio + --disable-vsxu + --disable-wasapi + --disable-wma-fixed + ) + # ^ We don't have these disabled libraries in the Portage tree yet. + + # Compatibility fix for Samba 4. + use samba && append-cppflags "-I/usr/include/samba-4.0" + + if use x86; then + # We need to disable -fstack-check if use >=gcc 4.8.0. bug #499996 + append-cflags $(test-flags-CC -fno-stack-check) + # Bug 569774 + replace-flags -Os -O2 + fi + + # VLC now requires C++11 after commit 4b1c9dcdda0bbff801e47505ff9dfd3f274eb0d8 + append-cxxflags -std=c++11 + + if use omxil; then + # bug #723006 + # https://trac.videolan.org/vlc/ticket/24617 + append-cflags -fcommon + fi + + # FIXME: Needs libresid-builder from libsidplay:2 which is in another directory... + append-ldflags "-L/usr/$(get_libdir)/sidplay/builders/" + + if use truetype || use bidi; then + myeconfargs+=( --enable-freetype ) + else + myeconfargs+=( --disable-freetype ) + fi + + if use truetype || use projectm; then + local dejavu="${EPREFIX}/usr/share/fonts/dejavu/" + myeconfargs+=( + --with-default-font=${dejavu}/DejaVuSans.ttf + --with-default-font-family=Sans + --with-default-monospace-font=${dejavu}/DejaVuSansMono.ttf + --with-default-monospace-font-family=Monospace + ) + fi + + econf "${myeconfargs[@]}" + + # _FORTIFY_SOURCE is set to 2 in config.h, which is also the default value on Gentoo. + # Other values may break the build (bug 523144), so definition should not be removed. + # To prevent redefinition warnings, we undefine _FORTIFY_SOURCE at the start of config.h + sed -i '1i#undef _FORTIFY_SOURCE' config.h || die +} + +src_test() { + virtx emake check-TESTS +} + +src_install() { + default + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + if [[ -z "${ROOT}" ]] && [[ -x "${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen" ]] ; then + einfo "Running ${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen on ${EROOT}/usr/$(get_libdir)/vlc/plugins/" + "${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen" "${EROOT}/usr/$(get_libdir)/vlc/plugins/" + else + ewarn "We cannot run vlc-cache-gen (most likely ROOT != /)" + ewarn "Please run ${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen manually" + ewarn "If you do not do it, vlc will take a long time to load." + fi + + xdg_pkg_postinst +} + +pkg_postrm() { + if [[ -e "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat ]]; then + rm "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat || die "Failed to rm plugins.dat" + fi + + xdg_pkg_postrm +} diff --git a/media-video/vlc/vlc-3.0.14-r3.ebuild b/media-video/vlc/vlc-3.0.14-r3.ebuild deleted file mode 100644 index fb0fb903ecab..000000000000 --- a/media-video/vlc/vlc-3.0.14-r3.ebuild +++ /dev/null @@ -1,513 +0,0 @@ -# Copyright 2000-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -LUA_COMPAT=( lua5-{1..2} ) - -MY_PV="${PV/_/-}" -MY_PV="${MY_PV/-beta/-test}" -MY_P="${PN}-${MY_PV}" -if [[ ${PV} = *9999 ]] ; then - if [[ ${PV%.9999} != ${PV} ]] ; then - EGIT_REPO_URI="https://git.videolan.org/git/vlc/vlc-${PV%.9999}.git" - else - EGIT_REPO_URI="https://git.videolan.org/git/vlc.git" - fi - inherit git-r3 -else - SRC_URI="https://code.videolan.org/videolan/vlc-$(ver_cut 1-2)/-/archive/${PV}/vlc-$(ver_cut 1-2)-${PV}.tar.gz" - S="${WORKDIR}/${PN}-$(ver_cut 1-2)-${PV}" - #if [[ ${MY_P} = ${P} ]] ; then - # SRC_URI="https://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.xz" - #else - # SRC_URI="https://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz" - #fi - KEYWORDS="amd64 ~arm arm64 ppc ppc64 -sparc x86" -fi - -inherit autotools flag-o-matic lua-single toolchain-funcs virtualx xdg - -DESCRIPTION="Media player and framework with support for most multimedia files and streaming" -HOMEPAGE="https://www.videolan.org/vlc/" - -LICENSE="LGPL-2.1 GPL-2" -SLOT="0/5-9" # vlc - vlccore - -IUSE="a52 alsa aom archive aribsub bidi bluray cddb chromaprint chromecast - dav1d dbus dc1394 debug directx dts +dvbpsi dvd +encode faad fdk +ffmpeg flac - fluidsynth fontconfig +gcrypt gme gnome-keyring gstreamer ieee1394 jack jpeg kate - libass libcaca libnotify +libsamplerate libtar libtiger linsys lirc - live lua macosx-notifications mad matroska modplug mp3 mpeg mtp musepack ncurses - nfs ogg omxil optimisememory opus png projectm pulseaudio +qt5 rdp - run-as-root samba sdl-image sftp shout sid skins soxr speex srt ssl svg taglib - theora tremor truetype twolame udev upnp vaapi v4l vdpau vnc vpx wayland +X - x264 x265 xml zeroconf zvbi cpu_flags_arm_neon cpu_flags_ppc_altivec cpu_flags_x86_mmx - cpu_flags_x86_sse -" -REQUIRED_USE=" - chromecast? ( encode ) - directx? ( ffmpeg ) - fontconfig? ( truetype ) - libcaca? ( X ) - libtar? ( skins ) - libtiger? ( kate ) - lua? ( ${LUA_REQUIRED_USE} ) - skins? ( qt5 truetype X xml ) - ssl? ( gcrypt ) - vaapi? ( ffmpeg X ) - vdpau? ( ffmpeg X ) -" -BDEPEND=" - >=sys-devel/gettext-0.19.8 - virtual/pkgconfig - lua? ( ${LUA_DEPS} ) - amd64? ( dev-lang/yasm ) - x86? ( dev-lang/yasm ) -" -RDEPEND=" - media-libs/libvorbis - net-dns/libidn:= - sys-libs/zlib[minizip] - virtual/libintl - virtual/opengl - a52? ( media-libs/a52dec ) - alsa? ( media-libs/alsa-lib ) - aom? ( media-libs/libaom:= ) - archive? ( app-arch/libarchive:= ) - aribsub? ( media-libs/aribb24 ) - bidi? ( - dev-libs/fribidi - media-libs/freetype:2[harfbuzz] - media-libs/harfbuzz - virtual/ttf-fonts - ) - bluray? ( >=media-libs/libbluray-1.3.0:= ) - cddb? ( media-libs/libcddb ) - chromaprint? ( media-libs/chromaprint:= ) - chromecast? ( - >=dev-libs/protobuf-2.5.0:= - >=net-libs/libmicrodns-0.1.2:= - ) - dav1d? ( media-libs/dav1d:= ) - dbus? ( sys-apps/dbus ) - dc1394? ( - media-libs/libdc1394:2 - sys-libs/libraw1394 - ) - dts? ( media-libs/libdca ) - dvbpsi? ( >=media-libs/libdvbpsi-1.2.0:= ) - dvd? ( - >=media-libs/libdvdnav-6.1.1:0= - >=media-libs/libdvdread-6.1.2:0= - ) - faad? ( media-libs/faad2 ) - fdk? ( media-libs/fdk-aac:= ) - ffmpeg? ( >=media-video/ffmpeg-3.1.3:0=[postproc,vaapi?,vdpau?] ) - flac? ( - media-libs/flac - media-libs/libogg - ) - fluidsynth? ( media-sound/fluidsynth:= ) - fontconfig? ( media-libs/fontconfig:1.0 ) - gcrypt? ( - dev-libs/libgcrypt:0= - dev-libs/libgpg-error - ) - gme? ( media-libs/game-music-emu ) - gnome-keyring? ( app-crypt/libsecret ) - gstreamer? ( >=media-libs/gst-plugins-base-1.4.5:1.0 ) - ieee1394? ( - sys-libs/libavc1394 - sys-libs/libraw1394 - ) - jack? ( virtual/jack ) - jpeg? ( virtual/jpeg:0 ) - kate? ( media-libs/libkate ) - libass? ( - media-libs/fontconfig:1.0 - media-libs/libass:= - ) - libcaca? ( media-libs/libcaca ) - libnotify? ( - dev-libs/glib:2 - x11-libs/gdk-pixbuf:2 - x11-libs/gtk+:3 - x11-libs/libnotify - ) - libsamplerate? ( media-libs/libsamplerate ) - libtar? ( dev-libs/libtar ) - libtiger? ( media-libs/libtiger ) - linsys? ( media-libs/zvbi ) - lirc? ( app-misc/lirc ) - live? ( =dev-libs/libebml-1.4.2:= - media-libs/libmatroska:= - ) - modplug? ( >=media-libs/libmodplug-0.8.9.0 ) - mp3? ( media-sound/mpg123 ) - mpeg? ( media-libs/libmpeg2 ) - mtp? ( media-libs/libmtp:= ) - musepack? ( media-sound/musepack-tools ) - ncurses? ( sys-libs/ncurses:0=[unicode] ) - nfs? ( >=net-fs/libnfs-0.10.0:= ) - ogg? ( media-libs/libogg ) - opus? ( >=media-libs/opus-1.0.3 ) - png? ( media-libs/libpng:0= ) - projectm? ( - media-fonts/dejavu - media-libs/libprojectm:0= - ) - pulseaudio? ( media-sound/pulseaudio ) - qt5? ( - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtsvg:5 - dev-qt/qtwidgets:5 - X? ( - dev-qt/qtx11extras:5 - x11-libs/libX11 - ) - ) - rdp? ( >=net-misc/freerdp-2.0.0_rc0:=[client(+)] ) - samba? ( >=net-fs/samba-4.0.0:0[client,-debug(-)] ) - sdl-image? ( media-libs/sdl-image ) - sftp? ( net-libs/libssh2 ) - shout? ( media-libs/libshout ) - sid? ( media-libs/libsidplay:2 ) - skins? ( - x11-libs/libXext - x11-libs/libXinerama - x11-libs/libXpm - ) - soxr? ( >=media-libs/soxr-0.1.2 ) - speex? ( - >=media-libs/speex-1.2.0 - media-libs/speexdsp - ) - srt? ( >=net-libs/srt-1.4.2:= ) - ssl? ( net-libs/gnutls:= ) - svg? ( - gnome-base/librsvg:2 - x11-libs/cairo - ) - taglib? ( >=media-libs/taglib-1.9 ) - theora? ( media-libs/libtheora ) - tremor? ( media-libs/tremor ) - truetype? ( - media-libs/freetype:2 - virtual/ttf-fonts - !fontconfig? ( media-fonts/dejavu ) - ) - twolame? ( media-sound/twolame ) - udev? ( virtual/udev ) - upnp? ( net-libs/libupnp:=[ipv6] ) - v4l? ( media-libs/libv4l:= ) - vaapi? ( x11-libs/libva:=[drm,wayland?,X?] ) - vdpau? ( x11-libs/libvdpau ) - vnc? ( net-libs/libvncserver ) - vpx? ( media-libs/libvpx:= ) - wayland? ( - >=dev-libs/wayland-1.15 - dev-libs/wayland-protocols - ) - X? ( - x11-libs/libX11 - x11-libs/libxcb - x11-libs/xcb-util - x11-libs/xcb-util-keysyms - ) - x264? ( >=media-libs/x264-0.0.20190214:= ) - x265? ( media-libs/x265:= ) - xml? ( dev-libs/libxml2:2 ) - zeroconf? ( net-dns/avahi[dbus] ) - zvbi? ( media-libs/zvbi ) -" -DEPEND="${RDEPEND} - X? ( x11-base/xorg-proto ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch # build system - "${FILESDIR}"/${PN}-2.2.8-freerdp-2.patch # bug 590164 - "${FILESDIR}"/${PN}-3.0.6-fdk-aac-2.0.0.patch # bug 672290 - "${FILESDIR}"/${PN}-3.0.11.1-configure_lua_version.patch - "${FILESDIR}"/${PN}-3.0.11.1-srt-1.4.2.patch # bug 758062 - "${FILESDIR}"/${PN}-3.0.13-srt-1.3.0.patch -) - -DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt ) - -pkg_setup() { - if use lua; then - lua-single_pkg_setup - fi -} - -src_prepare() { - xdg_src_prepare # bug 608256 - - has_version 'net-libs/libupnp:1.8' && \ - eapply "${FILESDIR}"/${PN}-2.2.8-libupnp-slot-1.8.patch - - # Bootstrap when we are on a git checkout. - if [[ ${PV} = *9999 ]] ; then - ./bootstrap - fi - - # Make it build with libtool 1.5 - #rm m4/lt* m4/libtool.m4 || die - - # We are not in a real git checkout due to the absence of a .git directory. - touch src/revision.txt || die - - # Don't use --started-from-file when not using dbus. - if ! use dbus ; then - sed -i 's/ --started-from-file//' share/vlc.desktop.in || die - fi - - # Disable running of vlc-cache-gen, we do that in pkg_postinst - sed -e "/test.*build.*host/s/\$(host)/nothanks/" \ - -i Makefile.am -i bin/Makefile.am || die "Failed to disable vlc-cache-gen" - - # Fix gettext version mismatch errors. - sed -i -e s/GETTEXT_VERSION/GETTEXT_REQUIRE_VERSION/ configure.ac || die - - eautoreconf - - # Disable automatic running of tests. - find . -name 'Makefile.in' -exec sed -i 's/\(..*\)check-TESTS/\1/' {} \; || die -} - -src_configure() { - local -x BUILDCC=$(tc-getBUILD_CC) - - local myeconfargs=( - --disable-aa - --disable-optimizations - --disable-rpath - --disable-update-check - --enable-fast-install - --enable-screen - --enable-vcd - --enable-vlc - --enable-vorbis - $(use_enable a52) - $(use_enable alsa) - $(use_enable aom) - $(use_enable archive) - $(use_enable aribsub) - $(use_enable bidi fribidi) - $(use_enable bidi harfbuzz) - $(use_enable bluray) - $(use_enable cddb libcddb) - $(use_enable chromaprint) - $(use_enable chromecast) - $(use_enable chromecast microdns) - $(use_enable cpu_flags_arm_neon neon) - $(use_enable cpu_flags_ppc_altivec altivec) - $(use_enable cpu_flags_x86_mmx mmx) - $(use_enable cpu_flags_x86_sse sse) - $(use_enable dav1d) - $(use_enable dbus) - $(use_enable dbus kwallet) - $(use_enable dc1394) - $(use_enable debug) - $(use_enable directx) - $(use_enable directx d3d11va) - $(use_enable directx dxva2) - $(use_enable dts dca) - $(use_enable dvbpsi) - $(use_enable dvd dvdnav) - $(use_enable dvd dvdread) - $(use_enable encode sout) - $(use_enable encode vlm) - $(use_enable faad) - $(use_enable fdk fdkaac) - $(use_enable ffmpeg avcodec) - $(use_enable ffmpeg avformat) - $(use_enable ffmpeg postproc) - $(use_enable ffmpeg swscale) - $(use_enable flac) - $(use_enable fluidsynth) - $(use_enable fontconfig) - $(use_enable gcrypt libgcrypt) - $(use_enable gme) - $(use_enable gnome-keyring secret) - $(use_enable gstreamer gst-decode) - $(use_enable ieee1394 dv1394) - $(use_enable jack) - $(use_enable jpeg) - $(use_enable kate) - $(use_enable libass) - $(use_enable libcaca caca) - $(use_enable libnotify notify) - $(use_enable libsamplerate samplerate) - $(use_enable libtar) - $(use_enable libtiger tiger) - $(use_enable linsys) - $(use_enable lirc) - $(use_enable live live555) - $(use_enable lua) - $(use_enable macosx-notifications osx-notifications) - $(use_enable mad) - $(use_enable matroska) - $(use_enable modplug mod) - $(use_enable mp3 mpg123) - $(use_enable mpeg libmpeg2) - $(use_enable mtp) - $(use_enable musepack mpc) - $(use_enable ncurses) - $(use_enable nfs) - $(use_enable ogg) - $(use_enable omxil) - $(use_enable omxil omxil-vout) - $(use_enable optimisememory optimize-memory) - $(use_enable opus) - $(use_enable png) - $(use_enable projectm) - $(use_enable pulseaudio pulse) - $(use_enable qt5 qt) - $(use_enable rdp freerdp) - $(use_enable run-as-root) - $(use_enable samba smbclient) - $(use_enable sdl-image) - $(use_enable sftp) - $(use_enable shout) - $(use_enable sid) - $(use_enable skins skins2) - $(use_enable soxr) - $(use_enable speex) - $(use_enable srt) - $(use_enable ssl gnutls) - $(use_enable svg) - $(use_enable svg svgdec) - $(use_enable taglib) - $(use_enable theora) - $(use_enable tremor) - $(use_enable twolame) - $(use_enable udev) - $(use_enable upnp) - $(use_enable v4l v4l2) - $(use_enable vaapi libva) - $(use_enable vdpau) - $(use_enable vnc) - $(use_enable vpx) - $(use_enable wayland) - $(use_with X x) - $(use_enable X xcb) - $(use_enable X xvideo) - $(use_enable x264) - $(use_enable x264 x26410b) - $(use_enable x265) - $(use_enable xml libxml2) - $(use_enable zeroconf avahi) - $(use_enable zvbi) - $(use_enable !zvbi telx) - --with-kde-solid="${EPREFIX}"/usr/share/solid/actions - --disable-asdcp - --disable-coverage - --disable-cprof - --disable-crystalhd - --disable-decklink - --disable-gles2 - --disable-goom - --disable-kai - --disable-kva - --disable-libplacebo - --disable-maintainer-mode - --disable-merge-ffmpeg - --disable-mfx - --disable-mmal - --disable-opencv - --disable-opensles - --disable-oss - --disable-rpi-omxil - --disable-schroedinger - --disable-shine - --disable-sndio - --disable-spatialaudio - --disable-vsxu - --disable-wasapi - --disable-wma-fixed - ) - # ^ We don't have these disabled libraries in the Portage tree yet. - - # Compatibility fix for Samba 4. - use samba && append-cppflags "-I/usr/include/samba-4.0" - - if use x86; then - # We need to disable -fstack-check if use >=gcc 4.8.0. bug #499996 - append-cflags $(test-flags-CC -fno-stack-check) - # Bug 569774 - replace-flags -Os -O2 - fi - - # VLC now requires C++11 after commit 4b1c9dcdda0bbff801e47505ff9dfd3f274eb0d8 - append-cxxflags -std=c++11 - - if use omxil; then - # bug #723006 - # https://trac.videolan.org/vlc/ticket/24617 - append-cflags -fcommon - fi - - # FIXME: Needs libresid-builder from libsidplay:2 which is in another directory... - append-ldflags "-L/usr/$(get_libdir)/sidplay/builders/" - - if use truetype || use bidi; then - myeconfargs+=( --enable-freetype ) - else - myeconfargs+=( --disable-freetype ) - fi - - if use truetype || use projectm; then - local dejavu="${EPREFIX}/usr/share/fonts/dejavu/" - myeconfargs+=( - --with-default-font=${dejavu}/DejaVuSans.ttf - --with-default-font-family=Sans - --with-default-monospace-font=${dejavu}/DejaVuSansMono.ttf - --with-default-monospace-font-family=Monospace - ) - fi - - econf "${myeconfargs[@]}" - - # _FORTIFY_SOURCE is set to 2 in config.h, which is also the default value on Gentoo. - # Other values may break the build (bug 523144), so definition should not be removed. - # To prevent redefinition warnings, we undefine _FORTIFY_SOURCE at the start of config.h - sed -i '1i#undef _FORTIFY_SOURCE' config.h || die -} - -src_test() { - virtx emake check-TESTS -} - -src_install() { - default - find "${ED}" -name '*.la' -delete || die -} - -pkg_postinst() { - if [[ -z "${ROOT}" ]] && [[ -x "${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen" ]] ; then - einfo "Running ${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen on ${EROOT}/usr/$(get_libdir)/vlc/plugins/" - "${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen" "${EROOT}/usr/$(get_libdir)/vlc/plugins/" - else - ewarn "We cannot run vlc-cache-gen (most likely ROOT != /)" - ewarn "Please run ${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen manually" - ewarn "If you do not do it, vlc will take a long time to load." - fi - - xdg_pkg_postinst -} - -pkg_postrm() { - if [[ -e "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat ]]; then - rm "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat || die "Failed to rm plugins.dat" - fi - - xdg_pkg_postrm -} diff --git a/media-video/vlc/vlc-3.0.14-r4.ebuild b/media-video/vlc/vlc-3.0.14-r4.ebuild deleted file mode 100644 index e0d547fa43fb..000000000000 --- a/media-video/vlc/vlc-3.0.14-r4.ebuild +++ /dev/null @@ -1,514 +0,0 @@ -# Copyright 2000-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -LUA_COMPAT=( lua5-{1..2} ) - -MY_PV="${PV/_/-}" -MY_PV="${MY_PV/-beta/-test}" -MY_P="${PN}-${MY_PV}" -if [[ ${PV} = *9999 ]] ; then - if [[ ${PV%.9999} != ${PV} ]] ; then - EGIT_REPO_URI="https://git.videolan.org/git/vlc/vlc-${PV%.9999}.git" - else - EGIT_REPO_URI="https://git.videolan.org/git/vlc.git" - fi - inherit git-r3 -else - SRC_URI="https://code.videolan.org/videolan/vlc-$(ver_cut 1-2)/-/archive/${PV}/vlc-$(ver_cut 1-2)-${PV}.tar.gz" - S="${WORKDIR}/${PN}-$(ver_cut 1-2)-${PV}" - #if [[ ${MY_P} = ${P} ]] ; then - # SRC_URI="https://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.xz" - #else - # SRC_URI="https://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz" - #fi - KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 -sparc ~x86" -fi - -inherit autotools flag-o-matic lua-single toolchain-funcs virtualx xdg - -DESCRIPTION="Media player and framework with support for most multimedia files and streaming" -HOMEPAGE="https://www.videolan.org/vlc/" - -LICENSE="LGPL-2.1 GPL-2" -SLOT="0/5-9" # vlc - vlccore - -IUSE="a52 alsa aom archive aribsub bidi bluray cddb chromaprint chromecast - dav1d dbus dc1394 debug directx dts +dvbpsi dvd +encode faad fdk +ffmpeg flac - fluidsynth fontconfig +gcrypt gme gnome-keyring gstreamer ieee1394 jack jpeg kate - libass libcaca libnotify +libsamplerate libtar libtiger linsys lirc - live lua macosx-notifications mad matroska modplug mp3 mpeg mtp musepack ncurses - nfs ogg omxil optimisememory opus png projectm pulseaudio +qt5 rdp - run-as-root samba sdl-image sftp shout sid skins soxr speex srt ssl svg taglib - theora tremor truetype twolame udev upnp vaapi v4l vdpau vnc vpx wayland +X - x264 x265 xml zeroconf zvbi cpu_flags_arm_neon cpu_flags_ppc_altivec cpu_flags_x86_mmx - cpu_flags_x86_sse -" -REQUIRED_USE=" - chromecast? ( encode ) - directx? ( ffmpeg ) - fontconfig? ( truetype ) - libcaca? ( X ) - libtar? ( skins ) - libtiger? ( kate ) - lua? ( ${LUA_REQUIRED_USE} ) - skins? ( qt5 truetype X xml ) - ssl? ( gcrypt ) - vaapi? ( ffmpeg X ) - vdpau? ( ffmpeg X ) -" -BDEPEND=" - >=sys-devel/gettext-0.19.8 - virtual/pkgconfig - lua? ( ${LUA_DEPS} ) - amd64? ( dev-lang/yasm ) - x86? ( dev-lang/yasm ) -" -RDEPEND=" - media-libs/libvorbis - net-dns/libidn:= - sys-libs/zlib[minizip] - virtual/libintl - virtual/opengl - a52? ( media-libs/a52dec ) - alsa? ( media-libs/alsa-lib ) - aom? ( media-libs/libaom:= ) - archive? ( app-arch/libarchive:= ) - aribsub? ( media-libs/aribb24 ) - bidi? ( - dev-libs/fribidi - media-libs/freetype:2[harfbuzz] - media-libs/harfbuzz - virtual/ttf-fonts - ) - bluray? ( >=media-libs/libbluray-1.3.0:= ) - cddb? ( media-libs/libcddb ) - chromaprint? ( media-libs/chromaprint:= ) - chromecast? ( - >=dev-libs/protobuf-2.5.0:= - >=net-libs/libmicrodns-0.1.2:= - ) - dav1d? ( media-libs/dav1d:= ) - dbus? ( sys-apps/dbus ) - dc1394? ( - media-libs/libdc1394:2 - sys-libs/libraw1394 - ) - dts? ( media-libs/libdca ) - dvbpsi? ( >=media-libs/libdvbpsi-1.2.0:= ) - dvd? ( - >=media-libs/libdvdnav-6.1.1:0= - >=media-libs/libdvdread-6.1.2:0= - ) - faad? ( media-libs/faad2 ) - fdk? ( media-libs/fdk-aac:= ) - ffmpeg? ( >=media-video/ffmpeg-3.1.3:0=[postproc,vaapi?,vdpau?] ) - flac? ( - media-libs/flac - media-libs/libogg - ) - fluidsynth? ( media-sound/fluidsynth:= ) - fontconfig? ( media-libs/fontconfig:1.0 ) - gcrypt? ( - dev-libs/libgcrypt:0= - dev-libs/libgpg-error - ) - gme? ( media-libs/game-music-emu ) - gnome-keyring? ( app-crypt/libsecret ) - gstreamer? ( >=media-libs/gst-plugins-base-1.4.5:1.0 ) - ieee1394? ( - sys-libs/libavc1394 - sys-libs/libraw1394 - ) - jack? ( virtual/jack ) - jpeg? ( virtual/jpeg:0 ) - kate? ( media-libs/libkate ) - libass? ( - media-libs/fontconfig:1.0 - media-libs/libass:= - ) - libcaca? ( media-libs/libcaca ) - libnotify? ( - dev-libs/glib:2 - x11-libs/gdk-pixbuf:2 - x11-libs/gtk+:3 - x11-libs/libnotify - ) - libsamplerate? ( media-libs/libsamplerate ) - libtar? ( dev-libs/libtar ) - libtiger? ( media-libs/libtiger ) - linsys? ( media-libs/zvbi ) - lirc? ( app-misc/lirc ) - live? ( >=media-plugins/live-2021.05.22:= ) - lua? ( ${LUA_DEPS} ) - mad? ( media-libs/libmad ) - matroska? ( - >=dev-libs/libebml-1.4.2:= - media-libs/libmatroska:= - ) - modplug? ( >=media-libs/libmodplug-0.8.9.0 ) - mp3? ( media-sound/mpg123 ) - mpeg? ( media-libs/libmpeg2 ) - mtp? ( media-libs/libmtp:= ) - musepack? ( media-sound/musepack-tools ) - ncurses? ( sys-libs/ncurses:0=[unicode] ) - nfs? ( >=net-fs/libnfs-0.10.0:= ) - ogg? ( media-libs/libogg ) - opus? ( >=media-libs/opus-1.0.3 ) - png? ( media-libs/libpng:0= ) - projectm? ( - media-fonts/dejavu - media-libs/libprojectm:0= - ) - pulseaudio? ( media-sound/pulseaudio ) - qt5? ( - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtsvg:5 - dev-qt/qtwidgets:5 - X? ( - dev-qt/qtx11extras:5 - x11-libs/libX11 - ) - ) - rdp? ( >=net-misc/freerdp-2.0.0_rc0:=[client(+)] ) - samba? ( >=net-fs/samba-4.0.0:0[client,-debug(-)] ) - sdl-image? ( media-libs/sdl-image ) - sftp? ( net-libs/libssh2 ) - shout? ( media-libs/libshout ) - sid? ( media-libs/libsidplay:2 ) - skins? ( - x11-libs/libXext - x11-libs/libXinerama - x11-libs/libXpm - ) - soxr? ( >=media-libs/soxr-0.1.2 ) - speex? ( - >=media-libs/speex-1.2.0 - media-libs/speexdsp - ) - srt? ( >=net-libs/srt-1.4.2:= ) - ssl? ( net-libs/gnutls:= ) - svg? ( - gnome-base/librsvg:2 - x11-libs/cairo - ) - taglib? ( >=media-libs/taglib-1.9 ) - theora? ( media-libs/libtheora ) - tremor? ( media-libs/tremor ) - truetype? ( - media-libs/freetype:2 - virtual/ttf-fonts - !fontconfig? ( media-fonts/dejavu ) - ) - twolame? ( media-sound/twolame ) - udev? ( virtual/udev ) - upnp? ( net-libs/libupnp:=[ipv6] ) - v4l? ( media-libs/libv4l:= ) - vaapi? ( x11-libs/libva:=[drm,wayland?,X?] ) - vdpau? ( x11-libs/libvdpau ) - vnc? ( net-libs/libvncserver ) - vpx? ( media-libs/libvpx:= ) - wayland? ( - >=dev-libs/wayland-1.15 - dev-libs/wayland-protocols - ) - X? ( - x11-libs/libX11 - x11-libs/libxcb - x11-libs/xcb-util - x11-libs/xcb-util-keysyms - ) - x264? ( >=media-libs/x264-0.0.20190214:= ) - x265? ( media-libs/x265:= ) - xml? ( dev-libs/libxml2:2 ) - zeroconf? ( net-dns/avahi[dbus] ) - zvbi? ( media-libs/zvbi ) -" -DEPEND="${RDEPEND} - X? ( x11-base/xorg-proto ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch # build system - "${FILESDIR}"/${PN}-2.2.8-freerdp-2.patch # bug 590164 - "${FILESDIR}"/${PN}-3.0.6-fdk-aac-2.0.0.patch # bug 672290 - "${FILESDIR}"/${PN}-3.0.11.1-configure_lua_version.patch - "${FILESDIR}"/${PN}-3.0.11.1-srt-1.4.2.patch # bug 758062 - "${FILESDIR}"/${PN}-3.0.13-srt-1.3.0.patch - "${FILESDIR}"/${PN}-3.0.14-fix-live-address-api.patch # bug 795798 -) - -DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt ) - -pkg_setup() { - if use lua; then - lua-single_pkg_setup - fi -} - -src_prepare() { - xdg_src_prepare # bug 608256 - - has_version 'net-libs/libupnp:1.8' && \ - eapply "${FILESDIR}"/${PN}-2.2.8-libupnp-slot-1.8.patch - - # Bootstrap when we are on a git checkout. - if [[ ${PV} = *9999 ]] ; then - ./bootstrap - fi - - # Make it build with libtool 1.5 - #rm m4/lt* m4/libtool.m4 || die - - # We are not in a real git checkout due to the absence of a .git directory. - touch src/revision.txt || die - - # Don't use --started-from-file when not using dbus. - if ! use dbus ; then - sed -i 's/ --started-from-file//' share/vlc.desktop.in || die - fi - - # Disable running of vlc-cache-gen, we do that in pkg_postinst - sed -e "/test.*build.*host/s/\$(host)/nothanks/" \ - -i Makefile.am -i bin/Makefile.am || die "Failed to disable vlc-cache-gen" - - # Fix gettext version mismatch errors. - sed -i -e s/GETTEXT_VERSION/GETTEXT_REQUIRE_VERSION/ configure.ac || die - - eautoreconf - - # Disable automatic running of tests. - find . -name 'Makefile.in' -exec sed -i 's/\(..*\)check-TESTS/\1/' {} \; || die -} - -src_configure() { - local -x BUILDCC=$(tc-getBUILD_CC) - - local myeconfargs=( - --disable-aa - --disable-optimizations - --disable-rpath - --disable-update-check - --enable-fast-install - --enable-screen - --enable-vcd - --enable-vlc - --enable-vorbis - $(use_enable a52) - $(use_enable alsa) - $(use_enable aom) - $(use_enable archive) - $(use_enable aribsub) - $(use_enable bidi fribidi) - $(use_enable bidi harfbuzz) - $(use_enable bluray) - $(use_enable cddb libcddb) - $(use_enable chromaprint) - $(use_enable chromecast) - $(use_enable chromecast microdns) - $(use_enable cpu_flags_arm_neon neon) - $(use_enable cpu_flags_ppc_altivec altivec) - $(use_enable cpu_flags_x86_mmx mmx) - $(use_enable cpu_flags_x86_sse sse) - $(use_enable dav1d) - $(use_enable dbus) - $(use_enable dbus kwallet) - $(use_enable dc1394) - $(use_enable debug) - $(use_enable directx) - $(use_enable directx d3d11va) - $(use_enable directx dxva2) - $(use_enable dts dca) - $(use_enable dvbpsi) - $(use_enable dvd dvdnav) - $(use_enable dvd dvdread) - $(use_enable encode sout) - $(use_enable encode vlm) - $(use_enable faad) - $(use_enable fdk fdkaac) - $(use_enable ffmpeg avcodec) - $(use_enable ffmpeg avformat) - $(use_enable ffmpeg postproc) - $(use_enable ffmpeg swscale) - $(use_enable flac) - $(use_enable fluidsynth) - $(use_enable fontconfig) - $(use_enable gcrypt libgcrypt) - $(use_enable gme) - $(use_enable gnome-keyring secret) - $(use_enable gstreamer gst-decode) - $(use_enable ieee1394 dv1394) - $(use_enable jack) - $(use_enable jpeg) - $(use_enable kate) - $(use_enable libass) - $(use_enable libcaca caca) - $(use_enable libnotify notify) - $(use_enable libsamplerate samplerate) - $(use_enable libtar) - $(use_enable libtiger tiger) - $(use_enable linsys) - $(use_enable lirc) - $(use_enable live live555) - $(use_enable lua) - $(use_enable macosx-notifications osx-notifications) - $(use_enable mad) - $(use_enable matroska) - $(use_enable modplug mod) - $(use_enable mp3 mpg123) - $(use_enable mpeg libmpeg2) - $(use_enable mtp) - $(use_enable musepack mpc) - $(use_enable ncurses) - $(use_enable nfs) - $(use_enable ogg) - $(use_enable omxil) - $(use_enable omxil omxil-vout) - $(use_enable optimisememory optimize-memory) - $(use_enable opus) - $(use_enable png) - $(use_enable projectm) - $(use_enable pulseaudio pulse) - $(use_enable qt5 qt) - $(use_enable rdp freerdp) - $(use_enable run-as-root) - $(use_enable samba smbclient) - $(use_enable sdl-image) - $(use_enable sftp) - $(use_enable shout) - $(use_enable sid) - $(use_enable skins skins2) - $(use_enable soxr) - $(use_enable speex) - $(use_enable srt) - $(use_enable ssl gnutls) - $(use_enable svg) - $(use_enable svg svgdec) - $(use_enable taglib) - $(use_enable theora) - $(use_enable tremor) - $(use_enable twolame) - $(use_enable udev) - $(use_enable upnp) - $(use_enable v4l v4l2) - $(use_enable vaapi libva) - $(use_enable vdpau) - $(use_enable vnc) - $(use_enable vpx) - $(use_enable wayland) - $(use_with X x) - $(use_enable X xcb) - $(use_enable X xvideo) - $(use_enable x264) - $(use_enable x264 x26410b) - $(use_enable x265) - $(use_enable xml libxml2) - $(use_enable zeroconf avahi) - $(use_enable zvbi) - $(use_enable !zvbi telx) - --with-kde-solid="${EPREFIX}"/usr/share/solid/actions - --disable-asdcp - --disable-coverage - --disable-cprof - --disable-crystalhd - --disable-decklink - --disable-gles2 - --disable-goom - --disable-kai - --disable-kva - --disable-libplacebo - --disable-maintainer-mode - --disable-merge-ffmpeg - --disable-mfx - --disable-mmal - --disable-opencv - --disable-opensles - --disable-oss - --disable-rpi-omxil - --disable-schroedinger - --disable-shine - --disable-sndio - --disable-spatialaudio - --disable-vsxu - --disable-wasapi - --disable-wma-fixed - ) - # ^ We don't have these disabled libraries in the Portage tree yet. - - # Compatibility fix for Samba 4. - use samba && append-cppflags "-I/usr/include/samba-4.0" - - if use x86; then - # We need to disable -fstack-check if use >=gcc 4.8.0. bug #499996 - append-cflags $(test-flags-CC -fno-stack-check) - # Bug 569774 - replace-flags -Os -O2 - fi - - # VLC now requires C++11 after commit 4b1c9dcdda0bbff801e47505ff9dfd3f274eb0d8 - append-cxxflags -std=c++11 - - if use omxil; then - # bug #723006 - # https://trac.videolan.org/vlc/ticket/24617 - append-cflags -fcommon - fi - - # FIXME: Needs libresid-builder from libsidplay:2 which is in another directory... - append-ldflags "-L/usr/$(get_libdir)/sidplay/builders/" - - if use truetype || use bidi; then - myeconfargs+=( --enable-freetype ) - else - myeconfargs+=( --disable-freetype ) - fi - - if use truetype || use projectm; then - local dejavu="${EPREFIX}/usr/share/fonts/dejavu/" - myeconfargs+=( - --with-default-font=${dejavu}/DejaVuSans.ttf - --with-default-font-family=Sans - --with-default-monospace-font=${dejavu}/DejaVuSansMono.ttf - --with-default-monospace-font-family=Monospace - ) - fi - - econf "${myeconfargs[@]}" - - # _FORTIFY_SOURCE is set to 2 in config.h, which is also the default value on Gentoo. - # Other values may break the build (bug 523144), so definition should not be removed. - # To prevent redefinition warnings, we undefine _FORTIFY_SOURCE at the start of config.h - sed -i '1i#undef _FORTIFY_SOURCE' config.h || die -} - -src_test() { - virtx emake check-TESTS -} - -src_install() { - default - find "${ED}" -name '*.la' -delete || die -} - -pkg_postinst() { - if [[ -z "${ROOT}" ]] && [[ -x "${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen" ]] ; then - einfo "Running ${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen on ${EROOT}/usr/$(get_libdir)/vlc/plugins/" - "${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen" "${EROOT}/usr/$(get_libdir)/vlc/plugins/" - else - ewarn "We cannot run vlc-cache-gen (most likely ROOT != /)" - ewarn "Please run ${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen manually" - ewarn "If you do not do it, vlc will take a long time to load." - fi - - xdg_pkg_postinst -} - -pkg_postrm() { - if [[ -e "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat ]]; then - rm "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat || die "Failed to rm plugins.dat" - fi - - xdg_pkg_postrm -} diff --git a/media-video/vlc/vlc-3.0.14-r5.ebuild b/media-video/vlc/vlc-3.0.14-r5.ebuild new file mode 100644 index 000000000000..2e16e99f153e --- /dev/null +++ b/media-video/vlc/vlc-3.0.14-r5.ebuild @@ -0,0 +1,513 @@ +# Copyright 2000-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +LUA_COMPAT=( lua5-{1..2} ) + +MY_PV="${PV/_/-}" +MY_PV="${MY_PV/-beta/-test}" +MY_P="${PN}-${MY_PV}" +if [[ ${PV} = *9999 ]] ; then + if [[ ${PV%.9999} != ${PV} ]] ; then + EGIT_REPO_URI="https://git.videolan.org/git/vlc/vlc-${PV%.9999}.git" + else + EGIT_REPO_URI="https://git.videolan.org/git/vlc.git" + fi + inherit git-r3 +else + SRC_URI="https://code.videolan.org/videolan/vlc-$(ver_cut 1-2)/-/archive/${PV}/vlc-$(ver_cut 1-2)-${PV}.tar.gz" + S="${WORKDIR}/${PN}-$(ver_cut 1-2)-${PV}" + #if [[ ${MY_P} = ${P} ]] ; then + # SRC_URI="https://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.xz" + #else + # SRC_URI="https://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz" + #fi + KEYWORDS="amd64 ~arm arm64 ppc ppc64 -sparc x86" +fi + +inherit autotools flag-o-matic lua-single toolchain-funcs virtualx xdg + +DESCRIPTION="Media player and framework with support for most multimedia files and streaming" +HOMEPAGE="https://www.videolan.org/vlc/" + +LICENSE="LGPL-2.1 GPL-2" +SLOT="0/5-9" # vlc - vlccore + +IUSE="a52 alsa aom archive aribsub bidi bluray cddb chromaprint chromecast + dav1d dbus dc1394 debug directx dts +dvbpsi dvd +encode faad fdk +ffmpeg flac + fluidsynth fontconfig +gcrypt gme gnome-keyring gstreamer ieee1394 jack jpeg kate + libass libcaca libnotify +libsamplerate libtar libtiger linsys lirc + live lua macosx-notifications mad matroska modplug mp3 mpeg mtp musepack ncurses + nfs ogg omxil optimisememory opus png projectm pulseaudio +qt5 rdp + run-as-root samba sdl-image sftp shout sid skins soxr speex srt ssl svg taglib + theora tremor truetype twolame udev upnp vaapi v4l vdpau vnc vpx wayland +X + x264 x265 xml zeroconf zvbi cpu_flags_arm_neon cpu_flags_ppc_altivec cpu_flags_x86_mmx + cpu_flags_x86_sse +" +REQUIRED_USE=" + chromecast? ( encode ) + directx? ( ffmpeg ) + fontconfig? ( truetype ) + libcaca? ( X ) + libtar? ( skins ) + libtiger? ( kate ) + lua? ( ${LUA_REQUIRED_USE} ) + skins? ( qt5 truetype X xml ) + ssl? ( gcrypt ) + vaapi? ( ffmpeg X ) + vdpau? ( ffmpeg X ) +" +BDEPEND=" + >=sys-devel/gettext-0.19.8 + virtual/pkgconfig + lua? ( ${LUA_DEPS} ) + amd64? ( dev-lang/yasm ) + x86? ( dev-lang/yasm ) +" +RDEPEND=" + media-libs/libvorbis + net-dns/libidn:= + sys-libs/zlib[minizip] + virtual/libintl + virtual/opengl + a52? ( media-libs/a52dec ) + alsa? ( media-libs/alsa-lib ) + aom? ( media-libs/libaom:= ) + archive? ( app-arch/libarchive:= ) + aribsub? ( media-libs/aribb24 ) + bidi? ( + dev-libs/fribidi + media-libs/freetype:2[harfbuzz] + media-libs/harfbuzz + virtual/ttf-fonts + ) + bluray? ( >=media-libs/libbluray-1.3.0:= ) + cddb? ( media-libs/libcddb ) + chromaprint? ( media-libs/chromaprint:= ) + chromecast? ( + >=dev-libs/protobuf-2.5.0:= + >=net-libs/libmicrodns-0.1.2:= + ) + dav1d? ( media-libs/dav1d:= ) + dbus? ( sys-apps/dbus ) + dc1394? ( + media-libs/libdc1394:2 + sys-libs/libraw1394 + ) + dts? ( media-libs/libdca ) + dvbpsi? ( >=media-libs/libdvbpsi-1.2.0:= ) + dvd? ( + >=media-libs/libdvdnav-6.1.1:0= + >=media-libs/libdvdread-6.1.2:0= + ) + faad? ( media-libs/faad2 ) + fdk? ( media-libs/fdk-aac:= ) + ffmpeg? ( >=media-video/ffmpeg-3.1.3:0=[postproc,vaapi?,vdpau?] ) + flac? ( + media-libs/flac + media-libs/libogg + ) + fluidsynth? ( media-sound/fluidsynth:= ) + fontconfig? ( media-libs/fontconfig:1.0 ) + gcrypt? ( + dev-libs/libgcrypt:0= + dev-libs/libgpg-error + ) + gme? ( media-libs/game-music-emu ) + gnome-keyring? ( app-crypt/libsecret ) + gstreamer? ( >=media-libs/gst-plugins-base-1.4.5:1.0 ) + ieee1394? ( + sys-libs/libavc1394 + sys-libs/libraw1394 + ) + jack? ( virtual/jack ) + jpeg? ( virtual/jpeg:0 ) + kate? ( media-libs/libkate ) + libass? ( + media-libs/fontconfig:1.0 + media-libs/libass:= + ) + libcaca? ( media-libs/libcaca ) + libnotify? ( + dev-libs/glib:2 + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:3 + x11-libs/libnotify + ) + libsamplerate? ( media-libs/libsamplerate ) + libtar? ( dev-libs/libtar ) + libtiger? ( media-libs/libtiger ) + linsys? ( media-libs/zvbi ) + lirc? ( app-misc/lirc ) + live? ( =dev-libs/libebml-1.4.2:= + media-libs/libmatroska:= + ) + modplug? ( >=media-libs/libmodplug-0.8.9.0 ) + mp3? ( media-sound/mpg123 ) + mpeg? ( media-libs/libmpeg2 ) + mtp? ( media-libs/libmtp:= ) + musepack? ( media-sound/musepack-tools ) + ncurses? ( sys-libs/ncurses:=[unicode(+)] ) + nfs? ( >=net-fs/libnfs-0.10.0:= ) + ogg? ( media-libs/libogg ) + opus? ( >=media-libs/opus-1.0.3 ) + png? ( media-libs/libpng:0= ) + projectm? ( + media-fonts/dejavu + media-libs/libprojectm:0= + ) + pulseaudio? ( media-sound/pulseaudio ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtsvg:5 + dev-qt/qtwidgets:5 + X? ( + dev-qt/qtx11extras:5 + x11-libs/libX11 + ) + ) + rdp? ( >=net-misc/freerdp-2.0.0_rc0:=[client(+)] ) + samba? ( >=net-fs/samba-4.0.0:0[client,-debug(-)] ) + sdl-image? ( media-libs/sdl-image ) + sftp? ( net-libs/libssh2 ) + shout? ( media-libs/libshout ) + sid? ( media-libs/libsidplay:2 ) + skins? ( + x11-libs/libXext + x11-libs/libXinerama + x11-libs/libXpm + ) + soxr? ( >=media-libs/soxr-0.1.2 ) + speex? ( + >=media-libs/speex-1.2.0 + media-libs/speexdsp + ) + srt? ( >=net-libs/srt-1.4.2:= ) + ssl? ( net-libs/gnutls:= ) + svg? ( + gnome-base/librsvg:2 + x11-libs/cairo + ) + taglib? ( >=media-libs/taglib-1.9 ) + theora? ( media-libs/libtheora ) + tremor? ( media-libs/tremor ) + truetype? ( + media-libs/freetype:2 + virtual/ttf-fonts + !fontconfig? ( media-fonts/dejavu ) + ) + twolame? ( media-sound/twolame ) + udev? ( virtual/udev ) + upnp? ( net-libs/libupnp:=[ipv6] ) + v4l? ( media-libs/libv4l:= ) + vaapi? ( x11-libs/libva:=[drm,wayland?,X?] ) + vdpau? ( x11-libs/libvdpau ) + vnc? ( net-libs/libvncserver ) + vpx? ( media-libs/libvpx:= ) + wayland? ( + >=dev-libs/wayland-1.15 + dev-libs/wayland-protocols + ) + X? ( + x11-libs/libX11 + x11-libs/libxcb + x11-libs/xcb-util + x11-libs/xcb-util-keysyms + ) + x264? ( >=media-libs/x264-0.0.20190214:= ) + x265? ( media-libs/x265:= ) + xml? ( dev-libs/libxml2:2 ) + zeroconf? ( net-dns/avahi[dbus] ) + zvbi? ( media-libs/zvbi ) +" +DEPEND="${RDEPEND} + X? ( x11-base/xorg-proto ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch # build system + "${FILESDIR}"/${PN}-2.2.8-freerdp-2.patch # bug 590164 + "${FILESDIR}"/${PN}-3.0.6-fdk-aac-2.0.0.patch # bug 672290 + "${FILESDIR}"/${PN}-3.0.11.1-configure_lua_version.patch + "${FILESDIR}"/${PN}-3.0.11.1-srt-1.4.2.patch # bug 758062 + "${FILESDIR}"/${PN}-3.0.13-srt-1.3.0.patch +) + +DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt ) + +pkg_setup() { + if use lua; then + lua-single_pkg_setup + fi +} + +src_prepare() { + xdg_src_prepare # bug 608256 + + has_version 'net-libs/libupnp:1.8' && \ + eapply "${FILESDIR}"/${PN}-2.2.8-libupnp-slot-1.8.patch + + # Bootstrap when we are on a git checkout. + if [[ ${PV} = *9999 ]] ; then + ./bootstrap + fi + + # Make it build with libtool 1.5 + #rm m4/lt* m4/libtool.m4 || die + + # We are not in a real git checkout due to the absence of a .git directory. + touch src/revision.txt || die + + # Don't use --started-from-file when not using dbus. + if ! use dbus ; then + sed -i 's/ --started-from-file//' share/vlc.desktop.in || die + fi + + # Disable running of vlc-cache-gen, we do that in pkg_postinst + sed -e "/test.*build.*host/s/\$(host)/nothanks/" \ + -i Makefile.am -i bin/Makefile.am || die "Failed to disable vlc-cache-gen" + + # Fix gettext version mismatch errors. + sed -i -e s/GETTEXT_VERSION/GETTEXT_REQUIRE_VERSION/ configure.ac || die + + eautoreconf + + # Disable automatic running of tests. + find . -name 'Makefile.in' -exec sed -i 's/\(..*\)check-TESTS/\1/' {} \; || die +} + +src_configure() { + local -x BUILDCC=$(tc-getBUILD_CC) + + local myeconfargs=( + --disable-aa + --disable-optimizations + --disable-rpath + --disable-update-check + --enable-fast-install + --enable-screen + --enable-vcd + --enable-vlc + --enable-vorbis + $(use_enable a52) + $(use_enable alsa) + $(use_enable aom) + $(use_enable archive) + $(use_enable aribsub) + $(use_enable bidi fribidi) + $(use_enable bidi harfbuzz) + $(use_enable bluray) + $(use_enable cddb libcddb) + $(use_enable chromaprint) + $(use_enable chromecast) + $(use_enable chromecast microdns) + $(use_enable cpu_flags_arm_neon neon) + $(use_enable cpu_flags_ppc_altivec altivec) + $(use_enable cpu_flags_x86_mmx mmx) + $(use_enable cpu_flags_x86_sse sse) + $(use_enable dav1d) + $(use_enable dbus) + $(use_enable dbus kwallet) + $(use_enable dc1394) + $(use_enable debug) + $(use_enable directx) + $(use_enable directx d3d11va) + $(use_enable directx dxva2) + $(use_enable dts dca) + $(use_enable dvbpsi) + $(use_enable dvd dvdnav) + $(use_enable dvd dvdread) + $(use_enable encode sout) + $(use_enable encode vlm) + $(use_enable faad) + $(use_enable fdk fdkaac) + $(use_enable ffmpeg avcodec) + $(use_enable ffmpeg avformat) + $(use_enable ffmpeg postproc) + $(use_enable ffmpeg swscale) + $(use_enable flac) + $(use_enable fluidsynth) + $(use_enable fontconfig) + $(use_enable gcrypt libgcrypt) + $(use_enable gme) + $(use_enable gnome-keyring secret) + $(use_enable gstreamer gst-decode) + $(use_enable ieee1394 dv1394) + $(use_enable jack) + $(use_enable jpeg) + $(use_enable kate) + $(use_enable libass) + $(use_enable libcaca caca) + $(use_enable libnotify notify) + $(use_enable libsamplerate samplerate) + $(use_enable libtar) + $(use_enable libtiger tiger) + $(use_enable linsys) + $(use_enable lirc) + $(use_enable live live555) + $(use_enable lua) + $(use_enable macosx-notifications osx-notifications) + $(use_enable mad) + $(use_enable matroska) + $(use_enable modplug mod) + $(use_enable mp3 mpg123) + $(use_enable mpeg libmpeg2) + $(use_enable mtp) + $(use_enable musepack mpc) + $(use_enable ncurses) + $(use_enable nfs) + $(use_enable ogg) + $(use_enable omxil) + $(use_enable omxil omxil-vout) + $(use_enable optimisememory optimize-memory) + $(use_enable opus) + $(use_enable png) + $(use_enable projectm) + $(use_enable pulseaudio pulse) + $(use_enable qt5 qt) + $(use_enable rdp freerdp) + $(use_enable run-as-root) + $(use_enable samba smbclient) + $(use_enable sdl-image) + $(use_enable sftp) + $(use_enable shout) + $(use_enable sid) + $(use_enable skins skins2) + $(use_enable soxr) + $(use_enable speex) + $(use_enable srt) + $(use_enable ssl gnutls) + $(use_enable svg) + $(use_enable svg svgdec) + $(use_enable taglib) + $(use_enable theora) + $(use_enable tremor) + $(use_enable twolame) + $(use_enable udev) + $(use_enable upnp) + $(use_enable v4l v4l2) + $(use_enable vaapi libva) + $(use_enable vdpau) + $(use_enable vnc) + $(use_enable vpx) + $(use_enable wayland) + $(use_with X x) + $(use_enable X xcb) + $(use_enable X xvideo) + $(use_enable x264) + $(use_enable x264 x26410b) + $(use_enable x265) + $(use_enable xml libxml2) + $(use_enable zeroconf avahi) + $(use_enable zvbi) + $(use_enable !zvbi telx) + --with-kde-solid="${EPREFIX}"/usr/share/solid/actions + --disable-asdcp + --disable-coverage + --disable-cprof + --disable-crystalhd + --disable-decklink + --disable-gles2 + --disable-goom + --disable-kai + --disable-kva + --disable-libplacebo + --disable-maintainer-mode + --disable-merge-ffmpeg + --disable-mfx + --disable-mmal + --disable-opencv + --disable-opensles + --disable-oss + --disable-rpi-omxil + --disable-schroedinger + --disable-shine + --disable-sndio + --disable-spatialaudio + --disable-vsxu + --disable-wasapi + --disable-wma-fixed + ) + # ^ We don't have these disabled libraries in the Portage tree yet. + + # Compatibility fix for Samba 4. + use samba && append-cppflags "-I/usr/include/samba-4.0" + + if use x86; then + # We need to disable -fstack-check if use >=gcc 4.8.0. bug #499996 + append-cflags $(test-flags-CC -fno-stack-check) + # Bug 569774 + replace-flags -Os -O2 + fi + + # VLC now requires C++11 after commit 4b1c9dcdda0bbff801e47505ff9dfd3f274eb0d8 + append-cxxflags -std=c++11 + + if use omxil; then + # bug #723006 + # https://trac.videolan.org/vlc/ticket/24617 + append-cflags -fcommon + fi + + # FIXME: Needs libresid-builder from libsidplay:2 which is in another directory... + append-ldflags "-L/usr/$(get_libdir)/sidplay/builders/" + + if use truetype || use bidi; then + myeconfargs+=( --enable-freetype ) + else + myeconfargs+=( --disable-freetype ) + fi + + if use truetype || use projectm; then + local dejavu="${EPREFIX}/usr/share/fonts/dejavu/" + myeconfargs+=( + --with-default-font=${dejavu}/DejaVuSans.ttf + --with-default-font-family=Sans + --with-default-monospace-font=${dejavu}/DejaVuSansMono.ttf + --with-default-monospace-font-family=Monospace + ) + fi + + econf "${myeconfargs[@]}" + + # _FORTIFY_SOURCE is set to 2 in config.h, which is also the default value on Gentoo. + # Other values may break the build (bug 523144), so definition should not be removed. + # To prevent redefinition warnings, we undefine _FORTIFY_SOURCE at the start of config.h + sed -i '1i#undef _FORTIFY_SOURCE' config.h || die +} + +src_test() { + virtx emake check-TESTS +} + +src_install() { + default + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + if [[ -z "${ROOT}" ]] && [[ -x "${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen" ]] ; then + einfo "Running ${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen on ${EROOT}/usr/$(get_libdir)/vlc/plugins/" + "${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen" "${EROOT}/usr/$(get_libdir)/vlc/plugins/" + else + ewarn "We cannot run vlc-cache-gen (most likely ROOT != /)" + ewarn "Please run ${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen manually" + ewarn "If you do not do it, vlc will take a long time to load." + fi + + xdg_pkg_postinst +} + +pkg_postrm() { + if [[ -e "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat ]]; then + rm "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat || die "Failed to rm plugins.dat" + fi + + xdg_pkg_postrm +} diff --git a/media-video/vlc/vlc-3.0.14-r6.ebuild b/media-video/vlc/vlc-3.0.14-r6.ebuild new file mode 100644 index 000000000000..08c473c7b881 --- /dev/null +++ b/media-video/vlc/vlc-3.0.14-r6.ebuild @@ -0,0 +1,514 @@ +# Copyright 2000-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +LUA_COMPAT=( lua5-{1..2} ) + +MY_PV="${PV/_/-}" +MY_PV="${MY_PV/-beta/-test}" +MY_P="${PN}-${MY_PV}" +if [[ ${PV} = *9999 ]] ; then + if [[ ${PV%.9999} != ${PV} ]] ; then + EGIT_REPO_URI="https://git.videolan.org/git/vlc/vlc-${PV%.9999}.git" + else + EGIT_REPO_URI="https://git.videolan.org/git/vlc.git" + fi + inherit git-r3 +else + SRC_URI="https://code.videolan.org/videolan/vlc-$(ver_cut 1-2)/-/archive/${PV}/vlc-$(ver_cut 1-2)-${PV}.tar.gz" + S="${WORKDIR}/${PN}-$(ver_cut 1-2)-${PV}" + #if [[ ${MY_P} = ${P} ]] ; then + # SRC_URI="https://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.xz" + #else + # SRC_URI="https://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz" + #fi + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 -sparc ~x86" +fi + +inherit autotools flag-o-matic lua-single toolchain-funcs virtualx xdg + +DESCRIPTION="Media player and framework with support for most multimedia files and streaming" +HOMEPAGE="https://www.videolan.org/vlc/" + +LICENSE="LGPL-2.1 GPL-2" +SLOT="0/5-9" # vlc - vlccore + +IUSE="a52 alsa aom archive aribsub bidi bluray cddb chromaprint chromecast + dav1d dbus dc1394 debug directx dts +dvbpsi dvd +encode faad fdk +ffmpeg flac + fluidsynth fontconfig +gcrypt gme gnome-keyring gstreamer ieee1394 jack jpeg kate + libass libcaca libnotify +libsamplerate libtar libtiger linsys lirc + live lua macosx-notifications mad matroska modplug mp3 mpeg mtp musepack ncurses + nfs ogg omxil optimisememory opus png projectm pulseaudio +qt5 rdp + run-as-root samba sdl-image sftp shout sid skins soxr speex srt ssl svg taglib + theora tremor truetype twolame udev upnp vaapi v4l vdpau vnc vpx wayland +X + x264 x265 xml zeroconf zvbi cpu_flags_arm_neon cpu_flags_ppc_altivec cpu_flags_x86_mmx + cpu_flags_x86_sse +" +REQUIRED_USE=" + chromecast? ( encode ) + directx? ( ffmpeg ) + fontconfig? ( truetype ) + libcaca? ( X ) + libtar? ( skins ) + libtiger? ( kate ) + lua? ( ${LUA_REQUIRED_USE} ) + skins? ( qt5 truetype X xml ) + ssl? ( gcrypt ) + vaapi? ( ffmpeg X ) + vdpau? ( ffmpeg X ) +" +BDEPEND=" + >=sys-devel/gettext-0.19.8 + virtual/pkgconfig + lua? ( ${LUA_DEPS} ) + amd64? ( dev-lang/yasm ) + x86? ( dev-lang/yasm ) +" +RDEPEND=" + media-libs/libvorbis + net-dns/libidn:= + sys-libs/zlib[minizip] + virtual/libintl + virtual/opengl + a52? ( media-libs/a52dec ) + alsa? ( media-libs/alsa-lib ) + aom? ( media-libs/libaom:= ) + archive? ( app-arch/libarchive:= ) + aribsub? ( media-libs/aribb24 ) + bidi? ( + dev-libs/fribidi + media-libs/freetype:2[harfbuzz] + media-libs/harfbuzz + virtual/ttf-fonts + ) + bluray? ( >=media-libs/libbluray-1.3.0:= ) + cddb? ( media-libs/libcddb ) + chromaprint? ( media-libs/chromaprint:= ) + chromecast? ( + >=dev-libs/protobuf-2.5.0:= + >=net-libs/libmicrodns-0.1.2:= + ) + dav1d? ( media-libs/dav1d:= ) + dbus? ( sys-apps/dbus ) + dc1394? ( + media-libs/libdc1394:2 + sys-libs/libraw1394 + ) + dts? ( media-libs/libdca ) + dvbpsi? ( >=media-libs/libdvbpsi-1.2.0:= ) + dvd? ( + >=media-libs/libdvdnav-6.1.1:0= + >=media-libs/libdvdread-6.1.2:0= + ) + faad? ( media-libs/faad2 ) + fdk? ( media-libs/fdk-aac:= ) + ffmpeg? ( >=media-video/ffmpeg-3.1.3:0=[postproc,vaapi?,vdpau?] ) + flac? ( + media-libs/flac + media-libs/libogg + ) + fluidsynth? ( media-sound/fluidsynth:= ) + fontconfig? ( media-libs/fontconfig:1.0 ) + gcrypt? ( + dev-libs/libgcrypt:0= + dev-libs/libgpg-error + ) + gme? ( media-libs/game-music-emu ) + gnome-keyring? ( app-crypt/libsecret ) + gstreamer? ( >=media-libs/gst-plugins-base-1.4.5:1.0 ) + ieee1394? ( + sys-libs/libavc1394 + sys-libs/libraw1394 + ) + jack? ( virtual/jack ) + jpeg? ( virtual/jpeg:0 ) + kate? ( media-libs/libkate ) + libass? ( + media-libs/fontconfig:1.0 + media-libs/libass:= + ) + libcaca? ( media-libs/libcaca ) + libnotify? ( + dev-libs/glib:2 + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:3 + x11-libs/libnotify + ) + libsamplerate? ( media-libs/libsamplerate ) + libtar? ( dev-libs/libtar ) + libtiger? ( media-libs/libtiger ) + linsys? ( media-libs/zvbi ) + lirc? ( app-misc/lirc ) + live? ( >=media-plugins/live-2021.05.22:= ) + lua? ( ${LUA_DEPS} ) + mad? ( media-libs/libmad ) + matroska? ( + >=dev-libs/libebml-1.4.2:= + media-libs/libmatroska:= + ) + modplug? ( >=media-libs/libmodplug-0.8.9.0 ) + mp3? ( media-sound/mpg123 ) + mpeg? ( media-libs/libmpeg2 ) + mtp? ( media-libs/libmtp:= ) + musepack? ( media-sound/musepack-tools ) + ncurses? ( sys-libs/ncurses:=[unicode(+)] ) + nfs? ( >=net-fs/libnfs-0.10.0:= ) + ogg? ( media-libs/libogg ) + opus? ( >=media-libs/opus-1.0.3 ) + png? ( media-libs/libpng:0= ) + projectm? ( + media-fonts/dejavu + media-libs/libprojectm:0= + ) + pulseaudio? ( media-sound/pulseaudio ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtsvg:5 + dev-qt/qtwidgets:5 + X? ( + dev-qt/qtx11extras:5 + x11-libs/libX11 + ) + ) + rdp? ( >=net-misc/freerdp-2.0.0_rc0:=[client(+)] ) + samba? ( >=net-fs/samba-4.0.0:0[client,-debug(-)] ) + sdl-image? ( media-libs/sdl-image ) + sftp? ( net-libs/libssh2 ) + shout? ( media-libs/libshout ) + sid? ( media-libs/libsidplay:2 ) + skins? ( + x11-libs/libXext + x11-libs/libXinerama + x11-libs/libXpm + ) + soxr? ( >=media-libs/soxr-0.1.2 ) + speex? ( + >=media-libs/speex-1.2.0 + media-libs/speexdsp + ) + srt? ( >=net-libs/srt-1.4.2:= ) + ssl? ( net-libs/gnutls:= ) + svg? ( + gnome-base/librsvg:2 + x11-libs/cairo + ) + taglib? ( >=media-libs/taglib-1.9 ) + theora? ( media-libs/libtheora ) + tremor? ( media-libs/tremor ) + truetype? ( + media-libs/freetype:2 + virtual/ttf-fonts + !fontconfig? ( media-fonts/dejavu ) + ) + twolame? ( media-sound/twolame ) + udev? ( virtual/udev ) + upnp? ( net-libs/libupnp:=[ipv6] ) + v4l? ( media-libs/libv4l:= ) + vaapi? ( x11-libs/libva:=[drm,wayland?,X?] ) + vdpau? ( x11-libs/libvdpau ) + vnc? ( net-libs/libvncserver ) + vpx? ( media-libs/libvpx:= ) + wayland? ( + >=dev-libs/wayland-1.15 + dev-libs/wayland-protocols + ) + X? ( + x11-libs/libX11 + x11-libs/libxcb + x11-libs/xcb-util + x11-libs/xcb-util-keysyms + ) + x264? ( >=media-libs/x264-0.0.20190214:= ) + x265? ( media-libs/x265:= ) + xml? ( dev-libs/libxml2:2 ) + zeroconf? ( net-dns/avahi[dbus] ) + zvbi? ( media-libs/zvbi ) +" +DEPEND="${RDEPEND} + X? ( x11-base/xorg-proto ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch # build system + "${FILESDIR}"/${PN}-2.2.8-freerdp-2.patch # bug 590164 + "${FILESDIR}"/${PN}-3.0.6-fdk-aac-2.0.0.patch # bug 672290 + "${FILESDIR}"/${PN}-3.0.11.1-configure_lua_version.patch + "${FILESDIR}"/${PN}-3.0.11.1-srt-1.4.2.patch # bug 758062 + "${FILESDIR}"/${PN}-3.0.13-srt-1.3.0.patch + "${FILESDIR}"/${PN}-3.0.14-fix-live-address-api.patch # bug 795798 +) + +DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt ) + +pkg_setup() { + if use lua; then + lua-single_pkg_setup + fi +} + +src_prepare() { + xdg_src_prepare # bug 608256 + + has_version 'net-libs/libupnp:1.8' && \ + eapply "${FILESDIR}"/${PN}-2.2.8-libupnp-slot-1.8.patch + + # Bootstrap when we are on a git checkout. + if [[ ${PV} = *9999 ]] ; then + ./bootstrap + fi + + # Make it build with libtool 1.5 + #rm m4/lt* m4/libtool.m4 || die + + # We are not in a real git checkout due to the absence of a .git directory. + touch src/revision.txt || die + + # Don't use --started-from-file when not using dbus. + if ! use dbus ; then + sed -i 's/ --started-from-file//' share/vlc.desktop.in || die + fi + + # Disable running of vlc-cache-gen, we do that in pkg_postinst + sed -e "/test.*build.*host/s/\$(host)/nothanks/" \ + -i Makefile.am -i bin/Makefile.am || die "Failed to disable vlc-cache-gen" + + # Fix gettext version mismatch errors. + sed -i -e s/GETTEXT_VERSION/GETTEXT_REQUIRE_VERSION/ configure.ac || die + + eautoreconf + + # Disable automatic running of tests. + find . -name 'Makefile.in' -exec sed -i 's/\(..*\)check-TESTS/\1/' {} \; || die +} + +src_configure() { + local -x BUILDCC=$(tc-getBUILD_CC) + + local myeconfargs=( + --disable-aa + --disable-optimizations + --disable-rpath + --disable-update-check + --enable-fast-install + --enable-screen + --enable-vcd + --enable-vlc + --enable-vorbis + $(use_enable a52) + $(use_enable alsa) + $(use_enable aom) + $(use_enable archive) + $(use_enable aribsub) + $(use_enable bidi fribidi) + $(use_enable bidi harfbuzz) + $(use_enable bluray) + $(use_enable cddb libcddb) + $(use_enable chromaprint) + $(use_enable chromecast) + $(use_enable chromecast microdns) + $(use_enable cpu_flags_arm_neon neon) + $(use_enable cpu_flags_ppc_altivec altivec) + $(use_enable cpu_flags_x86_mmx mmx) + $(use_enable cpu_flags_x86_sse sse) + $(use_enable dav1d) + $(use_enable dbus) + $(use_enable dbus kwallet) + $(use_enable dc1394) + $(use_enable debug) + $(use_enable directx) + $(use_enable directx d3d11va) + $(use_enable directx dxva2) + $(use_enable dts dca) + $(use_enable dvbpsi) + $(use_enable dvd dvdnav) + $(use_enable dvd dvdread) + $(use_enable encode sout) + $(use_enable encode vlm) + $(use_enable faad) + $(use_enable fdk fdkaac) + $(use_enable ffmpeg avcodec) + $(use_enable ffmpeg avformat) + $(use_enable ffmpeg postproc) + $(use_enable ffmpeg swscale) + $(use_enable flac) + $(use_enable fluidsynth) + $(use_enable fontconfig) + $(use_enable gcrypt libgcrypt) + $(use_enable gme) + $(use_enable gnome-keyring secret) + $(use_enable gstreamer gst-decode) + $(use_enable ieee1394 dv1394) + $(use_enable jack) + $(use_enable jpeg) + $(use_enable kate) + $(use_enable libass) + $(use_enable libcaca caca) + $(use_enable libnotify notify) + $(use_enable libsamplerate samplerate) + $(use_enable libtar) + $(use_enable libtiger tiger) + $(use_enable linsys) + $(use_enable lirc) + $(use_enable live live555) + $(use_enable lua) + $(use_enable macosx-notifications osx-notifications) + $(use_enable mad) + $(use_enable matroska) + $(use_enable modplug mod) + $(use_enable mp3 mpg123) + $(use_enable mpeg libmpeg2) + $(use_enable mtp) + $(use_enable musepack mpc) + $(use_enable ncurses) + $(use_enable nfs) + $(use_enable ogg) + $(use_enable omxil) + $(use_enable omxil omxil-vout) + $(use_enable optimisememory optimize-memory) + $(use_enable opus) + $(use_enable png) + $(use_enable projectm) + $(use_enable pulseaudio pulse) + $(use_enable qt5 qt) + $(use_enable rdp freerdp) + $(use_enable run-as-root) + $(use_enable samba smbclient) + $(use_enable sdl-image) + $(use_enable sftp) + $(use_enable shout) + $(use_enable sid) + $(use_enable skins skins2) + $(use_enable soxr) + $(use_enable speex) + $(use_enable srt) + $(use_enable ssl gnutls) + $(use_enable svg) + $(use_enable svg svgdec) + $(use_enable taglib) + $(use_enable theora) + $(use_enable tremor) + $(use_enable twolame) + $(use_enable udev) + $(use_enable upnp) + $(use_enable v4l v4l2) + $(use_enable vaapi libva) + $(use_enable vdpau) + $(use_enable vnc) + $(use_enable vpx) + $(use_enable wayland) + $(use_with X x) + $(use_enable X xcb) + $(use_enable X xvideo) + $(use_enable x264) + $(use_enable x264 x26410b) + $(use_enable x265) + $(use_enable xml libxml2) + $(use_enable zeroconf avahi) + $(use_enable zvbi) + $(use_enable !zvbi telx) + --with-kde-solid="${EPREFIX}"/usr/share/solid/actions + --disable-asdcp + --disable-coverage + --disable-cprof + --disable-crystalhd + --disable-decklink + --disable-gles2 + --disable-goom + --disable-kai + --disable-kva + --disable-libplacebo + --disable-maintainer-mode + --disable-merge-ffmpeg + --disable-mfx + --disable-mmal + --disable-opencv + --disable-opensles + --disable-oss + --disable-rpi-omxil + --disable-schroedinger + --disable-shine + --disable-sndio + --disable-spatialaudio + --disable-vsxu + --disable-wasapi + --disable-wma-fixed + ) + # ^ We don't have these disabled libraries in the Portage tree yet. + + # Compatibility fix for Samba 4. + use samba && append-cppflags "-I/usr/include/samba-4.0" + + if use x86; then + # We need to disable -fstack-check if use >=gcc 4.8.0. bug #499996 + append-cflags $(test-flags-CC -fno-stack-check) + # Bug 569774 + replace-flags -Os -O2 + fi + + # VLC now requires C++11 after commit 4b1c9dcdda0bbff801e47505ff9dfd3f274eb0d8 + append-cxxflags -std=c++11 + + if use omxil; then + # bug #723006 + # https://trac.videolan.org/vlc/ticket/24617 + append-cflags -fcommon + fi + + # FIXME: Needs libresid-builder from libsidplay:2 which is in another directory... + append-ldflags "-L/usr/$(get_libdir)/sidplay/builders/" + + if use truetype || use bidi; then + myeconfargs+=( --enable-freetype ) + else + myeconfargs+=( --disable-freetype ) + fi + + if use truetype || use projectm; then + local dejavu="${EPREFIX}/usr/share/fonts/dejavu/" + myeconfargs+=( + --with-default-font=${dejavu}/DejaVuSans.ttf + --with-default-font-family=Sans + --with-default-monospace-font=${dejavu}/DejaVuSansMono.ttf + --with-default-monospace-font-family=Monospace + ) + fi + + econf "${myeconfargs[@]}" + + # _FORTIFY_SOURCE is set to 2 in config.h, which is also the default value on Gentoo. + # Other values may break the build (bug 523144), so definition should not be removed. + # To prevent redefinition warnings, we undefine _FORTIFY_SOURCE at the start of config.h + sed -i '1i#undef _FORTIFY_SOURCE' config.h || die +} + +src_test() { + virtx emake check-TESTS +} + +src_install() { + default + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + if [[ -z "${ROOT}" ]] && [[ -x "${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen" ]] ; then + einfo "Running ${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen on ${EROOT}/usr/$(get_libdir)/vlc/plugins/" + "${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen" "${EROOT}/usr/$(get_libdir)/vlc/plugins/" + else + ewarn "We cannot run vlc-cache-gen (most likely ROOT != /)" + ewarn "Please run ${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen manually" + ewarn "If you do not do it, vlc will take a long time to load." + fi + + xdg_pkg_postinst +} + +pkg_postrm() { + if [[ -e "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat ]]; then + rm "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat || die "Failed to rm plugins.dat" + fi + + xdg_pkg_postrm +} diff --git a/media-video/vlc/vlc-3.0.16-r3.ebuild b/media-video/vlc/vlc-3.0.16-r3.ebuild deleted file mode 100644 index 9b318671ab20..000000000000 --- a/media-video/vlc/vlc-3.0.16-r3.ebuild +++ /dev/null @@ -1,514 +0,0 @@ -# Copyright 2000-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -LUA_COMPAT=( lua5-{1..2} ) - -MY_PV="${PV/_/-}" -MY_PV="${MY_PV/-beta/-test}" -MY_P="${PN}-${MY_PV}" -if [[ ${PV} = *9999 ]] ; then - if [[ ${PV%.9999} != ${PV} ]] ; then - EGIT_REPO_URI="https://git.videolan.org/git/vlc/vlc-${PV%.9999}.git" - else - EGIT_REPO_URI="https://git.videolan.org/git/vlc.git" - fi - inherit git-r3 -else - SRC_URI="https://get.videolan.org/vlc/${PV}/${P}.tar.xz" - #S="${WORKDIR}/${PN}-$(ver_cut 1-2)-${PV}" - #SRC_URI="https://code.videolan.org/videolan/vlc-$(ver_cut 1-2)/-/archive/${PV}/vlc-$(ver_cut 1-2)-${PV}.tar.gz" - #if [[ ${MY_P} = ${P} ]] ; then - # SRC_URI="https://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.xz" - #else - # SRC_URI="https://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz" - #fi - KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 -sparc ~x86" -fi - -inherit autotools flag-o-matic lua-single toolchain-funcs virtualx xdg - -DESCRIPTION="Media player and framework with support for most multimedia files and streaming" -HOMEPAGE="https://www.videolan.org/vlc/" - -LICENSE="LGPL-2.1 GPL-2" -SLOT="0/5-9" # vlc - vlccore - -IUSE="a52 alsa aom archive aribsub bidi bluray cddb chromaprint chromecast - dav1d dbus dc1394 debug directx dts +dvbpsi dvd +encode faad fdk +ffmpeg flac - fluidsynth fontconfig +gcrypt gme gnome-keyring gstreamer ieee1394 jack jpeg kate - libass libcaca libnotify +libsamplerate libtar libtiger linsys lirc - live lua macosx-notifications mad matroska modplug mp3 mpeg mtp musepack ncurses - nfs ogg omxil optimisememory opus png projectm pulseaudio +qt5 rdp - run-as-root samba sdl-image sftp shout sid skins soxr speex srt ssl svg taglib - theora tremor truetype twolame udev upnp vaapi v4l vdpau vnc vpx wayland +X - x264 x265 xml zeroconf zvbi cpu_flags_arm_neon cpu_flags_ppc_altivec cpu_flags_x86_mmx - cpu_flags_x86_sse -" -REQUIRED_USE=" - chromecast? ( encode ) - directx? ( ffmpeg ) - fontconfig? ( truetype ) - libcaca? ( X ) - libtar? ( skins ) - libtiger? ( kate ) - lua? ( ${LUA_REQUIRED_USE} ) - skins? ( qt5 truetype X xml ) - ssl? ( gcrypt ) - vaapi? ( ffmpeg X ) - vdpau? ( ffmpeg X ) -" -BDEPEND=" - >=sys-devel/gettext-0.19.8 - virtual/pkgconfig - lua? ( ${LUA_DEPS} ) - amd64? ( dev-lang/yasm ) - x86? ( dev-lang/yasm ) -" -RDEPEND=" - media-libs/libvorbis - net-dns/libidn:= - sys-libs/zlib[minizip] - virtual/libintl - virtual/opengl - a52? ( media-libs/a52dec ) - alsa? ( media-libs/alsa-lib ) - aom? ( media-libs/libaom:= ) - archive? ( app-arch/libarchive:= ) - aribsub? ( media-libs/aribb24 ) - bidi? ( - dev-libs/fribidi - media-libs/freetype:2[harfbuzz] - media-libs/harfbuzz - virtual/ttf-fonts - ) - bluray? ( >=media-libs/libbluray-1.3.0:= ) - cddb? ( media-libs/libcddb ) - chromaprint? ( media-libs/chromaprint:= ) - chromecast? ( - >=dev-libs/protobuf-2.5.0:= - >=net-libs/libmicrodns-0.1.2:= - ) - dav1d? ( media-libs/dav1d:= ) - dbus? ( sys-apps/dbus ) - dc1394? ( - media-libs/libdc1394:2 - sys-libs/libraw1394 - ) - dts? ( media-libs/libdca ) - dvbpsi? ( >=media-libs/libdvbpsi-1.2.0:= ) - dvd? ( - >=media-libs/libdvdnav-6.1.1:0= - >=media-libs/libdvdread-6.1.2:0= - ) - faad? ( media-libs/faad2 ) - fdk? ( media-libs/fdk-aac:= ) - ffmpeg? ( >=media-video/ffmpeg-3.1.3:0=[postproc,vaapi?,vdpau?] ) - flac? ( - media-libs/flac - media-libs/libogg - ) - fluidsynth? ( media-sound/fluidsynth:= ) - fontconfig? ( media-libs/fontconfig:1.0 ) - gcrypt? ( - dev-libs/libgcrypt:0= - dev-libs/libgpg-error - ) - gme? ( media-libs/game-music-emu ) - gnome-keyring? ( app-crypt/libsecret ) - gstreamer? ( >=media-libs/gst-plugins-base-1.4.5:1.0 ) - ieee1394? ( - sys-libs/libavc1394 - sys-libs/libraw1394 - ) - jack? ( virtual/jack ) - jpeg? ( virtual/jpeg:0 ) - kate? ( media-libs/libkate ) - libass? ( - media-libs/fontconfig:1.0 - media-libs/libass:= - ) - libcaca? ( media-libs/libcaca ) - libnotify? ( - dev-libs/glib:2 - x11-libs/gdk-pixbuf:2 - x11-libs/gtk+:3 - x11-libs/libnotify - ) - libsamplerate? ( media-libs/libsamplerate ) - libtar? ( dev-libs/libtar ) - libtiger? ( media-libs/libtiger ) - linsys? ( media-libs/zvbi ) - lirc? ( app-misc/lirc ) - live? ( =dev-libs/libebml-1.4.2:= - media-libs/libmatroska:= - ) - modplug? ( >=media-libs/libmodplug-0.8.9.0 ) - mp3? ( media-sound/mpg123 ) - mpeg? ( media-libs/libmpeg2 ) - mtp? ( media-libs/libmtp:= ) - musepack? ( media-sound/musepack-tools ) - ncurses? ( sys-libs/ncurses:0=[unicode] ) - nfs? ( >=net-fs/libnfs-0.10.0:= ) - ogg? ( media-libs/libogg ) - opus? ( >=media-libs/opus-1.0.3 ) - png? ( media-libs/libpng:0= ) - projectm? ( - media-fonts/dejavu - media-libs/libprojectm:0= - ) - pulseaudio? ( media-sound/pulseaudio ) - qt5? ( - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtsvg:5 - dev-qt/qtwidgets:5 - X? ( - dev-qt/qtx11extras:5 - x11-libs/libX11 - ) - ) - rdp? ( >=net-misc/freerdp-2.0.0_rc0:=[client(+)] ) - samba? ( >=net-fs/samba-4.0.0:0[client,-debug(-)] ) - sdl-image? ( media-libs/sdl-image ) - sftp? ( net-libs/libssh2 ) - shout? ( media-libs/libshout ) - sid? ( media-libs/libsidplay:2 ) - skins? ( - x11-libs/libXext - x11-libs/libXinerama - x11-libs/libXpm - ) - soxr? ( >=media-libs/soxr-0.1.2 ) - speex? ( - >=media-libs/speex-1.2.0 - media-libs/speexdsp - ) - srt? ( >=net-libs/srt-1.4.2:= ) - ssl? ( net-libs/gnutls:= ) - svg? ( - gnome-base/librsvg:2 - x11-libs/cairo - ) - taglib? ( >=media-libs/taglib-1.9 ) - theora? ( media-libs/libtheora ) - tremor? ( media-libs/tremor ) - truetype? ( - media-libs/freetype:2 - virtual/ttf-fonts - !fontconfig? ( media-fonts/dejavu ) - ) - twolame? ( media-sound/twolame ) - udev? ( virtual/udev ) - upnp? ( net-libs/libupnp:=[ipv6] ) - v4l? ( media-libs/libv4l:= ) - vaapi? ( x11-libs/libva:=[drm,wayland?,X?] ) - vdpau? ( x11-libs/libvdpau ) - vnc? ( net-libs/libvncserver ) - vpx? ( media-libs/libvpx:= ) - wayland? ( - >=dev-libs/wayland-1.15 - dev-libs/wayland-protocols - ) - X? ( - x11-libs/libX11 - x11-libs/libxcb - x11-libs/xcb-util - x11-libs/xcb-util-keysyms - ) - x264? ( >=media-libs/x264-0.0.20190214:= ) - x265? ( media-libs/x265:= ) - xml? ( dev-libs/libxml2:2 ) - zeroconf? ( net-dns/avahi[dbus] ) - zvbi? ( media-libs/zvbi ) -" -DEPEND="${RDEPEND} - X? ( x11-base/xorg-proto ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch # build system - "${FILESDIR}"/${PN}-2.2.8-freerdp-2.patch # bug 590164 - "${FILESDIR}"/${PN}-3.0.6-fdk-aac-2.0.0.patch # bug 672290 - "${FILESDIR}"/${PN}-3.0.11.1-configure_lua_version.patch - "${FILESDIR}"/${PN}-3.0.11.1-srt-1.4.2.patch # bug 758062 - "${FILESDIR}"/${PN}-3.0.13-srt-1.3.0.patch -) - -DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt ) - -pkg_setup() { - if use lua; then - lua-single_pkg_setup - fi -} - -src_prepare() { - xdg_src_prepare # bug 608256 - - has_version 'net-libs/libupnp:1.8' && \ - eapply "${FILESDIR}"/${PN}-2.2.8-libupnp-slot-1.8.patch - - # Bootstrap when we are on a git checkout. - if [[ ${PV} = *9999 ]] ; then - ./bootstrap - fi - - # Make it build with libtool 1.5 - #rm m4/lt* m4/libtool.m4 || die - - # We are not in a real git checkout due to the absence of a .git directory. - touch src/revision.txt || die - - # Don't use --started-from-file when not using dbus. - if ! use dbus ; then - sed -i 's/ --started-from-file//' share/vlc.desktop.in || die - fi - - # Disable running of vlc-cache-gen, we do that in pkg_postinst - sed -e "/test.*build.*host/s/\$(host)/nothanks/" \ - -i Makefile.am -i bin/Makefile.am || die "Failed to disable vlc-cache-gen" - - # Fix gettext version mismatch errors. - sed -i -e s/GETTEXT_VERSION/GETTEXT_REQUIRE_VERSION/ configure.ac || die - - eautoreconf - - # Disable automatic running of tests. - find . -name 'Makefile.in' -exec sed -i 's/\(..*\)check-TESTS/\1/' {} \; || die -} - -src_configure() { - local -x BUILDCC=$(tc-getBUILD_CC) - - local myeconfargs=( - --disable-aa - --disable-optimizations - --disable-rpath - --disable-update-check - --enable-fast-install - --enable-screen - --enable-vcd - --enable-vlc - --enable-vorbis - $(use_enable a52) - $(use_enable alsa) - $(use_enable aom) - $(use_enable archive) - $(use_enable aribsub) - $(use_enable bidi fribidi) - $(use_enable bidi harfbuzz) - $(use_enable bluray) - $(use_enable cddb libcddb) - $(use_enable chromaprint) - $(use_enable chromecast) - $(use_enable chromecast microdns) - $(use_enable cpu_flags_arm_neon neon) - $(use_enable cpu_flags_ppc_altivec altivec) - $(use_enable cpu_flags_x86_mmx mmx) - $(use_enable cpu_flags_x86_sse sse) - $(use_enable dav1d) - $(use_enable dbus) - $(use_enable dbus kwallet) - $(use_enable dc1394) - $(use_enable debug) - $(use_enable directx) - $(use_enable directx d3d11va) - $(use_enable directx dxva2) - $(use_enable dts dca) - $(use_enable dvbpsi) - $(use_enable dvd dvdnav) - $(use_enable dvd dvdread) - $(use_enable encode sout) - $(use_enable encode vlm) - $(use_enable faad) - $(use_enable fdk fdkaac) - $(use_enable ffmpeg avcodec) - $(use_enable ffmpeg avformat) - $(use_enable ffmpeg postproc) - $(use_enable ffmpeg swscale) - $(use_enable flac) - $(use_enable fluidsynth) - $(use_enable fontconfig) - $(use_enable gcrypt libgcrypt) - $(use_enable gme) - $(use_enable gnome-keyring secret) - $(use_enable gstreamer gst-decode) - $(use_enable ieee1394 dv1394) - $(use_enable jack) - $(use_enable jpeg) - $(use_enable kate) - $(use_enable libass) - $(use_enable libcaca caca) - $(use_enable libnotify notify) - $(use_enable libsamplerate samplerate) - $(use_enable libtar) - $(use_enable libtiger tiger) - $(use_enable linsys) - $(use_enable lirc) - $(use_enable live live555) - $(use_enable lua) - $(use_enable macosx-notifications osx-notifications) - $(use_enable mad) - $(use_enable matroska) - $(use_enable modplug mod) - $(use_enable mp3 mpg123) - $(use_enable mpeg libmpeg2) - $(use_enable mtp) - $(use_enable musepack mpc) - $(use_enable ncurses) - $(use_enable nfs) - $(use_enable ogg) - $(use_enable omxil) - $(use_enable omxil omxil-vout) - $(use_enable optimisememory optimize-memory) - $(use_enable opus) - $(use_enable png) - $(use_enable projectm) - $(use_enable pulseaudio pulse) - $(use_enable qt5 qt) - $(use_enable rdp freerdp) - $(use_enable run-as-root) - $(use_enable samba smbclient) - $(use_enable sdl-image) - $(use_enable sftp) - $(use_enable shout) - $(use_enable sid) - $(use_enable skins skins2) - $(use_enable soxr) - $(use_enable speex) - $(use_enable srt) - $(use_enable ssl gnutls) - $(use_enable svg) - $(use_enable svg svgdec) - $(use_enable taglib) - $(use_enable theora) - $(use_enable tremor) - $(use_enable twolame) - $(use_enable udev) - $(use_enable upnp) - $(use_enable v4l v4l2) - $(use_enable vaapi libva) - $(use_enable vdpau) - $(use_enable vnc) - $(use_enable vpx) - $(use_enable wayland) - $(use_with X x) - $(use_enable X xcb) - $(use_enable X xvideo) - $(use_enable x264) - $(use_enable x264 x26410b) - $(use_enable x265) - $(use_enable xml libxml2) - $(use_enable zeroconf avahi) - $(use_enable zvbi) - $(use_enable !zvbi telx) - --with-kde-solid="${EPREFIX}"/usr/share/solid/actions - --disable-asdcp - --disable-coverage - --disable-cprof - --disable-crystalhd - --disable-decklink - --disable-gles2 - --disable-goom - --disable-kai - --disable-kva - --disable-libplacebo - --disable-maintainer-mode - --disable-merge-ffmpeg - --disable-mfx - --disable-mmal - --disable-opencv - --disable-opensles - --disable-oss - --disable-rpi-omxil - --disable-schroedinger - --disable-shine - --disable-sndio - --disable-spatialaudio - --disable-vsxu - --disable-wasapi - --disable-wma-fixed - ) - # ^ We don't have these disabled libraries in the Portage tree yet. - - # Compatibility fix for Samba 4. - use samba && append-cppflags "-I/usr/include/samba-4.0" - - if use x86; then - # We need to disable -fstack-check if use >=gcc 4.8.0. bug #499996 - append-cflags $(test-flags-CC -fno-stack-check) - # Bug 569774 - replace-flags -Os -O2 - fi - - # VLC now requires C++11 after commit 4b1c9dcdda0bbff801e47505ff9dfd3f274eb0d8 - append-cxxflags -std=c++11 - - if use omxil; then - # bug #723006 - # https://trac.videolan.org/vlc/ticket/24617 - append-cflags -fcommon - fi - - # FIXME: Needs libresid-builder from libsidplay:2 which is in another directory... - append-ldflags "-L/usr/$(get_libdir)/sidplay/builders/" - - if use truetype || use bidi; then - myeconfargs+=( --enable-freetype ) - else - myeconfargs+=( --disable-freetype ) - fi - - if use truetype || use projectm; then - local dejavu="${EPREFIX}/usr/share/fonts/dejavu/" - myeconfargs+=( - --with-default-font=${dejavu}/DejaVuSans.ttf - --with-default-font-family=Sans - --with-default-monospace-font=${dejavu}/DejaVuSansMono.ttf - --with-default-monospace-font-family=Monospace - ) - fi - - econf "${myeconfargs[@]}" - - # _FORTIFY_SOURCE is set to 2 in config.h, which is also the default value on Gentoo. - # Other values may break the build (bug 523144), so definition should not be removed. - # To prevent redefinition warnings, we undefine _FORTIFY_SOURCE at the start of config.h - sed -i '1i#undef _FORTIFY_SOURCE' config.h || die -} - -src_test() { - virtx emake check-TESTS -} - -src_install() { - default - find "${ED}" -name '*.la' -delete || die -} - -pkg_postinst() { - if [[ -z "${ROOT}" ]] && [[ -x "${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen" ]] ; then - einfo "Running ${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen on ${EROOT}/usr/$(get_libdir)/vlc/plugins/" - "${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen" "${EROOT}/usr/$(get_libdir)/vlc/plugins/" - else - ewarn "We cannot run vlc-cache-gen (most likely ROOT != /)" - ewarn "Please run ${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen manually" - ewarn "If you do not do it, vlc will take a long time to load." - fi - - xdg_pkg_postinst -} - -pkg_postrm() { - if [[ -e "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat ]]; then - rm "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat || die "Failed to rm plugins.dat" - fi - - xdg_pkg_postrm -} diff --git a/media-video/vlc/vlc-3.0.16-r4.ebuild b/media-video/vlc/vlc-3.0.16-r4.ebuild deleted file mode 100644 index 579e5c2d81e5..000000000000 --- a/media-video/vlc/vlc-3.0.16-r4.ebuild +++ /dev/null @@ -1,515 +0,0 @@ -# Copyright 2000-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -LUA_COMPAT=( lua5-{1..2} ) - -MY_PV="${PV/_/-}" -MY_PV="${MY_PV/-beta/-test}" -MY_P="${PN}-${MY_PV}" -if [[ ${PV} = *9999 ]] ; then - if [[ ${PV%.9999} != ${PV} ]] ; then - EGIT_REPO_URI="https://git.videolan.org/git/vlc/vlc-${PV%.9999}.git" - else - EGIT_REPO_URI="https://git.videolan.org/git/vlc.git" - fi - inherit git-r3 -else - SRC_URI="https://get.videolan.org/vlc/${PV}/${P}.tar.xz" - #S="${WORKDIR}/${PN}-$(ver_cut 1-2)-${PV}" - #SRC_URI="https://code.videolan.org/videolan/vlc-$(ver_cut 1-2)/-/archive/${PV}/vlc-$(ver_cut 1-2)-${PV}.tar.gz" - #if [[ ${MY_P} = ${P} ]] ; then - # SRC_URI="https://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.xz" - #else - # SRC_URI="https://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz" - #fi - KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 -sparc ~x86" -fi - -inherit autotools flag-o-matic lua-single toolchain-funcs virtualx xdg - -DESCRIPTION="Media player and framework with support for most multimedia files and streaming" -HOMEPAGE="https://www.videolan.org/vlc/" - -LICENSE="LGPL-2.1 GPL-2" -SLOT="0/5-9" # vlc - vlccore - -IUSE="a52 alsa aom archive aribsub bidi bluray cddb chromaprint chromecast - dav1d dbus dc1394 debug directx dts +dvbpsi dvd +encode faad fdk +ffmpeg flac - fluidsynth fontconfig +gcrypt gme gnome-keyring gstreamer ieee1394 jack jpeg kate - libass libcaca libnotify +libsamplerate libtar libtiger linsys lirc - live lua macosx-notifications mad matroska modplug mp3 mpeg mtp musepack ncurses - nfs ogg omxil optimisememory opus png projectm pulseaudio +qt5 rdp - run-as-root samba sdl-image sftp shout sid skins soxr speex srt ssl svg taglib - theora tremor truetype twolame udev upnp vaapi v4l vdpau vnc vpx wayland +X - x264 x265 xml zeroconf zvbi cpu_flags_arm_neon cpu_flags_ppc_altivec cpu_flags_x86_mmx - cpu_flags_x86_sse -" -REQUIRED_USE=" - chromecast? ( encode ) - directx? ( ffmpeg ) - fontconfig? ( truetype ) - libcaca? ( X ) - libtar? ( skins ) - libtiger? ( kate ) - lua? ( ${LUA_REQUIRED_USE} ) - skins? ( qt5 truetype X xml ) - ssl? ( gcrypt ) - vaapi? ( ffmpeg X ) - vdpau? ( ffmpeg X ) -" -BDEPEND=" - >=sys-devel/gettext-0.19.8 - virtual/pkgconfig - lua? ( ${LUA_DEPS} ) - amd64? ( dev-lang/yasm ) - x86? ( dev-lang/yasm ) -" -RDEPEND=" - media-libs/libvorbis - net-dns/libidn:= - sys-libs/zlib[minizip] - virtual/libintl - virtual/opengl - a52? ( media-libs/a52dec ) - alsa? ( media-libs/alsa-lib ) - aom? ( media-libs/libaom:= ) - archive? ( app-arch/libarchive:= ) - aribsub? ( media-libs/aribb24 ) - bidi? ( - dev-libs/fribidi - media-libs/freetype:2[harfbuzz] - media-libs/harfbuzz - virtual/ttf-fonts - ) - bluray? ( >=media-libs/libbluray-1.3.0:= ) - cddb? ( media-libs/libcddb ) - chromaprint? ( media-libs/chromaprint:= ) - chromecast? ( - >=dev-libs/protobuf-2.5.0:= - >=net-libs/libmicrodns-0.1.2:= - ) - dav1d? ( media-libs/dav1d:= ) - dbus? ( sys-apps/dbus ) - dc1394? ( - media-libs/libdc1394:2 - sys-libs/libraw1394 - ) - dts? ( media-libs/libdca ) - dvbpsi? ( >=media-libs/libdvbpsi-1.2.0:= ) - dvd? ( - >=media-libs/libdvdnav-6.1.1:0= - >=media-libs/libdvdread-6.1.2:0= - ) - faad? ( media-libs/faad2 ) - fdk? ( media-libs/fdk-aac:= ) - ffmpeg? ( >=media-video/ffmpeg-3.1.3:0=[postproc,vaapi?,vdpau?] ) - flac? ( - media-libs/flac - media-libs/libogg - ) - fluidsynth? ( media-sound/fluidsynth:= ) - fontconfig? ( media-libs/fontconfig:1.0 ) - gcrypt? ( - dev-libs/libgcrypt:0= - dev-libs/libgpg-error - ) - gme? ( media-libs/game-music-emu ) - gnome-keyring? ( app-crypt/libsecret ) - gstreamer? ( >=media-libs/gst-plugins-base-1.4.5:1.0 ) - ieee1394? ( - sys-libs/libavc1394 - sys-libs/libraw1394 - ) - jack? ( virtual/jack ) - jpeg? ( virtual/jpeg:0 ) - kate? ( media-libs/libkate ) - libass? ( - media-libs/fontconfig:1.0 - media-libs/libass:= - ) - libcaca? ( media-libs/libcaca ) - libnotify? ( - dev-libs/glib:2 - x11-libs/gdk-pixbuf:2 - x11-libs/gtk+:3 - x11-libs/libnotify - ) - libsamplerate? ( media-libs/libsamplerate ) - libtar? ( dev-libs/libtar ) - libtiger? ( media-libs/libtiger ) - linsys? ( media-libs/zvbi ) - lirc? ( app-misc/lirc ) - live? ( >=media-plugins/live-2021.05.22:= ) - lua? ( ${LUA_DEPS} ) - mad? ( media-libs/libmad ) - matroska? ( - >=dev-libs/libebml-1.4.2:= - media-libs/libmatroska:= - ) - modplug? ( >=media-libs/libmodplug-0.8.9.0 ) - mp3? ( media-sound/mpg123 ) - mpeg? ( media-libs/libmpeg2 ) - mtp? ( media-libs/libmtp:= ) - musepack? ( media-sound/musepack-tools ) - ncurses? ( sys-libs/ncurses:0=[unicode] ) - nfs? ( >=net-fs/libnfs-0.10.0:= ) - ogg? ( media-libs/libogg ) - opus? ( >=media-libs/opus-1.0.3 ) - png? ( media-libs/libpng:0= ) - projectm? ( - media-fonts/dejavu - media-libs/libprojectm:0= - ) - pulseaudio? ( media-sound/pulseaudio ) - qt5? ( - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtsvg:5 - dev-qt/qtwidgets:5 - X? ( - dev-qt/qtx11extras:5 - x11-libs/libX11 - ) - ) - rdp? ( >=net-misc/freerdp-2.0.0_rc0:=[client(+)] ) - samba? ( >=net-fs/samba-4.0.0:0[client,-debug(-)] ) - sdl-image? ( media-libs/sdl-image ) - sftp? ( net-libs/libssh2 ) - shout? ( media-libs/libshout ) - sid? ( media-libs/libsidplay:2 ) - skins? ( - x11-libs/libXext - x11-libs/libXinerama - x11-libs/libXpm - ) - soxr? ( >=media-libs/soxr-0.1.2 ) - speex? ( - >=media-libs/speex-1.2.0 - media-libs/speexdsp - ) - srt? ( >=net-libs/srt-1.4.2:= ) - ssl? ( net-libs/gnutls:= ) - svg? ( - gnome-base/librsvg:2 - x11-libs/cairo - ) - taglib? ( >=media-libs/taglib-1.9 ) - theora? ( media-libs/libtheora ) - tremor? ( media-libs/tremor ) - truetype? ( - media-libs/freetype:2 - virtual/ttf-fonts - !fontconfig? ( media-fonts/dejavu ) - ) - twolame? ( media-sound/twolame ) - udev? ( virtual/udev ) - upnp? ( net-libs/libupnp:=[ipv6] ) - v4l? ( media-libs/libv4l:= ) - vaapi? ( x11-libs/libva:=[drm,wayland?,X?] ) - vdpau? ( x11-libs/libvdpau ) - vnc? ( net-libs/libvncserver ) - vpx? ( media-libs/libvpx:= ) - wayland? ( - >=dev-libs/wayland-1.15 - dev-libs/wayland-protocols - ) - X? ( - x11-libs/libX11 - x11-libs/libxcb - x11-libs/xcb-util - x11-libs/xcb-util-keysyms - ) - x264? ( >=media-libs/x264-0.0.20190214:= ) - x265? ( media-libs/x265:= ) - xml? ( dev-libs/libxml2:2 ) - zeroconf? ( net-dns/avahi[dbus] ) - zvbi? ( media-libs/zvbi ) -" -DEPEND="${RDEPEND} - X? ( x11-base/xorg-proto ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch # build system - "${FILESDIR}"/${PN}-2.2.8-freerdp-2.patch # bug 590164 - "${FILESDIR}"/${PN}-3.0.6-fdk-aac-2.0.0.patch # bug 672290 - "${FILESDIR}"/${PN}-3.0.11.1-configure_lua_version.patch - "${FILESDIR}"/${PN}-3.0.11.1-srt-1.4.2.patch # bug 758062 - "${FILESDIR}"/${PN}-3.0.13-srt-1.3.0.patch - "${FILESDIR}"/${PN}-3.0.14-fix-live-address-api.patch # bug 795798 -) - -DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt ) - -pkg_setup() { - if use lua; then - lua-single_pkg_setup - fi -} - -src_prepare() { - xdg_src_prepare # bug 608256 - - has_version 'net-libs/libupnp:1.8' && \ - eapply "${FILESDIR}"/${PN}-2.2.8-libupnp-slot-1.8.patch - - # Bootstrap when we are on a git checkout. - if [[ ${PV} = *9999 ]] ; then - ./bootstrap - fi - - # Make it build with libtool 1.5 - #rm m4/lt* m4/libtool.m4 || die - - # We are not in a real git checkout due to the absence of a .git directory. - touch src/revision.txt || die - - # Don't use --started-from-file when not using dbus. - if ! use dbus ; then - sed -i 's/ --started-from-file//' share/vlc.desktop.in || die - fi - - # Disable running of vlc-cache-gen, we do that in pkg_postinst - sed -e "/test.*build.*host/s/\$(host)/nothanks/" \ - -i Makefile.am -i bin/Makefile.am || die "Failed to disable vlc-cache-gen" - - # Fix gettext version mismatch errors. - sed -i -e s/GETTEXT_VERSION/GETTEXT_REQUIRE_VERSION/ configure.ac || die - - eautoreconf - - # Disable automatic running of tests. - find . -name 'Makefile.in' -exec sed -i 's/\(..*\)check-TESTS/\1/' {} \; || die -} - -src_configure() { - local -x BUILDCC=$(tc-getBUILD_CC) - - local myeconfargs=( - --disable-aa - --disable-optimizations - --disable-rpath - --disable-update-check - --enable-fast-install - --enable-screen - --enable-vcd - --enable-vlc - --enable-vorbis - $(use_enable a52) - $(use_enable alsa) - $(use_enable aom) - $(use_enable archive) - $(use_enable aribsub) - $(use_enable bidi fribidi) - $(use_enable bidi harfbuzz) - $(use_enable bluray) - $(use_enable cddb libcddb) - $(use_enable chromaprint) - $(use_enable chromecast) - $(use_enable chromecast microdns) - $(use_enable cpu_flags_arm_neon neon) - $(use_enable cpu_flags_ppc_altivec altivec) - $(use_enable cpu_flags_x86_mmx mmx) - $(use_enable cpu_flags_x86_sse sse) - $(use_enable dav1d) - $(use_enable dbus) - $(use_enable dbus kwallet) - $(use_enable dc1394) - $(use_enable debug) - $(use_enable directx) - $(use_enable directx d3d11va) - $(use_enable directx dxva2) - $(use_enable dts dca) - $(use_enable dvbpsi) - $(use_enable dvd dvdnav) - $(use_enable dvd dvdread) - $(use_enable encode sout) - $(use_enable encode vlm) - $(use_enable faad) - $(use_enable fdk fdkaac) - $(use_enable ffmpeg avcodec) - $(use_enable ffmpeg avformat) - $(use_enable ffmpeg postproc) - $(use_enable ffmpeg swscale) - $(use_enable flac) - $(use_enable fluidsynth) - $(use_enable fontconfig) - $(use_enable gcrypt libgcrypt) - $(use_enable gme) - $(use_enable gnome-keyring secret) - $(use_enable gstreamer gst-decode) - $(use_enable ieee1394 dv1394) - $(use_enable jack) - $(use_enable jpeg) - $(use_enable kate) - $(use_enable libass) - $(use_enable libcaca caca) - $(use_enable libnotify notify) - $(use_enable libsamplerate samplerate) - $(use_enable libtar) - $(use_enable libtiger tiger) - $(use_enable linsys) - $(use_enable lirc) - $(use_enable live live555) - $(use_enable lua) - $(use_enable macosx-notifications osx-notifications) - $(use_enable mad) - $(use_enable matroska) - $(use_enable modplug mod) - $(use_enable mp3 mpg123) - $(use_enable mpeg libmpeg2) - $(use_enable mtp) - $(use_enable musepack mpc) - $(use_enable ncurses) - $(use_enable nfs) - $(use_enable ogg) - $(use_enable omxil) - $(use_enable omxil omxil-vout) - $(use_enable optimisememory optimize-memory) - $(use_enable opus) - $(use_enable png) - $(use_enable projectm) - $(use_enable pulseaudio pulse) - $(use_enable qt5 qt) - $(use_enable rdp freerdp) - $(use_enable run-as-root) - $(use_enable samba smbclient) - $(use_enable sdl-image) - $(use_enable sftp) - $(use_enable shout) - $(use_enable sid) - $(use_enable skins skins2) - $(use_enable soxr) - $(use_enable speex) - $(use_enable srt) - $(use_enable ssl gnutls) - $(use_enable svg) - $(use_enable svg svgdec) - $(use_enable taglib) - $(use_enable theora) - $(use_enable tremor) - $(use_enable twolame) - $(use_enable udev) - $(use_enable upnp) - $(use_enable v4l v4l2) - $(use_enable vaapi libva) - $(use_enable vdpau) - $(use_enable vnc) - $(use_enable vpx) - $(use_enable wayland) - $(use_with X x) - $(use_enable X xcb) - $(use_enable X xvideo) - $(use_enable x264) - $(use_enable x264 x26410b) - $(use_enable x265) - $(use_enable xml libxml2) - $(use_enable zeroconf avahi) - $(use_enable zvbi) - $(use_enable !zvbi telx) - --with-kde-solid="${EPREFIX}"/usr/share/solid/actions - --disable-asdcp - --disable-coverage - --disable-cprof - --disable-crystalhd - --disable-decklink - --disable-gles2 - --disable-goom - --disable-kai - --disable-kva - --disable-libplacebo - --disable-maintainer-mode - --disable-merge-ffmpeg - --disable-mfx - --disable-mmal - --disable-opencv - --disable-opensles - --disable-oss - --disable-rpi-omxil - --disable-schroedinger - --disable-shine - --disable-sndio - --disable-spatialaudio - --disable-vsxu - --disable-wasapi - --disable-wma-fixed - ) - # ^ We don't have these disabled libraries in the Portage tree yet. - - # Compatibility fix for Samba 4. - use samba && append-cppflags "-I/usr/include/samba-4.0" - - if use x86; then - # We need to disable -fstack-check if use >=gcc 4.8.0. bug #499996 - append-cflags $(test-flags-CC -fno-stack-check) - # Bug 569774 - replace-flags -Os -O2 - fi - - # VLC now requires C++11 after commit 4b1c9dcdda0bbff801e47505ff9dfd3f274eb0d8 - append-cxxflags -std=c++11 - - if use omxil; then - # bug #723006 - # https://trac.videolan.org/vlc/ticket/24617 - append-cflags -fcommon - fi - - # FIXME: Needs libresid-builder from libsidplay:2 which is in another directory... - append-ldflags "-L/usr/$(get_libdir)/sidplay/builders/" - - if use truetype || use bidi; then - myeconfargs+=( --enable-freetype ) - else - myeconfargs+=( --disable-freetype ) - fi - - if use truetype || use projectm; then - local dejavu="${EPREFIX}/usr/share/fonts/dejavu/" - myeconfargs+=( - --with-default-font=${dejavu}/DejaVuSans.ttf - --with-default-font-family=Sans - --with-default-monospace-font=${dejavu}/DejaVuSansMono.ttf - --with-default-monospace-font-family=Monospace - ) - fi - - econf "${myeconfargs[@]}" - - # _FORTIFY_SOURCE is set to 2 in config.h, which is also the default value on Gentoo. - # Other values may break the build (bug 523144), so definition should not be removed. - # To prevent redefinition warnings, we undefine _FORTIFY_SOURCE at the start of config.h - sed -i '1i#undef _FORTIFY_SOURCE' config.h || die -} - -src_test() { - virtx emake check-TESTS -} - -src_install() { - default - find "${ED}" -name '*.la' -delete || die -} - -pkg_postinst() { - if [[ -z "${ROOT}" ]] && [[ -x "${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen" ]] ; then - einfo "Running ${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen on ${EROOT}/usr/$(get_libdir)/vlc/plugins/" - "${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen" "${EROOT}/usr/$(get_libdir)/vlc/plugins/" - else - ewarn "We cannot run vlc-cache-gen (most likely ROOT != /)" - ewarn "Please run ${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen manually" - ewarn "If you do not do it, vlc will take a long time to load." - fi - - xdg_pkg_postinst -} - -pkg_postrm() { - if [[ -e "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat ]]; then - rm "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat || die "Failed to rm plugins.dat" - fi - - xdg_pkg_postrm -} diff --git a/media-video/vlc/vlc-3.0.16-r5.ebuild b/media-video/vlc/vlc-3.0.16-r5.ebuild new file mode 100644 index 000000000000..8c556b36dcbb --- /dev/null +++ b/media-video/vlc/vlc-3.0.16-r5.ebuild @@ -0,0 +1,514 @@ +# Copyright 2000-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +LUA_COMPAT=( lua5-{1..2} ) + +MY_PV="${PV/_/-}" +MY_PV="${MY_PV/-beta/-test}" +MY_P="${PN}-${MY_PV}" +if [[ ${PV} = *9999 ]] ; then + if [[ ${PV%.9999} != ${PV} ]] ; then + EGIT_REPO_URI="https://git.videolan.org/git/vlc/vlc-${PV%.9999}.git" + else + EGIT_REPO_URI="https://git.videolan.org/git/vlc.git" + fi + inherit git-r3 +else + SRC_URI="https://get.videolan.org/vlc/${PV}/${P}.tar.xz" + #S="${WORKDIR}/${PN}-$(ver_cut 1-2)-${PV}" + #SRC_URI="https://code.videolan.org/videolan/vlc-$(ver_cut 1-2)/-/archive/${PV}/vlc-$(ver_cut 1-2)-${PV}.tar.gz" + #if [[ ${MY_P} = ${P} ]] ; then + # SRC_URI="https://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.xz" + #else + # SRC_URI="https://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz" + #fi + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 -sparc ~x86" +fi + +inherit autotools flag-o-matic lua-single toolchain-funcs virtualx xdg + +DESCRIPTION="Media player and framework with support for most multimedia files and streaming" +HOMEPAGE="https://www.videolan.org/vlc/" + +LICENSE="LGPL-2.1 GPL-2" +SLOT="0/5-9" # vlc - vlccore + +IUSE="a52 alsa aom archive aribsub bidi bluray cddb chromaprint chromecast + dav1d dbus dc1394 debug directx dts +dvbpsi dvd +encode faad fdk +ffmpeg flac + fluidsynth fontconfig +gcrypt gme gnome-keyring gstreamer ieee1394 jack jpeg kate + libass libcaca libnotify +libsamplerate libtar libtiger linsys lirc + live lua macosx-notifications mad matroska modplug mp3 mpeg mtp musepack ncurses + nfs ogg omxil optimisememory opus png projectm pulseaudio +qt5 rdp + run-as-root samba sdl-image sftp shout sid skins soxr speex srt ssl svg taglib + theora tremor truetype twolame udev upnp vaapi v4l vdpau vnc vpx wayland +X + x264 x265 xml zeroconf zvbi cpu_flags_arm_neon cpu_flags_ppc_altivec cpu_flags_x86_mmx + cpu_flags_x86_sse +" +REQUIRED_USE=" + chromecast? ( encode ) + directx? ( ffmpeg ) + fontconfig? ( truetype ) + libcaca? ( X ) + libtar? ( skins ) + libtiger? ( kate ) + lua? ( ${LUA_REQUIRED_USE} ) + skins? ( qt5 truetype X xml ) + ssl? ( gcrypt ) + vaapi? ( ffmpeg X ) + vdpau? ( ffmpeg X ) +" +BDEPEND=" + >=sys-devel/gettext-0.19.8 + virtual/pkgconfig + lua? ( ${LUA_DEPS} ) + amd64? ( dev-lang/yasm ) + x86? ( dev-lang/yasm ) +" +RDEPEND=" + media-libs/libvorbis + net-dns/libidn:= + sys-libs/zlib[minizip] + virtual/libintl + virtual/opengl + a52? ( media-libs/a52dec ) + alsa? ( media-libs/alsa-lib ) + aom? ( media-libs/libaom:= ) + archive? ( app-arch/libarchive:= ) + aribsub? ( media-libs/aribb24 ) + bidi? ( + dev-libs/fribidi + media-libs/freetype:2[harfbuzz] + media-libs/harfbuzz + virtual/ttf-fonts + ) + bluray? ( >=media-libs/libbluray-1.3.0:= ) + cddb? ( media-libs/libcddb ) + chromaprint? ( media-libs/chromaprint:= ) + chromecast? ( + >=dev-libs/protobuf-2.5.0:= + >=net-libs/libmicrodns-0.1.2:= + ) + dav1d? ( media-libs/dav1d:= ) + dbus? ( sys-apps/dbus ) + dc1394? ( + media-libs/libdc1394:2 + sys-libs/libraw1394 + ) + dts? ( media-libs/libdca ) + dvbpsi? ( >=media-libs/libdvbpsi-1.2.0:= ) + dvd? ( + >=media-libs/libdvdnav-6.1.1:0= + >=media-libs/libdvdread-6.1.2:0= + ) + faad? ( media-libs/faad2 ) + fdk? ( media-libs/fdk-aac:= ) + ffmpeg? ( >=media-video/ffmpeg-3.1.3:0=[postproc,vaapi?,vdpau?] ) + flac? ( + media-libs/flac + media-libs/libogg + ) + fluidsynth? ( media-sound/fluidsynth:= ) + fontconfig? ( media-libs/fontconfig:1.0 ) + gcrypt? ( + dev-libs/libgcrypt:0= + dev-libs/libgpg-error + ) + gme? ( media-libs/game-music-emu ) + gnome-keyring? ( app-crypt/libsecret ) + gstreamer? ( >=media-libs/gst-plugins-base-1.4.5:1.0 ) + ieee1394? ( + sys-libs/libavc1394 + sys-libs/libraw1394 + ) + jack? ( virtual/jack ) + jpeg? ( virtual/jpeg:0 ) + kate? ( media-libs/libkate ) + libass? ( + media-libs/fontconfig:1.0 + media-libs/libass:= + ) + libcaca? ( media-libs/libcaca ) + libnotify? ( + dev-libs/glib:2 + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:3 + x11-libs/libnotify + ) + libsamplerate? ( media-libs/libsamplerate ) + libtar? ( dev-libs/libtar ) + libtiger? ( media-libs/libtiger ) + linsys? ( media-libs/zvbi ) + lirc? ( app-misc/lirc ) + live? ( =dev-libs/libebml-1.4.2:= + media-libs/libmatroska:= + ) + modplug? ( >=media-libs/libmodplug-0.8.9.0 ) + mp3? ( media-sound/mpg123 ) + mpeg? ( media-libs/libmpeg2 ) + mtp? ( media-libs/libmtp:= ) + musepack? ( media-sound/musepack-tools ) + ncurses? ( sys-libs/ncurses:=[unicode(+)] ) + nfs? ( >=net-fs/libnfs-0.10.0:= ) + ogg? ( media-libs/libogg ) + opus? ( >=media-libs/opus-1.0.3 ) + png? ( media-libs/libpng:0= ) + projectm? ( + media-fonts/dejavu + media-libs/libprojectm:0= + ) + pulseaudio? ( media-sound/pulseaudio ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtsvg:5 + dev-qt/qtwidgets:5 + X? ( + dev-qt/qtx11extras:5 + x11-libs/libX11 + ) + ) + rdp? ( >=net-misc/freerdp-2.0.0_rc0:=[client(+)] ) + samba? ( >=net-fs/samba-4.0.0:0[client,-debug(-)] ) + sdl-image? ( media-libs/sdl-image ) + sftp? ( net-libs/libssh2 ) + shout? ( media-libs/libshout ) + sid? ( media-libs/libsidplay:2 ) + skins? ( + x11-libs/libXext + x11-libs/libXinerama + x11-libs/libXpm + ) + soxr? ( >=media-libs/soxr-0.1.2 ) + speex? ( + >=media-libs/speex-1.2.0 + media-libs/speexdsp + ) + srt? ( >=net-libs/srt-1.4.2:= ) + ssl? ( net-libs/gnutls:= ) + svg? ( + gnome-base/librsvg:2 + x11-libs/cairo + ) + taglib? ( >=media-libs/taglib-1.9 ) + theora? ( media-libs/libtheora ) + tremor? ( media-libs/tremor ) + truetype? ( + media-libs/freetype:2 + virtual/ttf-fonts + !fontconfig? ( media-fonts/dejavu ) + ) + twolame? ( media-sound/twolame ) + udev? ( virtual/udev ) + upnp? ( net-libs/libupnp:=[ipv6] ) + v4l? ( media-libs/libv4l:= ) + vaapi? ( x11-libs/libva:=[drm,wayland?,X?] ) + vdpau? ( x11-libs/libvdpau ) + vnc? ( net-libs/libvncserver ) + vpx? ( media-libs/libvpx:= ) + wayland? ( + >=dev-libs/wayland-1.15 + dev-libs/wayland-protocols + ) + X? ( + x11-libs/libX11 + x11-libs/libxcb + x11-libs/xcb-util + x11-libs/xcb-util-keysyms + ) + x264? ( >=media-libs/x264-0.0.20190214:= ) + x265? ( media-libs/x265:= ) + xml? ( dev-libs/libxml2:2 ) + zeroconf? ( net-dns/avahi[dbus] ) + zvbi? ( media-libs/zvbi ) +" +DEPEND="${RDEPEND} + X? ( x11-base/xorg-proto ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch # build system + "${FILESDIR}"/${PN}-2.2.8-freerdp-2.patch # bug 590164 + "${FILESDIR}"/${PN}-3.0.6-fdk-aac-2.0.0.patch # bug 672290 + "${FILESDIR}"/${PN}-3.0.11.1-configure_lua_version.patch + "${FILESDIR}"/${PN}-3.0.11.1-srt-1.4.2.patch # bug 758062 + "${FILESDIR}"/${PN}-3.0.13-srt-1.3.0.patch +) + +DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt ) + +pkg_setup() { + if use lua; then + lua-single_pkg_setup + fi +} + +src_prepare() { + xdg_src_prepare # bug 608256 + + has_version 'net-libs/libupnp:1.8' && \ + eapply "${FILESDIR}"/${PN}-2.2.8-libupnp-slot-1.8.patch + + # Bootstrap when we are on a git checkout. + if [[ ${PV} = *9999 ]] ; then + ./bootstrap + fi + + # Make it build with libtool 1.5 + #rm m4/lt* m4/libtool.m4 || die + + # We are not in a real git checkout due to the absence of a .git directory. + touch src/revision.txt || die + + # Don't use --started-from-file when not using dbus. + if ! use dbus ; then + sed -i 's/ --started-from-file//' share/vlc.desktop.in || die + fi + + # Disable running of vlc-cache-gen, we do that in pkg_postinst + sed -e "/test.*build.*host/s/\$(host)/nothanks/" \ + -i Makefile.am -i bin/Makefile.am || die "Failed to disable vlc-cache-gen" + + # Fix gettext version mismatch errors. + sed -i -e s/GETTEXT_VERSION/GETTEXT_REQUIRE_VERSION/ configure.ac || die + + eautoreconf + + # Disable automatic running of tests. + find . -name 'Makefile.in' -exec sed -i 's/\(..*\)check-TESTS/\1/' {} \; || die +} + +src_configure() { + local -x BUILDCC=$(tc-getBUILD_CC) + + local myeconfargs=( + --disable-aa + --disable-optimizations + --disable-rpath + --disable-update-check + --enable-fast-install + --enable-screen + --enable-vcd + --enable-vlc + --enable-vorbis + $(use_enable a52) + $(use_enable alsa) + $(use_enable aom) + $(use_enable archive) + $(use_enable aribsub) + $(use_enable bidi fribidi) + $(use_enable bidi harfbuzz) + $(use_enable bluray) + $(use_enable cddb libcddb) + $(use_enable chromaprint) + $(use_enable chromecast) + $(use_enable chromecast microdns) + $(use_enable cpu_flags_arm_neon neon) + $(use_enable cpu_flags_ppc_altivec altivec) + $(use_enable cpu_flags_x86_mmx mmx) + $(use_enable cpu_flags_x86_sse sse) + $(use_enable dav1d) + $(use_enable dbus) + $(use_enable dbus kwallet) + $(use_enable dc1394) + $(use_enable debug) + $(use_enable directx) + $(use_enable directx d3d11va) + $(use_enable directx dxva2) + $(use_enable dts dca) + $(use_enable dvbpsi) + $(use_enable dvd dvdnav) + $(use_enable dvd dvdread) + $(use_enable encode sout) + $(use_enable encode vlm) + $(use_enable faad) + $(use_enable fdk fdkaac) + $(use_enable ffmpeg avcodec) + $(use_enable ffmpeg avformat) + $(use_enable ffmpeg postproc) + $(use_enable ffmpeg swscale) + $(use_enable flac) + $(use_enable fluidsynth) + $(use_enable fontconfig) + $(use_enable gcrypt libgcrypt) + $(use_enable gme) + $(use_enable gnome-keyring secret) + $(use_enable gstreamer gst-decode) + $(use_enable ieee1394 dv1394) + $(use_enable jack) + $(use_enable jpeg) + $(use_enable kate) + $(use_enable libass) + $(use_enable libcaca caca) + $(use_enable libnotify notify) + $(use_enable libsamplerate samplerate) + $(use_enable libtar) + $(use_enable libtiger tiger) + $(use_enable linsys) + $(use_enable lirc) + $(use_enable live live555) + $(use_enable lua) + $(use_enable macosx-notifications osx-notifications) + $(use_enable mad) + $(use_enable matroska) + $(use_enable modplug mod) + $(use_enable mp3 mpg123) + $(use_enable mpeg libmpeg2) + $(use_enable mtp) + $(use_enable musepack mpc) + $(use_enable ncurses) + $(use_enable nfs) + $(use_enable ogg) + $(use_enable omxil) + $(use_enable omxil omxil-vout) + $(use_enable optimisememory optimize-memory) + $(use_enable opus) + $(use_enable png) + $(use_enable projectm) + $(use_enable pulseaudio pulse) + $(use_enable qt5 qt) + $(use_enable rdp freerdp) + $(use_enable run-as-root) + $(use_enable samba smbclient) + $(use_enable sdl-image) + $(use_enable sftp) + $(use_enable shout) + $(use_enable sid) + $(use_enable skins skins2) + $(use_enable soxr) + $(use_enable speex) + $(use_enable srt) + $(use_enable ssl gnutls) + $(use_enable svg) + $(use_enable svg svgdec) + $(use_enable taglib) + $(use_enable theora) + $(use_enable tremor) + $(use_enable twolame) + $(use_enable udev) + $(use_enable upnp) + $(use_enable v4l v4l2) + $(use_enable vaapi libva) + $(use_enable vdpau) + $(use_enable vnc) + $(use_enable vpx) + $(use_enable wayland) + $(use_with X x) + $(use_enable X xcb) + $(use_enable X xvideo) + $(use_enable x264) + $(use_enable x264 x26410b) + $(use_enable x265) + $(use_enable xml libxml2) + $(use_enable zeroconf avahi) + $(use_enable zvbi) + $(use_enable !zvbi telx) + --with-kde-solid="${EPREFIX}"/usr/share/solid/actions + --disable-asdcp + --disable-coverage + --disable-cprof + --disable-crystalhd + --disable-decklink + --disable-gles2 + --disable-goom + --disable-kai + --disable-kva + --disable-libplacebo + --disable-maintainer-mode + --disable-merge-ffmpeg + --disable-mfx + --disable-mmal + --disable-opencv + --disable-opensles + --disable-oss + --disable-rpi-omxil + --disable-schroedinger + --disable-shine + --disable-sndio + --disable-spatialaudio + --disable-vsxu + --disable-wasapi + --disable-wma-fixed + ) + # ^ We don't have these disabled libraries in the Portage tree yet. + + # Compatibility fix for Samba 4. + use samba && append-cppflags "-I/usr/include/samba-4.0" + + if use x86; then + # We need to disable -fstack-check if use >=gcc 4.8.0. bug #499996 + append-cflags $(test-flags-CC -fno-stack-check) + # Bug 569774 + replace-flags -Os -O2 + fi + + # VLC now requires C++11 after commit 4b1c9dcdda0bbff801e47505ff9dfd3f274eb0d8 + append-cxxflags -std=c++11 + + if use omxil; then + # bug #723006 + # https://trac.videolan.org/vlc/ticket/24617 + append-cflags -fcommon + fi + + # FIXME: Needs libresid-builder from libsidplay:2 which is in another directory... + append-ldflags "-L/usr/$(get_libdir)/sidplay/builders/" + + if use truetype || use bidi; then + myeconfargs+=( --enable-freetype ) + else + myeconfargs+=( --disable-freetype ) + fi + + if use truetype || use projectm; then + local dejavu="${EPREFIX}/usr/share/fonts/dejavu/" + myeconfargs+=( + --with-default-font=${dejavu}/DejaVuSans.ttf + --with-default-font-family=Sans + --with-default-monospace-font=${dejavu}/DejaVuSansMono.ttf + --with-default-monospace-font-family=Monospace + ) + fi + + econf "${myeconfargs[@]}" + + # _FORTIFY_SOURCE is set to 2 in config.h, which is also the default value on Gentoo. + # Other values may break the build (bug 523144), so definition should not be removed. + # To prevent redefinition warnings, we undefine _FORTIFY_SOURCE at the start of config.h + sed -i '1i#undef _FORTIFY_SOURCE' config.h || die +} + +src_test() { + virtx emake check-TESTS +} + +src_install() { + default + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + if [[ -z "${ROOT}" ]] && [[ -x "${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen" ]] ; then + einfo "Running ${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen on ${EROOT}/usr/$(get_libdir)/vlc/plugins/" + "${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen" "${EROOT}/usr/$(get_libdir)/vlc/plugins/" + else + ewarn "We cannot run vlc-cache-gen (most likely ROOT != /)" + ewarn "Please run ${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen manually" + ewarn "If you do not do it, vlc will take a long time to load." + fi + + xdg_pkg_postinst +} + +pkg_postrm() { + if [[ -e "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat ]]; then + rm "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat || die "Failed to rm plugins.dat" + fi + + xdg_pkg_postrm +} diff --git a/media-video/vlc/vlc-3.0.16-r6.ebuild b/media-video/vlc/vlc-3.0.16-r6.ebuild new file mode 100644 index 000000000000..3cb51b38ba34 --- /dev/null +++ b/media-video/vlc/vlc-3.0.16-r6.ebuild @@ -0,0 +1,515 @@ +# Copyright 2000-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +LUA_COMPAT=( lua5-{1..2} ) + +MY_PV="${PV/_/-}" +MY_PV="${MY_PV/-beta/-test}" +MY_P="${PN}-${MY_PV}" +if [[ ${PV} = *9999 ]] ; then + if [[ ${PV%.9999} != ${PV} ]] ; then + EGIT_REPO_URI="https://git.videolan.org/git/vlc/vlc-${PV%.9999}.git" + else + EGIT_REPO_URI="https://git.videolan.org/git/vlc.git" + fi + inherit git-r3 +else + SRC_URI="https://get.videolan.org/vlc/${PV}/${P}.tar.xz" + #S="${WORKDIR}/${PN}-$(ver_cut 1-2)-${PV}" + #SRC_URI="https://code.videolan.org/videolan/vlc-$(ver_cut 1-2)/-/archive/${PV}/vlc-$(ver_cut 1-2)-${PV}.tar.gz" + #if [[ ${MY_P} = ${P} ]] ; then + # SRC_URI="https://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.xz" + #else + # SRC_URI="https://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz" + #fi + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 -sparc ~x86" +fi + +inherit autotools flag-o-matic lua-single toolchain-funcs virtualx xdg + +DESCRIPTION="Media player and framework with support for most multimedia files and streaming" +HOMEPAGE="https://www.videolan.org/vlc/" + +LICENSE="LGPL-2.1 GPL-2" +SLOT="0/5-9" # vlc - vlccore + +IUSE="a52 alsa aom archive aribsub bidi bluray cddb chromaprint chromecast + dav1d dbus dc1394 debug directx dts +dvbpsi dvd +encode faad fdk +ffmpeg flac + fluidsynth fontconfig +gcrypt gme gnome-keyring gstreamer ieee1394 jack jpeg kate + libass libcaca libnotify +libsamplerate libtar libtiger linsys lirc + live lua macosx-notifications mad matroska modplug mp3 mpeg mtp musepack ncurses + nfs ogg omxil optimisememory opus png projectm pulseaudio +qt5 rdp + run-as-root samba sdl-image sftp shout sid skins soxr speex srt ssl svg taglib + theora tremor truetype twolame udev upnp vaapi v4l vdpau vnc vpx wayland +X + x264 x265 xml zeroconf zvbi cpu_flags_arm_neon cpu_flags_ppc_altivec cpu_flags_x86_mmx + cpu_flags_x86_sse +" +REQUIRED_USE=" + chromecast? ( encode ) + directx? ( ffmpeg ) + fontconfig? ( truetype ) + libcaca? ( X ) + libtar? ( skins ) + libtiger? ( kate ) + lua? ( ${LUA_REQUIRED_USE} ) + skins? ( qt5 truetype X xml ) + ssl? ( gcrypt ) + vaapi? ( ffmpeg X ) + vdpau? ( ffmpeg X ) +" +BDEPEND=" + >=sys-devel/gettext-0.19.8 + virtual/pkgconfig + lua? ( ${LUA_DEPS} ) + amd64? ( dev-lang/yasm ) + x86? ( dev-lang/yasm ) +" +RDEPEND=" + media-libs/libvorbis + net-dns/libidn:= + sys-libs/zlib[minizip] + virtual/libintl + virtual/opengl + a52? ( media-libs/a52dec ) + alsa? ( media-libs/alsa-lib ) + aom? ( media-libs/libaom:= ) + archive? ( app-arch/libarchive:= ) + aribsub? ( media-libs/aribb24 ) + bidi? ( + dev-libs/fribidi + media-libs/freetype:2[harfbuzz] + media-libs/harfbuzz + virtual/ttf-fonts + ) + bluray? ( >=media-libs/libbluray-1.3.0:= ) + cddb? ( media-libs/libcddb ) + chromaprint? ( media-libs/chromaprint:= ) + chromecast? ( + >=dev-libs/protobuf-2.5.0:= + >=net-libs/libmicrodns-0.1.2:= + ) + dav1d? ( media-libs/dav1d:= ) + dbus? ( sys-apps/dbus ) + dc1394? ( + media-libs/libdc1394:2 + sys-libs/libraw1394 + ) + dts? ( media-libs/libdca ) + dvbpsi? ( >=media-libs/libdvbpsi-1.2.0:= ) + dvd? ( + >=media-libs/libdvdnav-6.1.1:0= + >=media-libs/libdvdread-6.1.2:0= + ) + faad? ( media-libs/faad2 ) + fdk? ( media-libs/fdk-aac:= ) + ffmpeg? ( >=media-video/ffmpeg-3.1.3:0=[postproc,vaapi?,vdpau?] ) + flac? ( + media-libs/flac + media-libs/libogg + ) + fluidsynth? ( media-sound/fluidsynth:= ) + fontconfig? ( media-libs/fontconfig:1.0 ) + gcrypt? ( + dev-libs/libgcrypt:0= + dev-libs/libgpg-error + ) + gme? ( media-libs/game-music-emu ) + gnome-keyring? ( app-crypt/libsecret ) + gstreamer? ( >=media-libs/gst-plugins-base-1.4.5:1.0 ) + ieee1394? ( + sys-libs/libavc1394 + sys-libs/libraw1394 + ) + jack? ( virtual/jack ) + jpeg? ( virtual/jpeg:0 ) + kate? ( media-libs/libkate ) + libass? ( + media-libs/fontconfig:1.0 + media-libs/libass:= + ) + libcaca? ( media-libs/libcaca ) + libnotify? ( + dev-libs/glib:2 + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:3 + x11-libs/libnotify + ) + libsamplerate? ( media-libs/libsamplerate ) + libtar? ( dev-libs/libtar ) + libtiger? ( media-libs/libtiger ) + linsys? ( media-libs/zvbi ) + lirc? ( app-misc/lirc ) + live? ( >=media-plugins/live-2021.05.22:= ) + lua? ( ${LUA_DEPS} ) + mad? ( media-libs/libmad ) + matroska? ( + >=dev-libs/libebml-1.4.2:= + media-libs/libmatroska:= + ) + modplug? ( >=media-libs/libmodplug-0.8.9.0 ) + mp3? ( media-sound/mpg123 ) + mpeg? ( media-libs/libmpeg2 ) + mtp? ( media-libs/libmtp:= ) + musepack? ( media-sound/musepack-tools ) + ncurses? ( sys-libs/ncurses:=[unicode(+)] ) + nfs? ( >=net-fs/libnfs-0.10.0:= ) + ogg? ( media-libs/libogg ) + opus? ( >=media-libs/opus-1.0.3 ) + png? ( media-libs/libpng:0= ) + projectm? ( + media-fonts/dejavu + media-libs/libprojectm:0= + ) + pulseaudio? ( media-sound/pulseaudio ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtsvg:5 + dev-qt/qtwidgets:5 + X? ( + dev-qt/qtx11extras:5 + x11-libs/libX11 + ) + ) + rdp? ( >=net-misc/freerdp-2.0.0_rc0:=[client(+)] ) + samba? ( >=net-fs/samba-4.0.0:0[client,-debug(-)] ) + sdl-image? ( media-libs/sdl-image ) + sftp? ( net-libs/libssh2 ) + shout? ( media-libs/libshout ) + sid? ( media-libs/libsidplay:2 ) + skins? ( + x11-libs/libXext + x11-libs/libXinerama + x11-libs/libXpm + ) + soxr? ( >=media-libs/soxr-0.1.2 ) + speex? ( + >=media-libs/speex-1.2.0 + media-libs/speexdsp + ) + srt? ( >=net-libs/srt-1.4.2:= ) + ssl? ( net-libs/gnutls:= ) + svg? ( + gnome-base/librsvg:2 + x11-libs/cairo + ) + taglib? ( >=media-libs/taglib-1.9 ) + theora? ( media-libs/libtheora ) + tremor? ( media-libs/tremor ) + truetype? ( + media-libs/freetype:2 + virtual/ttf-fonts + !fontconfig? ( media-fonts/dejavu ) + ) + twolame? ( media-sound/twolame ) + udev? ( virtual/udev ) + upnp? ( net-libs/libupnp:=[ipv6] ) + v4l? ( media-libs/libv4l:= ) + vaapi? ( x11-libs/libva:=[drm,wayland?,X?] ) + vdpau? ( x11-libs/libvdpau ) + vnc? ( net-libs/libvncserver ) + vpx? ( media-libs/libvpx:= ) + wayland? ( + >=dev-libs/wayland-1.15 + dev-libs/wayland-protocols + ) + X? ( + x11-libs/libX11 + x11-libs/libxcb + x11-libs/xcb-util + x11-libs/xcb-util-keysyms + ) + x264? ( >=media-libs/x264-0.0.20190214:= ) + x265? ( media-libs/x265:= ) + xml? ( dev-libs/libxml2:2 ) + zeroconf? ( net-dns/avahi[dbus] ) + zvbi? ( media-libs/zvbi ) +" +DEPEND="${RDEPEND} + X? ( x11-base/xorg-proto ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch # build system + "${FILESDIR}"/${PN}-2.2.8-freerdp-2.patch # bug 590164 + "${FILESDIR}"/${PN}-3.0.6-fdk-aac-2.0.0.patch # bug 672290 + "${FILESDIR}"/${PN}-3.0.11.1-configure_lua_version.patch + "${FILESDIR}"/${PN}-3.0.11.1-srt-1.4.2.patch # bug 758062 + "${FILESDIR}"/${PN}-3.0.13-srt-1.3.0.patch + "${FILESDIR}"/${PN}-3.0.14-fix-live-address-api.patch # bug 795798 +) + +DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt ) + +pkg_setup() { + if use lua; then + lua-single_pkg_setup + fi +} + +src_prepare() { + xdg_src_prepare # bug 608256 + + has_version 'net-libs/libupnp:1.8' && \ + eapply "${FILESDIR}"/${PN}-2.2.8-libupnp-slot-1.8.patch + + # Bootstrap when we are on a git checkout. + if [[ ${PV} = *9999 ]] ; then + ./bootstrap + fi + + # Make it build with libtool 1.5 + #rm m4/lt* m4/libtool.m4 || die + + # We are not in a real git checkout due to the absence of a .git directory. + touch src/revision.txt || die + + # Don't use --started-from-file when not using dbus. + if ! use dbus ; then + sed -i 's/ --started-from-file//' share/vlc.desktop.in || die + fi + + # Disable running of vlc-cache-gen, we do that in pkg_postinst + sed -e "/test.*build.*host/s/\$(host)/nothanks/" \ + -i Makefile.am -i bin/Makefile.am || die "Failed to disable vlc-cache-gen" + + # Fix gettext version mismatch errors. + sed -i -e s/GETTEXT_VERSION/GETTEXT_REQUIRE_VERSION/ configure.ac || die + + eautoreconf + + # Disable automatic running of tests. + find . -name 'Makefile.in' -exec sed -i 's/\(..*\)check-TESTS/\1/' {} \; || die +} + +src_configure() { + local -x BUILDCC=$(tc-getBUILD_CC) + + local myeconfargs=( + --disable-aa + --disable-optimizations + --disable-rpath + --disable-update-check + --enable-fast-install + --enable-screen + --enable-vcd + --enable-vlc + --enable-vorbis + $(use_enable a52) + $(use_enable alsa) + $(use_enable aom) + $(use_enable archive) + $(use_enable aribsub) + $(use_enable bidi fribidi) + $(use_enable bidi harfbuzz) + $(use_enable bluray) + $(use_enable cddb libcddb) + $(use_enable chromaprint) + $(use_enable chromecast) + $(use_enable chromecast microdns) + $(use_enable cpu_flags_arm_neon neon) + $(use_enable cpu_flags_ppc_altivec altivec) + $(use_enable cpu_flags_x86_mmx mmx) + $(use_enable cpu_flags_x86_sse sse) + $(use_enable dav1d) + $(use_enable dbus) + $(use_enable dbus kwallet) + $(use_enable dc1394) + $(use_enable debug) + $(use_enable directx) + $(use_enable directx d3d11va) + $(use_enable directx dxva2) + $(use_enable dts dca) + $(use_enable dvbpsi) + $(use_enable dvd dvdnav) + $(use_enable dvd dvdread) + $(use_enable encode sout) + $(use_enable encode vlm) + $(use_enable faad) + $(use_enable fdk fdkaac) + $(use_enable ffmpeg avcodec) + $(use_enable ffmpeg avformat) + $(use_enable ffmpeg postproc) + $(use_enable ffmpeg swscale) + $(use_enable flac) + $(use_enable fluidsynth) + $(use_enable fontconfig) + $(use_enable gcrypt libgcrypt) + $(use_enable gme) + $(use_enable gnome-keyring secret) + $(use_enable gstreamer gst-decode) + $(use_enable ieee1394 dv1394) + $(use_enable jack) + $(use_enable jpeg) + $(use_enable kate) + $(use_enable libass) + $(use_enable libcaca caca) + $(use_enable libnotify notify) + $(use_enable libsamplerate samplerate) + $(use_enable libtar) + $(use_enable libtiger tiger) + $(use_enable linsys) + $(use_enable lirc) + $(use_enable live live555) + $(use_enable lua) + $(use_enable macosx-notifications osx-notifications) + $(use_enable mad) + $(use_enable matroska) + $(use_enable modplug mod) + $(use_enable mp3 mpg123) + $(use_enable mpeg libmpeg2) + $(use_enable mtp) + $(use_enable musepack mpc) + $(use_enable ncurses) + $(use_enable nfs) + $(use_enable ogg) + $(use_enable omxil) + $(use_enable omxil omxil-vout) + $(use_enable optimisememory optimize-memory) + $(use_enable opus) + $(use_enable png) + $(use_enable projectm) + $(use_enable pulseaudio pulse) + $(use_enable qt5 qt) + $(use_enable rdp freerdp) + $(use_enable run-as-root) + $(use_enable samba smbclient) + $(use_enable sdl-image) + $(use_enable sftp) + $(use_enable shout) + $(use_enable sid) + $(use_enable skins skins2) + $(use_enable soxr) + $(use_enable speex) + $(use_enable srt) + $(use_enable ssl gnutls) + $(use_enable svg) + $(use_enable svg svgdec) + $(use_enable taglib) + $(use_enable theora) + $(use_enable tremor) + $(use_enable twolame) + $(use_enable udev) + $(use_enable upnp) + $(use_enable v4l v4l2) + $(use_enable vaapi libva) + $(use_enable vdpau) + $(use_enable vnc) + $(use_enable vpx) + $(use_enable wayland) + $(use_with X x) + $(use_enable X xcb) + $(use_enable X xvideo) + $(use_enable x264) + $(use_enable x264 x26410b) + $(use_enable x265) + $(use_enable xml libxml2) + $(use_enable zeroconf avahi) + $(use_enable zvbi) + $(use_enable !zvbi telx) + --with-kde-solid="${EPREFIX}"/usr/share/solid/actions + --disable-asdcp + --disable-coverage + --disable-cprof + --disable-crystalhd + --disable-decklink + --disable-gles2 + --disable-goom + --disable-kai + --disable-kva + --disable-libplacebo + --disable-maintainer-mode + --disable-merge-ffmpeg + --disable-mfx + --disable-mmal + --disable-opencv + --disable-opensles + --disable-oss + --disable-rpi-omxil + --disable-schroedinger + --disable-shine + --disable-sndio + --disable-spatialaudio + --disable-vsxu + --disable-wasapi + --disable-wma-fixed + ) + # ^ We don't have these disabled libraries in the Portage tree yet. + + # Compatibility fix for Samba 4. + use samba && append-cppflags "-I/usr/include/samba-4.0" + + if use x86; then + # We need to disable -fstack-check if use >=gcc 4.8.0. bug #499996 + append-cflags $(test-flags-CC -fno-stack-check) + # Bug 569774 + replace-flags -Os -O2 + fi + + # VLC now requires C++11 after commit 4b1c9dcdda0bbff801e47505ff9dfd3f274eb0d8 + append-cxxflags -std=c++11 + + if use omxil; then + # bug #723006 + # https://trac.videolan.org/vlc/ticket/24617 + append-cflags -fcommon + fi + + # FIXME: Needs libresid-builder from libsidplay:2 which is in another directory... + append-ldflags "-L/usr/$(get_libdir)/sidplay/builders/" + + if use truetype || use bidi; then + myeconfargs+=( --enable-freetype ) + else + myeconfargs+=( --disable-freetype ) + fi + + if use truetype || use projectm; then + local dejavu="${EPREFIX}/usr/share/fonts/dejavu/" + myeconfargs+=( + --with-default-font=${dejavu}/DejaVuSans.ttf + --with-default-font-family=Sans + --with-default-monospace-font=${dejavu}/DejaVuSansMono.ttf + --with-default-monospace-font-family=Monospace + ) + fi + + econf "${myeconfargs[@]}" + + # _FORTIFY_SOURCE is set to 2 in config.h, which is also the default value on Gentoo. + # Other values may break the build (bug 523144), so definition should not be removed. + # To prevent redefinition warnings, we undefine _FORTIFY_SOURCE at the start of config.h + sed -i '1i#undef _FORTIFY_SOURCE' config.h || die +} + +src_test() { + virtx emake check-TESTS +} + +src_install() { + default + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + if [[ -z "${ROOT}" ]] && [[ -x "${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen" ]] ; then + einfo "Running ${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen on ${EROOT}/usr/$(get_libdir)/vlc/plugins/" + "${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen" "${EROOT}/usr/$(get_libdir)/vlc/plugins/" + else + ewarn "We cannot run vlc-cache-gen (most likely ROOT != /)" + ewarn "Please run ${EROOT}/usr/$(get_libdir)/vlc/vlc-cache-gen manually" + ewarn "If you do not do it, vlc will take a long time to load." + fi + + xdg_pkg_postinst +} + +pkg_postrm() { + if [[ -e "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat ]]; then + rm "${EROOT}"/usr/$(get_libdir)/vlc/plugins/plugins.dat || die "Failed to rm plugins.dat" + fi + + xdg_pkg_postrm +} diff --git a/media-video/vlc/vlc-3.0.9999.ebuild b/media-video/vlc/vlc-3.0.9999.ebuild index 1a10ae10a4af..9de5769c7062 100644 --- a/media-video/vlc/vlc-3.0.9999.ebuild +++ b/media-video/vlc/vlc-3.0.9999.ebuild @@ -158,7 +158,7 @@ RDEPEND=" mpeg? ( media-libs/libmpeg2 ) mtp? ( media-libs/libmtp:= ) musepack? ( media-sound/musepack-tools ) - ncurses? ( sys-libs/ncurses:0=[unicode] ) + ncurses? ( sys-libs/ncurses:=[unicode(+)] ) nfs? ( >=net-fs/libnfs-0.10.0:= ) ogg? ( media-libs/libogg ) opus? ( >=media-libs/opus-1.0.3 ) diff --git a/media-video/vlc/vlc-9999.ebuild b/media-video/vlc/vlc-9999.ebuild index cdbff0a84948..7313dc1dcb86 100644 --- a/media-video/vlc/vlc-9999.ebuild +++ b/media-video/vlc/vlc-9999.ebuild @@ -160,7 +160,7 @@ RDEPEND=" mpeg? ( media-libs/libmpeg2 ) mtp? ( media-libs/libmtp:= ) musepack? ( media-sound/musepack-tools ) - ncurses? ( sys-libs/ncurses:0=[unicode] ) + ncurses? ( sys-libs/ncurses:=[unicode(+)] ) nfs? ( >=net-fs/libnfs-0.10.0:= ) ogg? ( media-libs/libogg ) opus? ( >=media-libs/opus-1.0.3 ) diff --git a/media-video/xvid4conf/Manifest b/media-video/xvid4conf/Manifest index a0f504d09ab7..59d8f89b8146 100644 --- a/media-video/xvid4conf/Manifest +++ b/media-video/xvid4conf/Manifest @@ -1,3 +1,3 @@ DIST xvid4conf-1.12.tar.gz 133494 BLAKE2B cafe728bd85d2f34ba382d672d38b60378e632358ea7a03b9e3599c8a415517c6a84678a04383fbb2480e3ef35890a134c8fb6aa98eeeea8aac2fe9566282fc9 SHA512 277b081563b3e9ec2e3c78cf0ea7c504acf0585c0184ee359d0174be38c4c32b931360ce543193df3b323083d21a58d2ff94380647773c71eebed6928c857f57 -EBUILD xvid4conf-1.12.ebuild 428 BLAKE2B eaee613fed7a00cfa6e776225261da5866ac132095fb930b82986a2a84ad31472a5cd543330a060eea4dabe34cdd512bcc771217f179172e419d27d68286d81c SHA512 ce0c1c23c80317b82f3e2ca59f1beba4fdebb8adcd410fa551ce4286d817cc4733b6f97d32961b74c959a43fb7354d017fd916418488bb9a7413b702f097435f +EBUILD xvid4conf-1.12.ebuild 429 BLAKE2B 70d5fa25d37f06ed47c9a552935beb46151593d6008ac39c7099ef604ce3039ff2b5831045165bdcf60687b689f9f5a0ec75478975ca72505e12487857b66fff SHA512 6a4fcb03f0458cf8894f5ce0f086bf6d3d7344cb4de99ca622376a5cd7ce46a086b2f3a5a480bc04f82561a28f6dde27272adbeca2d7f0e459e01e8e3c71eee2 MISC metadata.xml 221 BLAKE2B dbd3c4ca4e95a1ad33f79e707799593ad704252f4f1c17e08c7e42ede0e4ad153eb659fc130717823dad18cab485c7b941a7089d2d964b96d2e2f7c5f1ba8df2 SHA512 e5a88aac41d38b1bdf0becef8d0a08d1875eb803fac3f791524a7810c8068cfd2239a42717bddf9835daf6c0b2c5d5592b12669882bbc2abaab39955d7de7fb4 diff --git a/media-video/xvid4conf/xvid4conf-1.12.ebuild b/media-video/xvid4conf/xvid4conf-1.12.ebuild index 04e927f01a98..1abd32b45fc1 100644 --- a/media-video/xvid4conf/xvid4conf-1.12.ebuild +++ b/media-video/xvid4conf/xvid4conf-1.12.ebuild @@ -1,7 +1,7 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 DESCRIPTION="GTK2-configuration dialog for xvid4" HOMEPAGE="http://cvs.exit1.org/cgi-bin/viewcvs.cgi/xvid4conf/" @@ -10,8 +10,7 @@ SRC_URI="mirror://gentoo/${P}.tar.gz" LICENSE="GPL-2" SLOT="0" KEYWORDS="~alpha amd64 ~hppa ~ia64 ppc ppc64 sparc x86" -IUSE="" RDEPEND=">=x11-libs/gtk+-2.2.4:2" -DEPEND="${RDEPEND} - virtual/pkgconfig" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" -- cgit v1.2.3