From 0e83ee97d831abe38c8e764fb9bbfef9de04daf2 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Fri, 26 Aug 2022 20:52:48 +0100 Subject: gentoo auto-resync : 26:08:2022 - 20:52:47 --- media-tv/kodi/Manifest | 3 +- media-tv/kodi/files/kodi-19.4-atomic.patch | 108 +++++++++++++++++++++++++++++ media-tv/kodi/kodi-19.4-r2.ebuild | 1 + 3 files changed, 111 insertions(+), 1 deletion(-) create mode 100644 media-tv/kodi/files/kodi-19.4-atomic.patch (limited to 'media-tv/kodi') diff --git a/media-tv/kodi/Manifest b/media-tv/kodi/Manifest index b4281bef6aa8..5b5cc325b6c6 100644 --- a/media-tv/kodi/Manifest +++ b/media-tv/kodi/Manifest @@ -1,4 +1,5 @@ AUX kodi-19.1-fmt-8.patch 875 BLAKE2B 12899b05bc5c79bd6dd9871d45065142848507bdf928dca12a1fff483611df1d924f1a386881232fbdd67eb303e627f41b331b8ce769325731dbbd4b63a0d4ab SHA512 bb54aa79a497d6d13f88ae9d1e530628eecc1b57deba9c4a404c2b5595f5ccc0c0069ce728a34df08ffbcac984713442091bb63bcdb06adacf7dc05965001e58 +AUX kodi-19.4-atomic.patch 3225 BLAKE2B 83559b2886625c3d8b3a4958733c62508e3ca2d538141f061c5d8f8bc681710540c1ce5cffe3184e293d9f8d5e99c1c83cf29d8d4cada9920f3b2f0f756b6c44 SHA512 8d011c9d0caa037f44557a7fd6f745735207fd510b76f53064ee2dbc03e660dfe475586fa4a08fb5308ed0d5133261aae6853c2c7b63d8da4600903f6b232f9a AUX kodi-19.4-fmt-9.patch 2455 BLAKE2B 02ade8fe11dc19850814b01dd77db9f8f58aa2b9fac56d525c0fcd6e1235fdb3bee251835e6ddb78579e0fd1568f9c1284cbae356188d6998b6aed062f3089d1 SHA512 be32a2413b69b3c1bbc053a328c07bb8b42d84a58a22b0d84da6b0d50cf6d3cb29a509ebb808b4f9e1b3f1bc89ee6aa36dd5ee5685597102c3855aa27dfa724e DIST ffmpeg-kodi-4.3.1-Matrix-Beta1.tar.gz 13477440 BLAKE2B 49415f76fd2a888b0efadb19597bd89db65c3d9e1224ab529ff0d73ab5734a23982b4d4905ddeb105ce59a816c4642cdb9f5568b0c39c29f5fb9431f9623d4ec SHA512 ce43390e816dabeed4ca231f5f7adade6c721c38e17996a57810fb6025ea49b812133c2a6e29aac7c674d4e4af3a21dbd7e605d85fb966935a01bda983b884ac DIST ffmpeg-kodi-4.3.2-Matrix-19.1.tar.gz 13490949 BLAKE2B 90007f2c4bac0e0a52b419d9333cf75b00e291f1ea7447cbdc579ee2f860de7c436c924253600f3fbd6e3faaabe97aaf46db083a5bbd2f5f03badcca5d643e89 SHA512 d3719253d674b16638b873545583b82fba3176803c81ba8bcb37e90456dd956f1c2ee8996493840cff2d61c6399f06ed0524a759f46e4ce174bce23e9c6eda4a @@ -19,7 +20,7 @@ EBUILD kodi-19.1-r2.ebuild 10980 BLAKE2B 51df21a2bc5577199c3d00e76b7b1fbf6faddac EBUILD kodi-19.2-r1.ebuild 10967 BLAKE2B aa98be2ffb033153dde9768f69ebbd48f8b283e72f1a938ee4a5bfdb23f2dbaf1db705bd8021054e49dfd5690fc140da72b14479d92d9a7c6af6f78c0b74a70d SHA512 8a3d87bf7de71a21a6cd43148761b609dce52e7467ffb6515a4952ef16e4ed5cf4a04fd0b8e8b4f30ab32912d49ac9c2db0a739a9014617d38b23b0464173752 EBUILD kodi-19.3-r1.ebuild 10970 BLAKE2B f735aa870b97d620016d7add3d6be68dfa2714e592e59f9cad49d4c9df820468774468d612bffa46428220742a7d26ca4338e165be841f668a45bc98117af77a SHA512 3888c3b014ff78ccb637975271bb4efb9b2851720280c57a6d9bfb12b669e73ccf0f2a82c43346e9fb08d115fbe92bcd34bf31e405d222d80b23bf2888f733df EBUILD kodi-19.4-r1.ebuild 10934 BLAKE2B 66b014a8bbdd750529d7ee8e8d254b67f550723f6fd4f3cc37255f4d7ddd996530d298999d5e238defb3988c387df2e1c70ac953fbd78fae7ebc35cedbcd68f7 SHA512 49134ccbd9c5380937c4b1f4aaf32c48bd8883c46386dcede2591a26a82e7c57a624c83134f5f3e3dba7ef6d78518734f4656bf705ab8ad543c806f729677a96 -EBUILD kodi-19.4-r2.ebuild 10979 BLAKE2B 881c19c548776b470a962255ca031dbb1573810900dd9c483eb9aa4e05ed7586c5f02afda003ded2010143dbbdf4beabd479c296fbe15485a6666a6b207335a5 SHA512 8210c96f4f3f21b5ca3e7c31280ff716639e728e2578ee804640a3424edf386b9d67ac30d3fd987e0c1733153b334d2a4623bd5e420d716f670ab1d0c5153557 +EBUILD kodi-19.4-r2.ebuild 11012 BLAKE2B a75805f6adad0b6d45e11950e7181a2fa5a711f4bdca08b7f7a4f0f577f65f986d541a70fb15ace74bc0364171f0c4658e33aaa26b70b8a27c31047c7c33935e SHA512 78528bf3f76b572ae5585e25711c9d2790594e2019b6e250847163179eacf2134251bb55b823d256e0d6720e653d69484ee39b229f39da4d5c54b94b105c4eaf EBUILD kodi-19.4.ebuild 10967 BLAKE2B 01e1c3aa3e02faafade8b8f176abaf1bc7172acbdbcf58427b795e15d9363fe8ca21318b47542b7504714ad415021b8c9a18b1a292ac08482846531c14a57ce8 SHA512 7a540cead57d86de11abcbc11e5b4eeb8055bbae740a697920ac279582f4bb3be6a39b5b173e45151907b910ba8bbb47bb3b36e8045e3055a644fb9fed70a5f8 EBUILD kodi-19.9999.ebuild 10934 BLAKE2B 66b014a8bbdd750529d7ee8e8d254b67f550723f6fd4f3cc37255f4d7ddd996530d298999d5e238defb3988c387df2e1c70ac953fbd78fae7ebc35cedbcd68f7 SHA512 49134ccbd9c5380937c4b1f4aaf32c48bd8883c46386dcede2591a26a82e7c57a624c83134f5f3e3dba7ef6d78518734f4656bf705ab8ad543c806f729677a96 EBUILD kodi-9999.ebuild 11000 BLAKE2B c362b18d245a3bfc02dec05c7edfdcdee101f12801ad4cbf1af1818de30d538d44dd34fe769aa6b09a05ddd457a3d43b5a510a1fba3e92733932f77856ee577f SHA512 8c03b0055d58750de3bdd99b4096ae27eeaa4764733de7725ffb4ce1baf896057841934f9795a8e03afe48cbf24cb9353a934ab5aa9b33a142f9dd1a9d5873ec diff --git a/media-tv/kodi/files/kodi-19.4-atomic.patch b/media-tv/kodi/files/kodi-19.4-atomic.patch new file mode 100644 index 000000000000..3811fda8886d --- /dev/null +++ b/media-tv/kodi/files/kodi-19.4-atomic.patch @@ -0,0 +1,108 @@ +From ac3213e683e4c62c50dc02fef3b168d883245094 Mon Sep 17 00:00:00 2001 +From: Yixun Lan +Date: Tue, 9 Aug 2022 16:45:09 +0800 +Subject: [PATCH] [cmake] link atomic library for certain CPU architectures + +For those CPU architectures: +RISC-V lack 8-bit and 16-bit atomic instructions, and +ARM/MIPS/PPC lack 64-bit atomic instruction. + +GCC is supposed to convert these atomics via masking and shifting +like LLVM, which means anything that wants to use these instructions +needs the link option -latomic. + +In this patch, we will try to detect if 8-bit, 64-bit atomic instructions exist, +otherwise the atomic library will append to the DEPLIBS list. + +Original issue: +* https://gitlab.kitware.com/cmake/cmake/-/issues/23021#note_1098733 + +For reference: +* https://gcc.gnu.org/wiki/Atomic/GCCMM + +riscv64 specific: +* https://lists.debian.org/debian-riscv/2022/01/msg00009.html + +Signed-off-by: Yixun Lan +--- + cmake/modules/FindAtomic.cmake | 56 +++++++++++++++++++++++++++++ + cmake/scripts/linux/ArchSetup.cmake | 3 ++ + 2 files changed, 59 insertions(+) + create mode 100644 cmake/modules/FindAtomic.cmake + +diff --git a/cmake/modules/FindAtomic.cmake b/cmake/modules/FindAtomic.cmake +new file mode 100644 +index 0000000000..8ea3c815d7 +--- /dev/null ++++ b/cmake/modules/FindAtomic.cmake +@@ -0,0 +1,56 @@ ++#.rst: ++# FindAtomic ++# ----- ++# Finds the ATOMIC library ++# ++# This will define the following variables:: ++# ++# ATOMIC_FOUND - system has ATOMIC ++# ATOMIC_LIBRARIES - the ATOMIC libraries ++# ++# and the following imported targets:: ++# ++# ATOMIC::ATOMIC - The ATOMIC library ++ ++ ++include(CheckCXXSourceCompiles) ++ ++set(atomic_code ++ " ++ #include ++ #include ++ std::atomic n8 (0); // riscv64 ++ std::atomic n64 (0); // armel, mipsel, powerpc ++ int main() { ++ ++n8; ++ ++n64; ++ return 0; ++ }") ++ ++check_cxx_source_compiles("${atomic_code}" ATOMIC_LOCK_FREE_INSTRUCTIONS) ++ ++if(ATOMIC_LOCK_FREE_INSTRUCTIONS) ++ set(ATOMIC_FOUND TRUE) ++ set(ATOMIC_LIBRARIES) ++else() ++ set(CMAKE_REQUIRED_LIBRARIES "-latomic") ++ check_cxx_source_compiles("${atomic_code}" ATOMIC_IN_LIBRARY) ++ set(CMAKE_REQUIRED_LIBRARIES) ++ if(ATOMIC_IN_LIBRARY) ++ set(ATOMIC_LIBRARY atomic) ++ include(FindPackageHandleStandardArgs) ++ find_package_handle_standard_args(Atomic DEFAULT_MSG ATOMIC_LIBRARY) ++ set(ATOMIC_LIBRARIES ${ATOMIC_LIBRARY}) ++ if(NOT TARGET ATOMIC::ATOMIC) ++ add_library(ATOMIC::ATOMIC UNKNOWN IMPORTED) ++ set_target_properties(ATOMIC::ATOMIC PROPERTIES ++ IMPORTED_LOCATION "${ATOMIC_LIBRARY}") ++ endif() ++ unset(ATOMIC_LIBRARY) ++ else() ++ if(Atomic_FIND_REQUIRED) ++ message(FATAL_ERROR "Neither lock free instructions nor -latomic found.") ++ endif() ++ endif() ++endif() ++unset(atomic_code) +diff --git a/cmake/scripts/linux/ArchSetup.cmake b/cmake/scripts/linux/ArchSetup.cmake +index 35ab1402f5..848723af1f 100644 +--- a/cmake/scripts/linux/ArchSetup.cmake ++++ b/cmake/scripts/linux/ArchSetup.cmake +@@ -199,3 +199,6 @@ if(NOT USE_INTERNAL_LIBS) + set(USE_INTERNAL_LIBS OFF) + endif() + endif() ++ ++# Atomic library ++list(APPEND PLATFORM_REQUIRED_DEPS Atomic) +-- +2.35.1 + diff --git a/media-tv/kodi/kodi-19.4-r2.ebuild b/media-tv/kodi/kodi-19.4-r2.ebuild index 060512a9f02d..eb948b74ad25 100644 --- a/media-tv/kodi/kodi-19.4-r2.ebuild +++ b/media-tv/kodi/kodi-19.4-r2.ebuild @@ -35,6 +35,7 @@ inherit autotools cmake desktop linux-info pax-utils python-single-r1 xdg PATCHES=( "${FILESDIR}/${P}-fmt-9.patch" + "${FILESDIR}/${P}-atomic.patch" ) DESCRIPTION="A free and open source media-player and entertainment hub" -- cgit v1.2.3