From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id BD7051581F3 for ; Thu, 28 Nov 2024 05:37:22 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id D8EB2E08E2; Thu, 28 Nov 2024 05:37:21 +0000 (UTC) Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id A6F10E08E2 for ; Thu, 28 Nov 2024 05:37:18 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 2B1783430A1 for ; Thu, 28 Nov 2024 05:37:16 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 7AE6C16DA for ; Thu, 28 Nov 2024 05:37:14 +0000 (UTC) From: "Ionen Wolkens" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Ionen Wolkens" Message-ID: <1732772187.a15fa5bb5c73df85a7261af00158780ca309f357.ionen@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: app-emulation/wine-proton/ X-VCS-Repository: repo/gentoo X-VCS-Files: app-emulation/wine-proton/wine-proton-8.0.5c.ebuild app-emulation/wine-proton/wine-proton-9.0.2.ebuild app-emulation/wine-proton/wine-proton-9.0.3.ebuild app-emulation/wine-proton/wine-proton-9999.ebuild X-VCS-Directories: app-emulation/wine-proton/ X-VCS-Committer: ionen X-VCS-Committer-Name: Ionen Wolkens X-VCS-Revision: a15fa5bb5c73df85a7261af00158780ca309f357 X-VCS-Branch: master Date: Thu, 28 Nov 2024 05:37:14 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: b582b3de-9a16-48f3-87f5-c6cb9fe444a5 X-Archives-Hash: f92aec66f8bbf98c240a7e9ec211f36c commit: a15fa5bb5c73df85a7261af00158780ca309f357 Author: Ionen Wolkens gentoo org> AuthorDate: Thu Nov 28 03:48:48 2024 +0000 Commit: Ionen Wolkens gentoo org> CommitDate: Thu Nov 28 05:36:27 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a15fa5bb app-emulation/wine-proton: allow using compiler-rt[atomic-builtins] Passing -latomic is no longer needed when using the new compiler-rt w/ USE=atomic-builtins, and lets gcc be optional on llvm profiles. To recap: * gcc: don't need -latomic * clang (w/o compiler-rt): don't need -latomic * clang + compiler-rt[atomic-builtins]: don't need -latomic * clang + compiler-rt[-atomic-builtins]: needs -latomic So, if compiler-rt always provides atomics in the future (rather than optional) all workarounds could be dropped. The || ( ) is a bit "best effort" given dependencies don't know what is actually going to be used. (not worth a revbump, if really want to depclean gcc please re-emerge manually) Signed-off-by: Ionen Wolkens gentoo.org> app-emulation/wine-proton/wine-proton-8.0.5c.ebuild | 19 ++++++++++++++----- app-emulation/wine-proton/wine-proton-9.0.2.ebuild | 19 ++++++++++++++----- app-emulation/wine-proton/wine-proton-9.0.3.ebuild | 19 ++++++++++++++----- app-emulation/wine-proton/wine-proton-9999.ebuild | 19 ++++++++++++++----- 4 files changed, 56 insertions(+), 20 deletions(-) diff --git a/app-emulation/wine-proton/wine-proton-8.0.5c.ebuild b/app-emulation/wine-proton/wine-proton-8.0.5c.ebuild index fe281d763060..484175067031 100644 --- a/app-emulation/wine-proton/wine-proton-8.0.5c.ebuild +++ b/app-emulation/wine-proton/wine-proton-8.0.5c.ebuild @@ -62,10 +62,8 @@ WINE_DLOPEN_DEPEND=" xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] ) xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] ) " -# gcc: for -latomic with clang WINE_COMMON_DEPEND=" ${WINE_DLOPEN_DEPEND} - sys-devel/gcc:* x11-libs/libX11[${MULTILIB_USEDEP}] x11-libs/libXext[${MULTILIB_USEDEP}] x11-libs/libdrm[video_cards_amdgpu?,${MULTILIB_USEDEP}] @@ -98,6 +96,10 @@ RDEPEND=" " DEPEND=" ${WINE_COMMON_DEPEND} + || ( + sys-devel/gcc:* + sys-libs/compiler-rt:*[atomic-builtins(-)] + ) sys-kernel/linux-headers x11-base/xorg-proto " @@ -165,9 +167,16 @@ src_prepare() { # drop as a quick fix for now which hopefully should be safe sed -i '/MSVCRTFLAGS=/s/-mabi=ms//' configure.ac || die - # needed by Valve's fsync patches if using clang (undef atomic_load_8) - sed -e '/^UNIX_LIBS.*=/s/$/ -latomic/' \ - -i dlls/{ntdll,winevulkan}/Makefile.in || die + # note: this is kind-of best effort and ignores llvm slots, rather + # than do LLVM_SLOT it may(?) be better to force atomic-builtins + # then could drop this altogether in the future + if [[ $(tc-get-c-rtlib) == compiler-rt ]] && + has_version 'sys-libs/compiler-rt[-atomic-builtins(-)]' + then + # needed by Valve's fsync patches if using compiler-rt w/o atomics + sed -e '/^UNIX_LIBS.*=/s/$/ -latomic/' \ + -i dlls/{ntdll,winevulkan}/Makefile.in || die + fi fi # ensure .desktop calls this variant + slot diff --git a/app-emulation/wine-proton/wine-proton-9.0.2.ebuild b/app-emulation/wine-proton/wine-proton-9.0.2.ebuild index 4a959910a693..e025b12e1398 100644 --- a/app-emulation/wine-proton/wine-proton-9.0.2.ebuild +++ b/app-emulation/wine-proton/wine-proton-9.0.2.ebuild @@ -63,10 +63,8 @@ WINE_DLOPEN_DEPEND=" xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] ) xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] ) " -# gcc: for -latomic with clang WINE_COMMON_DEPEND=" ${WINE_DLOPEN_DEPEND} - sys-devel/gcc:* x11-libs/libX11[${MULTILIB_USEDEP}] x11-libs/libXext[${MULTILIB_USEDEP}] x11-libs/libdrm[video_cards_amdgpu?,${MULTILIB_USEDEP}] @@ -102,6 +100,10 @@ RDEPEND=" " DEPEND=" ${WINE_COMMON_DEPEND} + || ( + sys-devel/gcc:* + sys-libs/compiler-rt:*[atomic-builtins(-)] + ) sys-kernel/linux-headers x11-base/xorg-proto " @@ -177,9 +179,16 @@ src_prepare() { # drop as a quick fix for now which hopefully should be safe sed -i '/MSVCRTFLAGS=/s/-mabi=ms//' configure.ac || die - # needed by Valve's fsync patches if using clang (undef atomic_load_8) - sed -e '/^UNIX_LIBS.*=/s/$/ -latomic/' \ - -i dlls/{ntdll,winevulkan}/Makefile.in || die + # note: this is kind-of best effort and ignores llvm slots, rather + # than do LLVM_SLOT it may(?) be better to force atomic-builtins + # then could drop this altogether in the future + if [[ $(tc-get-c-rtlib) == compiler-rt ]] && + has_version 'sys-libs/compiler-rt[-atomic-builtins(-)]' + then + # needed by Valve's fsync patches if using compiler-rt w/o atomics + sed -e '/^UNIX_LIBS.*=/s/$/ -latomic/' \ + -i dlls/{ntdll,winevulkan}/Makefile.in || die + fi fi # ensure .desktop calls this variant + slot diff --git a/app-emulation/wine-proton/wine-proton-9.0.3.ebuild b/app-emulation/wine-proton/wine-proton-9.0.3.ebuild index 1b6c3be815f9..2b91f26fbdd4 100644 --- a/app-emulation/wine-proton/wine-proton-9.0.3.ebuild +++ b/app-emulation/wine-proton/wine-proton-9.0.3.ebuild @@ -63,10 +63,8 @@ WINE_DLOPEN_DEPEND=" xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] ) xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] ) " -# gcc: for -latomic with clang WINE_COMMON_DEPEND=" ${WINE_DLOPEN_DEPEND} - sys-devel/gcc:* x11-libs/libX11[${MULTILIB_USEDEP}] x11-libs/libXext[${MULTILIB_USEDEP}] x11-libs/libdrm[video_cards_amdgpu?,${MULTILIB_USEDEP}] @@ -102,6 +100,10 @@ RDEPEND=" " DEPEND=" ${WINE_COMMON_DEPEND} + || ( + sys-devel/gcc:* + sys-libs/compiler-rt:*[atomic-builtins(-)] + ) sys-kernel/linux-headers x11-base/xorg-proto " @@ -177,9 +179,16 @@ src_prepare() { # drop as a quick fix for now which hopefully should be safe sed -i '/MSVCRTFLAGS=/s/-mabi=ms//' configure.ac || die - # needed by Valve's fsync patches if using clang (undef atomic_load_8) - sed -e '/^UNIX_LIBS.*=/s/$/ -latomic/' \ - -i dlls/{ntdll,winevulkan}/Makefile.in || die + # note: this is kind-of best effort and ignores llvm slots, rather + # than do LLVM_SLOT it may(?) be better to force atomic-builtins + # then could drop this altogether in the future + if [[ $(tc-get-c-rtlib) == compiler-rt ]] && + has_version 'sys-libs/compiler-rt[-atomic-builtins(-)]' + then + # needed by Valve's fsync patches if using compiler-rt w/o atomics + sed -e '/^UNIX_LIBS.*=/s/$/ -latomic/' \ + -i dlls/{ntdll,winevulkan}/Makefile.in || die + fi fi # ensure .desktop calls this variant + slot diff --git a/app-emulation/wine-proton/wine-proton-9999.ebuild b/app-emulation/wine-proton/wine-proton-9999.ebuild index 66402fb77063..84d47f7e7cab 100644 --- a/app-emulation/wine-proton/wine-proton-9999.ebuild +++ b/app-emulation/wine-proton/wine-proton-9999.ebuild @@ -63,10 +63,8 @@ WINE_DLOPEN_DEPEND=" xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] ) xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] ) " -# gcc: for -latomic with clang WINE_COMMON_DEPEND=" ${WINE_DLOPEN_DEPEND} - sys-devel/gcc:* x11-libs/libX11[${MULTILIB_USEDEP}] x11-libs/libXext[${MULTILIB_USEDEP}] x11-libs/libdrm[video_cards_amdgpu?,${MULTILIB_USEDEP}] @@ -102,6 +100,10 @@ RDEPEND=" " DEPEND=" ${WINE_COMMON_DEPEND} + || ( + sys-devel/gcc:* + sys-libs/compiler-rt:*[atomic-builtins(-)] + ) sys-kernel/linux-headers x11-base/xorg-proto " @@ -177,9 +179,16 @@ src_prepare() { # drop as a quick fix for now which hopefully should be safe sed -i '/MSVCRTFLAGS=/s/-mabi=ms//' configure.ac || die - # needed by Valve's fsync patches if using clang (undef atomic_load_8) - sed -e '/^UNIX_LIBS.*=/s/$/ -latomic/' \ - -i dlls/{ntdll,winevulkan}/Makefile.in || die + # note: this is kind-of best effort and ignores llvm slots, rather + # than do LLVM_SLOT it may(?) be better to force atomic-builtins + # then could drop this altogether in the future + if [[ $(tc-get-c-rtlib) == compiler-rt ]] && + has_version 'sys-libs/compiler-rt[-atomic-builtins(-)]' + then + # needed by Valve's fsync patches if using compiler-rt w/o atomics + sed -e '/^UNIX_LIBS.*=/s/$/ -latomic/' \ + -i dlls/{ntdll,winevulkan}/Makefile.in || die + fi fi # ensure .desktop calls this variant + slot