summaryrefslogtreecommitdiff
path: root/app-emulation
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-11-24 01:09:44 +0000
committerV3n3RiX <venerix@koprulu.sector>2022-11-24 01:09:44 +0000
commite33383d972aad8129fd4c1ee2b87f529f6efa8e9 (patch)
tree6a41fd6c2b9a997737264687637da3a9eee3d9d6 /app-emulation
parent89aeb05c8da1b0c32fb9d0cd5d202763780d5d5a (diff)
gentoo auto-resync : 24:11:2022 - 01:09:44
Diffstat (limited to 'app-emulation')
-rw-r--r--app-emulation/Manifest.gzbin15137 -> 15130 bytes
-rw-r--r--app-emulation/wine-proton/Manifest6
-rw-r--r--app-emulation/wine-proton/wine-proton-7.0.4.ebuild27
-rw-r--r--app-emulation/wine-proton/wine-proton-7.0.5.ebuild (renamed from app-emulation/wine-vanilla/wine-vanilla-7.18.ebuild)204
-rw-r--r--app-emulation/wine-proton/wine-proton-7.0.9999.ebuild27
-rw-r--r--app-emulation/wine-staging/Manifest11
-rw-r--r--app-emulation/wine-staging/wine-staging-7.18.ebuild356
-rw-r--r--app-emulation/wine-staging/wine-staging-7.19.ebuild25
-rw-r--r--app-emulation/wine-staging/wine-staging-7.20.ebuild25
-rw-r--r--app-emulation/wine-staging/wine-staging-7.21.ebuild25
-rw-r--r--app-emulation/wine-staging/wine-staging-9999.ebuild25
-rw-r--r--app-emulation/wine-vanilla/Manifest14
-rw-r--r--app-emulation/wine-vanilla/wine-vanilla-7.0-r3.ebuild6
-rw-r--r--app-emulation/wine-vanilla/wine-vanilla-7.0.1.ebuild25
-rw-r--r--app-emulation/wine-vanilla/wine-vanilla-7.19.ebuild25
-rw-r--r--app-emulation/wine-vanilla/wine-vanilla-7.20.ebuild25
-rw-r--r--app-emulation/wine-vanilla/wine-vanilla-7.21.ebuild25
-rw-r--r--app-emulation/wine-vanilla/wine-vanilla-9999.ebuild25
18 files changed, 232 insertions, 644 deletions
diff --git a/app-emulation/Manifest.gz b/app-emulation/Manifest.gz
index 002f4ae0bce9..80c69708577c 100644
--- a/app-emulation/Manifest.gz
+++ b/app-emulation/Manifest.gz
Binary files differ
diff --git a/app-emulation/wine-proton/Manifest b/app-emulation/wine-proton/Manifest
index 6b7bd4fae209..62e6c3b57010 100644
--- a/app-emulation/wine-proton/Manifest
+++ b/app-emulation/wine-proton/Manifest
@@ -4,6 +4,8 @@ AUX wine-proton-7.0.4-noexecstack.patch 223 BLAKE2B dff1867e2977bd14fcfab9dfa2c2
AUX wine-proton-7.0.4-restore-menubuilder.patch 572 BLAKE2B 7ace97fb82498d8f19297cab205d8b9ca07c5293172a0b017b5d887ec1f5daeb3ed64eb0a322904e528a72f4a225813c27b544015587d71fce97c41b6b1463a2 SHA512 1384f06d4264e22d332eb12fabd7408b8e250e39c195460f876460fe40d35d617c73100815c395f481e3af66676ccaa1a14592c05f1e5b092bfafe2f87112106
AUX wine-proton-7.0.4-unwind.patch 1694 BLAKE2B 954cb0a395c3b45afc7a3f39f33d34cf041b9cf5a6c77d0a217d296c4c8d1f6503322c4f77188c4729b98318913b9bc86d37b7573713643590550297a0ae372a SHA512 f958e811a4754614bc9e7223f727e2c581c18607dccf14c6d7014012ff29107bd850540a40ff7a62e7bae6b87ae1ac28fd104fbbaf9ce954bf3acb38ddbeb7df
DIST proton-wine-7.0-4.tar.gz 45561670 BLAKE2B 0bc3432e5aa9ca1655e76b31dcbef08febe263e07d3635d005fbc7798b3a08fa50e2e736f33b18700f187dc755f012d7e8ae3edae6a63fb433cd9b8861b747b0 SHA512 dccdf4115e2a7c92981163783f5705e78fbfa042f06123e4802251bd2c558e8b4de7e3d2e114a5d942f9493eb64fb7fdedff2e6e8b3f21ea1de1156456930d8c
-EBUILD wine-proton-7.0.4.ebuild 10405 BLAKE2B 3e3967d5b2cd90a4a0932b8ada340872e08b0d419f25c89628353091db4366dfd7de3b0e1273698f7a2d9e029cf853632c1be801f0ed6c5b49337988fddd0e23 SHA512 30fc7d105410d8533866b54baf7f44a72d6cf16cb88900f7736cd322ccf2ffad0c14262a1113cd7f317e5271a049ba2c32e82250f77e2b73d00c6d26c438ac83
-EBUILD wine-proton-7.0.9999.ebuild 10412 BLAKE2B 10d549c5477ec3393d561f8bc8df6572f6f46dfa71a9029c4eadc260b84c763c60f75f29e5cc69720e20d982aaa5d81fa29e0cb885af494f5a6f7d83b96aaf43 SHA512 e916d8822ee6864940a0f93222f6d18c50ed8af27e1960147c0624b498ccd9493718a872d604b31b98b756a2c85b801169570ce1d7f561465937737c820f0bb4
+DIST proton-wine-7.0-5.tar.gz 45724439 BLAKE2B d5ad4f00ca658b31c562c2ff4eb5ae33707126eee44ccfd9f33084ab5d184743034541efe3f9d18eb2a6941111da4c5134555f93769e8370b118b6f04e00ae1e SHA512 b16ace9c0bfa6d2685ea53617be2bba7e82c5c8da604f9e188bf782219785cfaed4317578c4314f2bde89d363a2e115f3bceeaa69d4a85f078a5fdb1ec64d33b
+EBUILD wine-proton-7.0.4.ebuild 10309 BLAKE2B 084ee116c5ba5fbefd89b022fed3b1863b8700a15c40bb9dcdbf5775476286474d66bd3ba25deecfa2156ee23d844962983cc8261ad30820cfc41127c456eaa8 SHA512 d5accffbc3618c9dfd7bcae20b169db43dd633bd5d83d723ccb88eb43a9d01033ba213d278d8efe08210df989aefa7713035b6d53df183e436549da53fe377bd
+EBUILD wine-proton-7.0.5.ebuild 10316 BLAKE2B 5ffae0a8f9f947af159b7f7203076b3acb00cf65173d68f6ff10bf9977628e51d5e090e2ac850a91c66ad584447bfc95d88e62a644e3300354ae85108eb53f38 SHA512 de6c2d546c2c2c50eb483b11661a150acf88278dd05498ec9ec6bf91f585794a24ed3a582d3e57c3b92ebc8990486be13eb000688ba562599b0e93e31c787017
+EBUILD wine-proton-7.0.9999.ebuild 10316 BLAKE2B 4a64c83297a590b8cd0c31faaebea248e14cd3d339ed8c8ce45bda954ea7d28a21d5a098312c8840a5b9d115ffb7f30fe91c630a85b986bebb284b68c0659013 SHA512 c0926234e267566ae3099f1c43a3dc5ef30690dd7191c9f5f31c72eb2acf96fbf22d551f672934debb9526ca3d5e20e3b4760e5db0595427329d3736438781ee
MISC metadata.xml 1222 BLAKE2B 75e8a33a16e4d718c5299ae719cdd009e9ac6f0d2eafb112c9e38e7d860a51d7f4d5be14912c1c812718b36fd4d71a9d3ddf2c68f5a076fc71f5d47fab120736 SHA512 3fc770b9d6f1e7cb7cba7fc28f90d5f51ad431f38e757dcb47b03543985d0919e29b6648b8c3f6bb6e1c7b172bb164cde35e2fea24564e476088c1a91e6131c8
diff --git a/app-emulation/wine-proton/wine-proton-7.0.4.ebuild b/app-emulation/wine-proton/wine-proton-7.0.4.ebuild
index dcb70f280da0..031a67e02638 100644
--- a/app-emulation/wine-proton/wine-proton-7.0.4.ebuild
+++ b/app-emulation/wine-proton/wine-proton-7.0.4.ebuild
@@ -96,12 +96,13 @@ DEPEND="
BDEPEND="
${PYTHON_DEPS}
dev-lang/perl
+ sys-devel/binutils
sys-devel/bison
sys-devel/flex
virtual/pkgconfig
nls? ( sys-devel/gettext )
!crossdev-mingw? ( dev-util/mingw64-toolchain[${MULTILIB_USEDEP}] )"
-IDEPEND=">=app-eselect/eselect-wine-1.2.2-r1"
+IDEPEND=">=app-eselect/eselect-wine-2"
QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext
@@ -217,6 +218,11 @@ src_configure() {
use custom-cflags || strip-flags # can break in obscure ways, also no lto
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
+ # temporary workaround for tc-ld-force-bfd not yet enforcing with mold
+ # https://github.com/gentoo/gentoo/pull/28355
+ [[ $($(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) == mold* ]] &&
+ append-ldflags -fuse-ld=bfd
+
# build using upstream's way (--with-wine64)
# order matters: configure+compile 64->32, install 32->64
local -i bits
@@ -299,27 +305,16 @@ src_install() {
readme.gentoo_create_doc
}
-wine-eselect() {
- ebegin "${1^}ing ${P} using eselect-wine"
- eselect wine ${1} ${P} &&
- eselect wine ${1} --${PN#wine-} ${P} &&
- eselect wine update --if-unset &&
- eselect wine update --${PN#wine-} --if-unset
- eend ${?} || die -n "eselect failed, may need to manually handle ${P}"
-}
-
pkg_preinst() {
has_version ${CATEGORY}/${PN} && WINE_HAD_ANY_SLOT=
}
pkg_postinst() {
- wine-eselect register
-
[[ -v WINE_HAD_ANY_SLOT ]] || readme.gentoo_print_elog
+
+ eselect wine update --if-unset || die
}
-pkg_prerm() {
- if [[ ${REPLACED_BY_VERSION%-r*} != ${PV} ]]; then #881035
- nonfatal wine-eselect deregister
- fi
+pkg_postrm() {
+ eselect wine update --if-unset || die
}
diff --git a/app-emulation/wine-vanilla/wine-vanilla-7.18.ebuild b/app-emulation/wine-proton/wine-proton-7.0.5.ebuild
index 9b551b53e450..46cd54a51bd3 100644
--- a/app-emulation/wine-vanilla/wine-vanilla-7.18.ebuild
+++ b/app-emulation/wine-proton/wine-proton-7.0.5.ebuild
@@ -4,38 +4,34 @@
EAPI=8
MULTILIB_COMPAT=( abi_x86_{32,64} )
-inherit autotools flag-o-matic multilib multilib-build toolchain-funcs wrapper
+PYTHON_COMPAT=( python3_{8..11} )
+inherit autotools flag-o-matic multilib multilib-build \
+ python-any-r1 readme.gentoo-r1 toolchain-funcs wrapper
WINE_GECKO=2.47.3
-WINE_MONO=7.3.0
+WINE_MONO=7.3.1
+WINE_PV=$(ver_rs 2 -)
if [[ ${PV} == *9999 ]]; then
inherit git-r3
- EGIT_REPO_URI="https://gitlab.winehq.org/wine/wine.git"
+ EGIT_REPO_URI="https://github.com/ValveSoftware/wine.git"
+ EGIT_BRANCH="experimental_$(ver_cut 1-2)"
else
- (( $(ver_cut 2) )) && WINE_SDIR=$(ver_cut 1).x || WINE_SDIR=$(ver_cut 1).0
- SRC_URI="https://dl.winehq.org/wine/source/${WINE_SDIR}/wine-${PV}.tar.xz"
- S="${WORKDIR}/wine-${PV}"
+ SRC_URI="https://github.com/ValveSoftware/wine/archive/refs/tags/proton-wine-${WINE_PV}.tar.gz"
+ S="${WORKDIR}/${PN}-wine-${WINE_PV}"
KEYWORDS="-* ~amd64 ~x86"
fi
-DESCRIPTION="Free implementation of Windows(tm) on Unix, without external patchsets"
-HOMEPAGE="
- https://www.winehq.org/
- https://gitlab.winehq.org/wine/wine/"
+DESCRIPTION="Valve Software's fork of Wine"
+HOMEPAGE="https://github.com/ValveSoftware/wine/"
LICENSE="LGPL-2.1+ BSD-2 IJG MIT ZLIB gsm libpng2 libtiff"
SLOT="${PV}"
IUSE="
- +X +abi_x86_32 +abi_x86_64 +alsa capi crossdev-mingw cups dos
- llvm-libunwind debug custom-cflags +fontconfig +gecko gphoto2
- +gstreamer kerberos ldap +mingw +mono netapi nls odbc openal
- opencl +opengl osmesa pcap perl pulseaudio samba scanner +sdl
- selinux +ssl +truetype udev udisks +unwind usb v4l +vulkan
- +xcomposite xinerama"
-REQUIRED_USE="
- X? ( truetype )
- crossdev-mingw? ( mingw )" # bug #551124 for truetype
+ +abi_x86_32 +abi_x86_64 +alsa crossdev-mingw custom-cflags debug
+ +fontconfig +gecko +gstreamer llvm-libunwind +mono nls openal
+ osmesa perl pulseaudio +sdl selinux +ssl udev udisks +unwind usb
+ v4l +vkd3d +xcomposite xinerama"
# tests are non-trivial to run, can hang easily, don't play well with
# sandbox, and several need real opengl/vulkan or network access
@@ -43,61 +39,47 @@ RESTRICT="test"
# `grep WINE_CHECK_SONAME configure.ac` + if not directly linked
WINE_DLOPEN_DEPEND="
- X? (
- x11-libs/libXcursor[${MULTILIB_USEDEP}]
- x11-libs/libXfixes[${MULTILIB_USEDEP}]
- x11-libs/libXi[${MULTILIB_USEDEP}]
- x11-libs/libXrandr[${MULTILIB_USEDEP}]
- x11-libs/libXrender[${MULTILIB_USEDEP}]
- x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
- opengl? (
- media-libs/libglvnd[X,${MULTILIB_USEDEP}]
- osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
- )
- xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
- xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
- )
- cups? ( net-print/cups[${MULTILIB_USEDEP}] )
+ dev-libs/gmp:=[${MULTILIB_USEDEP}]
+ dev-libs/libgcrypt:=[${MULTILIB_USEDEP}]
+ media-libs/freetype[${MULTILIB_USEDEP}]
+ media-libs/libglvnd[X,${MULTILIB_USEDEP}]
+ media-libs/vulkan-loader[${MULTILIB_USEDEP}]
+ x11-libs/libXcursor[${MULTILIB_USEDEP}]
+ x11-libs/libXfixes[${MULTILIB_USEDEP}]
+ x11-libs/libXi[${MULTILIB_USEDEP}]
+ x11-libs/libXrandr[${MULTILIB_USEDEP}]
+ x11-libs/libXrender[${MULTILIB_USEDEP}]
+ x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
fontconfig? ( media-libs/fontconfig[${MULTILIB_USEDEP}] )
- kerberos? ( virtual/krb5[${MULTILIB_USEDEP}] )
- netapi? ( net-fs/samba[${MULTILIB_USEDEP}] )
- odbc? ( dev-db/unixODBC[${MULTILIB_USEDEP}] )
+ osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
sdl? ( media-libs/libsdl2[haptic,joystick,${MULTILIB_USEDEP}] )
ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
- truetype? ( media-libs/freetype[${MULTILIB_USEDEP}] )
udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
- vulkan? ( media-libs/vulkan-loader[${MULTILIB_USEDEP}] )"
+ xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
+ xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )"
WINE_COMMON_DEPEND="
${WINE_DLOPEN_DEPEND}
- X? (
- x11-libs/libX11[${MULTILIB_USEDEP}]
- x11-libs/libXext[${MULTILIB_USEDEP}]
- )
+ x11-libs/libX11[${MULTILIB_USEDEP}]
+ x11-libs/libXext[${MULTILIB_USEDEP}]
alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
- capi? ( net-libs/libcapi:=[${MULTILIB_USEDEP}] )
- gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
gstreamer? (
dev-libs/glib:2[${MULTILIB_USEDEP}]
- media-libs/gst-plugins-base:1.0[${MULTILIB_USEDEP}]
+ media-libs/gst-plugins-base:1.0[opengl,${MULTILIB_USEDEP}]
media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
)
- ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
openal? ( media-libs/openal[${MULTILIB_USEDEP}] )
- opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
- pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
pulseaudio? ( media-libs/libpulse[${MULTILIB_USEDEP}] )
- scanner? ( media-gfx/sane-backends[${MULTILIB_USEDEP}] )
udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
unwind? (
llvm-libunwind? ( sys-libs/llvm-libunwind[${MULTILIB_USEDEP}] )
!llvm-libunwind? ( sys-libs/libunwind:=[${MULTILIB_USEDEP}] )
)
- usb? ( dev-libs/libusb:1[${MULTILIB_USEDEP}] )"
+ usb? ( dev-libs/libusb:1[${MULTILIB_USEDEP}] )
+ vkd3d? ( >=app-emulation/vkd3d-1.2[${MULTILIB_USEDEP}] )"
RDEPEND="
${WINE_COMMON_DEPEND}
app-emulation/wine-desktop-common
- dos? ( games-emulation/dosbox )
gecko? ( app-emulation/wine-gecko:${WINE_GECKO}[${MULTILIB_USEDEP}] )
gstreamer? ( media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}] )
mono? ( app-emulation/wine-mono:${WINE_MONO} )
@@ -105,27 +87,30 @@ RDEPEND="
dev-lang/perl
dev-perl/XML-LibXML
)
- samba? ( net-fs/samba[winbind] )
selinux? ( sec-policy/selinux-wine )
udisks? ( sys-fs/udisks:2 )"
DEPEND="
${WINE_COMMON_DEPEND}
sys-kernel/linux-headers
- X? ( x11-base/xorg-proto )"
+ x11-base/xorg-proto"
BDEPEND="
+ ${PYTHON_DEPS}
dev-lang/perl
+ sys-devel/binutils
sys-devel/bison
sys-devel/flex
virtual/pkgconfig
- mingw? ( !crossdev-mingw? ( dev-util/mingw64-toolchain[${MULTILIB_USEDEP}] ) )
- nls? ( sys-devel/gettext )"
-IDEPEND="app-eselect/eselect-wine"
+ nls? ( sys-devel/gettext )
+ !crossdev-mingw? ( dev-util/mingw64-toolchain[${MULTILIB_USEDEP}] )"
+IDEPEND=">=app-eselect/eselect-wine-2"
QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext
PATCHES=(
- "${FILESDIR}"/${PN}-7.0-noexecstack.patch
- "${FILESDIR}"/${PN}-7.0-unwind.patch
+ "${FILESDIR}"/${PN}-7.0.4-musl.patch
+ "${FILESDIR}"/${PN}-7.0.4-noexecstack.patch
+ "${FILESDIR}"/${PN}-7.0.4-restore-menubuilder.patch
+ "${FILESDIR}"/${PN}-7.0.4-unwind.patch
)
pkg_pretend() {
@@ -141,6 +126,7 @@ pkg_pretend() {
eerror " crossdev --target ${mingw}"
eerror
eerror "For more information, please see: https://wiki.gentoo.org/wiki/Mingw"
+ eerror "--> Note that mingw builds are default for ${PN} even without this USE."
die "USE=crossdev-mingw is enabled, but ${mingw}-gcc was not found"
fi
done
@@ -162,9 +148,13 @@ src_prepare() {
# ensure .desktop calls this variant + slot
sed -i "/^Exec=/s/wine /${P} /" loader/wine.desktop || die
+ # similarly to staging, append to `wine --version` for identification
+ sed -i "s/wine_build[^1]*1/& (Proton-${WINE_PV})/" configure.ac || die
+
# always update for patches (including user's wrt #432348)
eautoreconf
tools/make_requests || die # perl
+ dlls/winevulkan/make_vulkan -x vk.xml || die # python, needed for proton's
}
src_configure() {
@@ -177,48 +167,62 @@ src_configure() {
--includedir="${EPREFIX}"/usr/include/${P}
--libdir="${EPREFIX}"${WINE_PREFIX}
--mandir="${EPREFIX}"${WINE_DATADIR}/man
+
+ # upstream (Valve) doesn't really support misc configurations (e.g.
+ # adds vulkan code not always guarded by --with-vulkan), so force
+ # some major options that are typically needed by games either way
+ --with-freetype
+ --with-mingw # needed by many, notably Blizzard titles
+ --with-opengl
+ --with-vulkan
+ --with-x
+
+ # ...and disable most options unimportant for games and unused by
+ # Proton rather than expose as volatile USEs with little support
+ --without-capi
+ --without-cups
+ --without-gphoto
+ --without-gssapi
+ --without-krb5
+ --without-ldap
+ --without-netapi
+ --without-opencl
+ --without-pcap
+ --without-sane
+ ac_cv_lib_soname_odbc=
+
$(use_enable gecko mshtml)
$(use_enable mono mscoree)
--disable-tests
- $(use_with X x)
$(use_with alsa)
- $(use_with capi)
- $(use_with cups)
$(use_with fontconfig)
- $(use_with gphoto2 gphoto)
$(use_with gstreamer)
- $(use_with kerberos gssapi)
- $(use_with kerberos krb5)
- $(use_with ldap)
- $(use_with mingw)
- $(use_with netapi)
$(use_with nls gettext)
$(use_with openal)
- $(use_with opencl)
- $(use_with opengl)
$(use_with osmesa)
--without-oss # media-sound/oss is not packaged (OSSv4)
- $(use_with pcap)
$(use_with pulseaudio pulse)
- $(use_with scanner sane)
$(use_with sdl)
$(use_with ssl gnutls)
- $(use_with truetype freetype)
$(use_with udev)
$(use_with udisks dbus) # dbus is only used for udisks
$(use_with unwind)
$(use_with usb)
$(use_with v4l v4l2)
- $(use_with vulkan)
+ $(use_with vkd3d)
$(use_with xcomposite)
$(use_with xinerama)
- $(usev !odbc ac_cv_lib_soname_odbc=)
)
tc-ld-force-bfd #867097
use custom-cflags || strip-flags # can break in obscure ways, also no lto
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
+ # temporary workaround for tc-ld-force-bfd not yet enforcing with mold
+ # https://github.com/gentoo/gentoo/pull/28355
+ [[ $($(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) == mold* ]] &&
+ append-ldflags -fuse-ld=bfd
+
# build using upstream's way (--with-wine64)
# order matters: configure+compile 64->32, install 32->64
local -i bits
@@ -244,17 +248,15 @@ src_configure() {
: "${CROSSCC:=${CROSSCC_x86:-i686-w64-mingw32-gcc}}"
# use *FLAGS for mingw, but strip unsupported (e.g. --hash-style=gnu)
- if use mingw; then
- : "${CROSSCFLAGS:=$(
- filter-flags '-fstack-clash-protection' #758914
- filter-flags '-fstack-protector*' #870136
- filter-flags '-mfunction-return=thunk*' #878849
- CC=${CROSSCC} test-flags-CC ${CFLAGS:--O2})}"
- : "${CROSSLDFLAGS:=$(
- filter-flags '-fuse-ld=*'
- CC=${CROSSCC} test-flags-CCLD ${LDFLAGS})}"
- export CROSS{CC,{C,LD}FLAGS}
- fi
+ : "${CROSSCFLAGS:=$(
+ filter-flags '-fstack-clash-protection' #758914
+ filter-flags '-fstack-protector*' #870136
+ filter-flags '-mfunction-return=thunk*' #878849
+ CC=${CROSSCC} test-flags-CC ${CFLAGS:--O2})}"
+ : "${CROSSLDFLAGS:=$(
+ filter-flags '-fuse-ld=*'
+ CC=${CROSSCC} test-flags-CCLD ${LDFLAGS})}"
+ export CROSS{CC,{C,LD}FLAGS}
ECONF_SOURCE=${S} econf "${conf[@]}"
)
@@ -294,31 +296,25 @@ src_install() {
# don't let portage try to strip PE files with the wrong
# strip executable and instead handle it here (saves ~120MB)
- if use mingw; then
- dostrip -x ${WINE_PREFIX}/wine/{i386,x86_64}-windows
- use debug ||
- find "${ED}"${WINE_PREFIX}/wine/*-windows -regex '.*\.\(a\|dll\|exe\)' \
- -exec $(usex abi_x86_64 x86_64 i686)-w64-mingw32-strip --strip-unneeded {} + || die
- fi
+ dostrip -x ${WINE_PREFIX}/wine/{i386,x86_64}-windows
+ use debug ||
+ find "${ED}"${WINE_PREFIX}/wine/*-windows -regex '.*\.\(a\|dll\|exe\)' \
+ -exec $(usex abi_x86_64 x86_64 i686)-w64-mingw32-strip --strip-unneeded {} + || die
dodoc ANNOUNCE AUTHORS README* documentation/README*
+ readme.gentoo_create_doc
}
-wine-eselect() {
- ebegin "${1^}ing ${P} using eselect-wine"
- eselect wine ${1} ${P} &&
- eselect wine ${1} --${PN#wine-} ${P} &&
- eselect wine update --if-unset &&
- eselect wine update --${PN#wine-} --if-unset
- eend ${?} || die -n "eselect failed, may need to manually handle ${P}"
+pkg_preinst() {
+ has_version ${CATEGORY}/${PN} && WINE_HAD_ANY_SLOT=
}
pkg_postinst() {
- wine-eselect register
+ [[ -v WINE_HAD_ANY_SLOT ]] || readme.gentoo_print_elog
+
+ eselect wine update --if-unset || die
}
-pkg_prerm() {
- if [[ ${REPLACED_BY_VERSION%-r*} != ${PV} ]]; then #881035
- nonfatal wine-eselect deregister
- fi
+pkg_postrm() {
+ eselect wine update --if-unset || die
}
diff --git a/app-emulation/wine-proton/wine-proton-7.0.9999.ebuild b/app-emulation/wine-proton/wine-proton-7.0.9999.ebuild
index 6206f63f753b..7906e159577b 100644
--- a/app-emulation/wine-proton/wine-proton-7.0.9999.ebuild
+++ b/app-emulation/wine-proton/wine-proton-7.0.9999.ebuild
@@ -96,12 +96,13 @@ DEPEND="
BDEPEND="
${PYTHON_DEPS}
dev-lang/perl
+ sys-devel/binutils
sys-devel/bison
sys-devel/flex
virtual/pkgconfig
nls? ( sys-devel/gettext )
!crossdev-mingw? ( dev-util/mingw64-toolchain[${MULTILIB_USEDEP}] )"
-IDEPEND=">=app-eselect/eselect-wine-1.2.2-r1"
+IDEPEND=">=app-eselect/eselect-wine-2"
QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext
@@ -217,6 +218,11 @@ src_configure() {
use custom-cflags || strip-flags # can break in obscure ways, also no lto
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
+ # temporary workaround for tc-ld-force-bfd not yet enforcing with mold
+ # https://github.com/gentoo/gentoo/pull/28355
+ [[ $($(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) == mold* ]] &&
+ append-ldflags -fuse-ld=bfd
+
# build using upstream's way (--with-wine64)
# order matters: configure+compile 64->32, install 32->64
local -i bits
@@ -299,27 +305,16 @@ src_install() {
readme.gentoo_create_doc
}
-wine-eselect() {
- ebegin "${1^}ing ${P} using eselect-wine"
- eselect wine ${1} ${P} &&
- eselect wine ${1} --${PN#wine-} ${P} &&
- eselect wine update --if-unset &&
- eselect wine update --${PN#wine-} --if-unset
- eend ${?} || die -n "eselect failed, may need to manually handle ${P}"
-}
-
pkg_preinst() {
has_version ${CATEGORY}/${PN} && WINE_HAD_ANY_SLOT=
}
pkg_postinst() {
- wine-eselect register
-
[[ -v WINE_HAD_ANY_SLOT ]] || readme.gentoo_print_elog
+
+ eselect wine update --if-unset || die
}
-pkg_prerm() {
- if [[ ${REPLACED_BY_VERSION%-r*} != ${PV} ]]; then #881035
- nonfatal wine-eselect deregister
- fi
+pkg_postrm() {
+ eselect wine update --if-unset || die
}
diff --git a/app-emulation/wine-staging/Manifest b/app-emulation/wine-staging/Manifest
index 673f86ee87f0..df74cf567a22 100644
--- a/app-emulation/wine-staging/Manifest
+++ b/app-emulation/wine-staging/Manifest
@@ -2,17 +2,14 @@ AUX wine-staging-7.17-noexecstack.patch 223 BLAKE2B 6e6cfc208f11c2c2b7bbc392e370
AUX wine-staging-7.17-unwind.patch 1694 BLAKE2B ad8ba23e07a846152bd93e76a0b226869c8a9a28f197321b0faec3ad3721d05b892c69829d89933f245a7b6e0c8070db0e7dfef7d4b9bb047052d57f5ba7067b SHA512 80c3a1f347e7250cb1d7ab958507987b2aaeaf660c4ffb95c19118011ee61957629a9e28f2600fdafb384b61c26f50bcdaebab1fcbe30a9553c63cbed664c817
AUX wine-staging-7.20-unwind.patch 1450 BLAKE2B 80e9222c95393aaa4b95e05597a4181030fc988d95e416d2f92631f29f640b9abb3dd0853d005de4725b41c09224e478741902075259d48a30830a923790579f SHA512 e1a72f1463be32975daa02064acb96189cd79cb41ff98f89b58e46c97100a3ac46405b1b9982378c9de275acbdb74168853e47b932e06398cdd2981b23f483ce
AUX wine-staging-7.21-crossflags.patch 876 BLAKE2B 84dc39960e40c94f6e0bce4c8206b6d276e4d916f4b98d0f83a40ac0a7349f59b68010eb6bd4ba2b0ca854abb74a2faf58f54258e86cd1c800e849410d0570a9 SHA512 ee53bb03ce6ec181d2d87c63659802c4b68941c55264c8700e13ae83c0f9913a7ff8f45a5c42d40e302d7731535ba673a7fe669d0bebbfa35555e1f6187ab31b
-DIST wine-7.18.tar.xz 28412876 BLAKE2B 1f25c8669a2afbead142923a39913b3f21df641e446a6136e7ecd282f6c31bc70578036e83f3dd28d22516d987ddca179198f76effb5c9aca089f4755ffa873e SHA512 e651b18cef73b4619e953b746d0c207c0220279003560aaf195c2569a22308af129e1460651a246e6a87dcfbcfcff08f52f970734035eb55ab45d8970fd56a02
DIST wine-7.19.tar.xz 28502612 BLAKE2B b7b270656955c7a1e1d84e8bbc7e3e8abff5aedadb5e8a458f0b1109d746875a359f3d2f53b1c9c6caae65d17fd1d205466cd3a884034a8bad6afe9456f13b5d SHA512 f76dbda97cccad4c0f249b5dd4e8d48afa832134f1704ae228650bb73ee82823e628b23bd53a3f8729e06a8933597ff2fffa5551f156fc9c9181b67c066747d5
DIST wine-7.20.tar.xz 28534920 BLAKE2B 2e0cd49a7820f0c885a2a6dbcded6ebbdb5e1ea5576b03dedb7ee066f74f8c675193450cdd45bf5e0224bd588a890138e47a15f513edbfde1eabf1b65c9abe31 SHA512 6e2e65fba2336985df93165050f0f46b752d6aa94fc1581451c58969e2003748378be4b9e16b647ca2922fbdff77920311b12a17bda630a7bccfc7ee8f03b453
DIST wine-7.21.tar.xz 28703308 BLAKE2B 8902ded32b9e635f8ccf659ca4055e9ad45d3659f3ad48d0c218dc5a7a334df456ea0e9441dcaff58e8cac0bbd65140b20e61180acaa06230bc70e28a8382c7e SHA512 15c0c9efda972b84890886fd4b1fb18dd462373ba490f5e607004a5436caba9823f643369ceb5abbc2d2d0e26d7ce002e00136299d9984c0a27f729f3ac129c1
-DIST wine-staging-7.18.tar.gz 9535819 BLAKE2B b7157493c8362bce4683f0cd8847e41b812fa4150cee476a5598bd5b42a95686de0a25073082f513c42d618e53538e14cb5a8ce982c731f3880fb3356f4656f0 SHA512 fce34941f53f649035b9581f3612f0e47bcbb7e52d2edd33deba9123870cf69c237d10c820c8cbe1b9a784fe6e688af8690cc9ea6d71d4fc596f94ebd1a932a9
DIST wine-staging-7.19.tar.gz 9523048 BLAKE2B e53fd47af493cbdc4542f908a39557324d70ad67ff2e06c80296c006a63518e43988750cab2f4d3d9197fc9c8a1e61ed4d96bcc310b82b6cfc8ec12b941f1c5c SHA512 c51cb18c4ae00eccf414f5edda18ebf363674ba7cfa95da135b3a43b7c012c086d454d6ac32b22d98e611bb87e55c3e1ee95571a4a0c9713028b5ac38e8aed3f
DIST wine-staging-7.20.tar.gz 9521481 BLAKE2B 5a264460e72ac96d50d23492100c465eeb0b933306200710aa085bd37bb79df3c6ef03aeb5ba2c4c196befb231938457aa9584b9edf938edfd754d06e7cdb574 SHA512 538bf60e760254f3130fe8b6bf07598287e567c0f34d6be2ed04fde10007283d4c675a6f27a0a13d3ce77e833559d5ef853a89f2f96dc5f8cc818bdc3570474a
DIST wine-staging-7.21.tar.gz 9530737 BLAKE2B a80476dbc957a9cda1554262777c63276f9b66a5ccd1389a006327810b0b960a600f78dfabc0d8df4ce816cdd7c4c3c29c26bea9b63219fa90dff60142d41da1 SHA512 1261267fe82a25d74dbf3f8cd1926339356eac3cd432667517c2ca65656c1b733c2866a48c1e4ad116ac8094d9079366a07f6a7814b8bde27246d654a792e9ec
-EBUILD wine-staging-7.18.ebuild 11208 BLAKE2B 10ed5cc64b97630217ac2afc68282d684eb4f741e0c74af41d966cc7f7cd3c803804999e4f19fe3df28ba1b72a952931d56d3ab71e3548a2642f3e718adb80cc SHA512 3e37d7f6e825f2b500acdcadcc1c435fb847692c7c5cc356ce96b2823a012accbb183ca446b4947f90af474dbb1a673fe13c4c069f688dee04692bc7f8f87b5f
-EBUILD wine-staging-7.19.ebuild 11136 BLAKE2B 5921466e380c7a2fe53a4ccf66e3a1ee8d1638fefc298b880c285899d5fefb39ed7c891fe22a8c25f726df1bfe26be3915aa5d8cf9bda47d211154c3cd103e56 SHA512 b54621f4d6bf0931787856453db5f42599108eab738a335891008c2ed4a066857aa981c114a5b95ae00327f27e606e3de52237e4b852c1ac69cfcbcb4efe686f
-EBUILD wine-staging-7.20.ebuild 11136 BLAKE2B cb43b2a447e74aa51e5989df08d3919c5ed0e22ea31c981aec7b68542e85dfd422806b007cdc6e58e321f4b33f6e51606c50b5d693432adc505d151d58cd47e6 SHA512 a17c65dd21fcc034537d0b70226fea3fa36c000fa9ce49579b1568ad009b5f3c845582091509244fb5ce8028c3f19b41f7b350c1cfc7dad5a64f3f40ca6066ec
-EBUILD wine-staging-7.21.ebuild 11237 BLAKE2B 9fd42e64b8059d368797cc0819295f0c19a71c0f6819cfaece27854a755babfbd427eb18ad41996813e71cd88c74c8614cc2584328166d7cbf85b50513cfb597 SHA512 4a736178afbd4593b3eef5d8c4becd4144b41fd241285acde2248cf5090b22a3e85e51628dbf559101f4aeef5bf6329cd4b8a3d3cf28c9acd3e07163961de578
-EBUILD wine-staging-9999.ebuild 11238 BLAKE2B ad781e976b13feee5dc33774e5de036e2959e9a37a99420bcaf9542d4bca8c46da7976ebd7e346b9875463c6214fe75da072d1912ee39afcc4a3ea7575039a3e SHA512 6c6b02809308df506d1368227d001cd7b563484999eebd177c695502ed70a2abd315dd183ef1e7041b674b4fa6bd571ea27e62c2515eb23dbf04a3dd1c2c4d1e
+EBUILD wine-staging-7.19.ebuild 11051 BLAKE2B af17100f7b5b80d5e1f2d342f9603cb5d4886ceb4f864e154be437ee776a74d4638b9ed8f3db24688cb611c92356d82d6e6fc7e7707a0ece51e09a2e67299f9c SHA512 2621ba9b7146dde03e746a24592918ad6842b93fd0d34dc11d620c00f046837de579ff0322e76b43e6ecc77eaefcf11e5e9ec407b3e73dc84123ea8247b17305
+EBUILD wine-staging-7.20.ebuild 11051 BLAKE2B f378f4cefea21783cc5a07f7bf47d6a052a35493010999087bdcafd2265e5e1f904294bc567d488a9f2b822125d19c520c7587963c1c843485c91a9dfdf80145 SHA512 8f5ba147c7445b4f1066ba79d0591182b313291d6a133561099ece5dbda95db3b954ade53438ae08eadb8c60fe7dc937b47b35b2a30a8659d571d3b3a2bf2495
+EBUILD wine-staging-7.21.ebuild 11152 BLAKE2B 76de2020db1b50da53f4c9b33eb39ee84b3166cbf591a99be1c756b49154e17e838fed8ec7a0a07900289939cdcac305a4f9544926614958f6791f82db79ca5b SHA512 efb247f04442454cd71ef0760f77b7aa8eecf68a898da4cdacb89d0187499132eb4e4fd7c83391eefd490570561295d9c184e769ffe10f5eb856875feb496b3b
+EBUILD wine-staging-9999.ebuild 11153 BLAKE2B 4c47f1d6a805774e2f60d2610acf141ffa9352d6439cb930e47337e27b498c5188b6892cc5282f9269d21c4e33ce3af348082697dd210751a375e3a99bb5be50 SHA512 59667ee9f2d0f91c8bed14011a31d4a8adc28be6a729bd35e64210cb21fd86cc8511331b0b0846b940a9cd1bd55eb5d641aa82c512c5fcffde3a62bff34608b7
MISC metadata.xml 2352 BLAKE2B c3bc247559ce143b4c8497b17dbeccf283ecb70463ca8230ba46d949c0def97f15c0b676149524111f7d151722d7c6343dc16dddaba5093fba60c62389da778d SHA512 a05a2b4bdaa01b7f097cf824f2b949b2e5ece864c7307dfca42a384711c9db09f486c3d398c9c1f187daadfcc646bb14fe7c488140fea2a3f7092a5e3a8011d1
diff --git a/app-emulation/wine-staging/wine-staging-7.18.ebuild b/app-emulation/wine-staging/wine-staging-7.18.ebuild
deleted file mode 100644
index b310ca62f7cc..000000000000
--- a/app-emulation/wine-staging/wine-staging-7.18.ebuild
+++ /dev/null
@@ -1,356 +0,0 @@
-# Copyright 2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-MULTILIB_COMPAT=( abi_x86_{32,64} )
-inherit autotools flag-o-matic multilib multilib-build toolchain-funcs wrapper
-
-WINE_GECKO=2.47.3
-WINE_MONO=7.3.0
-
-if [[ ${PV} == *9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/wine-staging/wine-staging.git"
- WINE_EGIT_REPO_URI="https://gitlab.winehq.org/wine/wine.git"
-else
- (( $(ver_cut 2) )) && WINE_SDIR=$(ver_cut 1).x || WINE_SDIR=$(ver_cut 1).0
- SRC_URI="
- https://dl.winehq.org/wine/source/${WINE_SDIR}/wine-${PV}.tar.xz
- https://github.com/wine-staging/wine-staging/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="-* ~amd64 ~x86"
-fi
-S="${WORKDIR}/wine-${PV}"
-
-DESCRIPTION="Free implementation of Windows(tm) on Unix, with Wine-Staging patchset"
-HOMEPAGE="https://wiki.winehq.org/Wine-Staging"
-
-LICENSE="LGPL-2.1+ BSD-2 IJG MIT ZLIB gsm libpng2 libtiff"
-SLOT="${PV}"
-IUSE="
- +X +abi_x86_32 +abi_x86_64 +alsa capi crossdev-mingw cups dos
- llvm-libunwind debug custom-cflags +fontconfig +gecko gphoto2
- +gstreamer kerberos ldap +mingw +mono netapi nls odbc openal
- opencl +opengl osmesa pcap perl pulseaudio samba scanner +sdl
- selinux +ssl +truetype udev udisks +unwind usb v4l +vulkan xattr
- +xcomposite xinerama"
-REQUIRED_USE="
- X? ( truetype )
- crossdev-mingw? ( mingw )" # bug #551124 for truetype
-
-# tests are non-trivial to run, can hang easily, don't play well with
-# sandbox, and several need real opengl/vulkan or network access
-RESTRICT="test"
-
-# `grep WINE_CHECK_SONAME configure.ac` + if not directly linked
-WINE_DLOPEN_DEPEND="
- X? (
- x11-libs/libXcursor[${MULTILIB_USEDEP}]
- x11-libs/libXfixes[${MULTILIB_USEDEP}]
- x11-libs/libXi[${MULTILIB_USEDEP}]
- x11-libs/libXrandr[${MULTILIB_USEDEP}]
- x11-libs/libXrender[${MULTILIB_USEDEP}]
- x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
- opengl? (
- media-libs/libglvnd[X,${MULTILIB_USEDEP}]
- osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
- )
- xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
- xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
- )
- cups? ( net-print/cups[${MULTILIB_USEDEP}] )
- fontconfig? ( media-libs/fontconfig[${MULTILIB_USEDEP}] )
- kerberos? ( virtual/krb5[${MULTILIB_USEDEP}] )
- netapi? ( net-fs/samba[${MULTILIB_USEDEP}] )
- odbc? ( dev-db/unixODBC[${MULTILIB_USEDEP}] )
- sdl? ( media-libs/libsdl2[haptic,joystick,${MULTILIB_USEDEP}] )
- ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
- truetype? ( media-libs/freetype[${MULTILIB_USEDEP}] )
- udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
- v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
- vulkan? ( media-libs/vulkan-loader[${MULTILIB_USEDEP}] )"
-WINE_COMMON_DEPEND="
- ${WINE_DLOPEN_DEPEND}
- X? (
- x11-libs/libX11[${MULTILIB_USEDEP}]
- x11-libs/libXext[${MULTILIB_USEDEP}]
- )
- alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
- capi? ( net-libs/libcapi:=[${MULTILIB_USEDEP}] )
- gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
- gstreamer? (
- dev-libs/glib:2[${MULTILIB_USEDEP}]
- media-libs/gst-plugins-base:1.0[${MULTILIB_USEDEP}]
- media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
- )
- ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
- openal? ( media-libs/openal[${MULTILIB_USEDEP}] )
- opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
- pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
- pulseaudio? ( media-libs/libpulse[${MULTILIB_USEDEP}] )
- scanner? ( media-gfx/sane-backends[${MULTILIB_USEDEP}] )
- udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
- unwind? (
- llvm-libunwind? ( sys-libs/llvm-libunwind[${MULTILIB_USEDEP}] )
- !llvm-libunwind? ( sys-libs/libunwind:=[${MULTILIB_USEDEP}] )
- )
- usb? ( dev-libs/libusb:1[${MULTILIB_USEDEP}] )
- xattr? ( sys-apps/attr[${MULTILIB_USEDEP}] )"
-RDEPEND="
- ${WINE_COMMON_DEPEND}
- app-emulation/wine-desktop-common
- dos? ( games-emulation/dosbox )
- gecko? ( app-emulation/wine-gecko:${WINE_GECKO}[${MULTILIB_USEDEP}] )
- gstreamer? ( media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}] )
- mono? ( app-emulation/wine-mono:${WINE_MONO} )
- perl? (
- dev-lang/perl
- dev-perl/XML-LibXML
- )
- samba? ( net-fs/samba[winbind] )
- selinux? ( sec-policy/selinux-wine )
- udisks? ( sys-fs/udisks:2 )"
-DEPEND="
- ${WINE_COMMON_DEPEND}
- sys-kernel/linux-headers
- X? ( x11-base/xorg-proto )"
-BDEPEND="
- dev-lang/perl
- sys-devel/bison
- sys-devel/flex
- virtual/pkgconfig
- mingw? ( !crossdev-mingw? ( dev-util/mingw64-toolchain[${MULTILIB_USEDEP}] ) )
- nls? ( sys-devel/gettext )"
-IDEPEND="app-eselect/eselect-wine"
-
-QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext
-
-PATCHES=(
- "${FILESDIR}"/${PN}-7.17-noexecstack.patch
- "${FILESDIR}"/${PN}-7.17-unwind.patch
-)
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} == binary ]] && return
-
- if use crossdev-mingw && [[ ! -v MINGW_BYPASS ]]; then
- local mingw=-w64-mingw32
- for mingw in $(usev abi_x86_64 x86_64${mingw}) $(usev abi_x86_32 i686${mingw}); do
- if ! type -P ${mingw}-gcc >/dev/null; then
- eerror "With USE=crossdev-mingw, you must prepare the MinGW toolchain"
- eerror "yourself by installing sys-devel/crossdev then running:"
- eerror
- eerror " crossdev --target ${mingw}"
- eerror
- eerror "For more information, please see: https://wiki.gentoo.org/wiki/Mingw"
- die "USE=crossdev-mingw is enabled, but ${mingw}-gcc was not found"
- fi
- done
- fi
-}
-
-src_unpack() {
- if [[ ${PV} == *9999 ]]; then
- EGIT_CHECKOUT_DIR=${WORKDIR}/${P}
- git-r3_src_unpack
-
- EGIT_COMMIT=$(<"${EGIT_CHECKOUT_DIR}"/staging/upstream-commit) || die
- EGIT_REPO_URI=${WINE_EGIT_REPO_URI}
- EGIT_CHECKOUT_DIR=${S}
- einfo "Fetching Wine commit matching the current patchset by default (${EGIT_COMMIT})"
- git-r3_src_unpack
- else
- default
- fi
-}
-
-src_prepare() {
- local staging=(
- ./patchinstall.sh DESTDIR="${S}"
- --all
- --backend=eapply
- --no-autoconf
- -W winemenubuilder-Desktop_Icon_Path #652176
- ${MY_WINE_STAGING_CONF}
- )
-
- # source patcher in a subshell so can use eapply as a backend
- ebegin "Running ${staging[*]}"
- ( cd ../${P}/patches && . "${staging[@]}" )
- eend ${?} || die "Failed to apply the patchset"
-
- # sanity check, bumping these has a history of oversights
- local geckomono=$(sed -En '/^#define (GECKO|MONO)_VER/{s/[^0-9.]//gp}' \
- dlls/appwiz.cpl/addons.c || die)
- if [[ ${WINE_GECKO}$'\n'${WINE_MONO} != "${geckomono}" ]]; then
- local gmfatal=
- [[ ${PV} == *9999 ]] && gmfatal=nonfatal
- ${gmfatal} die -n "gecko/mono mismatch in ebuild, has: " ${geckomono} " (please file a bug)"
- fi
-
- default
-
- # ensure .desktop calls this variant + slot
- sed -i "/^Exec=/s/wine /${P} /" loader/wine.desktop || die
-
- # always update for patches (including user's wrt #432348)
- eautoreconf
- tools/make_requests || die # perl
-}
-
-src_configure() {
- WINE_PREFIX=/usr/lib/${P}
- WINE_DATADIR=/usr/share/${P}
-
- local conf=(
- --prefix="${EPREFIX}"${WINE_PREFIX}
- --datadir="${EPREFIX}"${WINE_DATADIR}
- --includedir="${EPREFIX}"/usr/include/${P}
- --libdir="${EPREFIX}"${WINE_PREFIX}
- --mandir="${EPREFIX}"${WINE_DATADIR}/man
- $(use_enable gecko mshtml)
- $(use_enable mono mscoree)
- --disable-tests
- $(use_with X x)
- $(use_with alsa)
- $(use_with capi)
- $(use_with cups)
- $(use_with fontconfig)
- $(use_with gphoto2 gphoto)
- $(use_with gstreamer)
- $(use_with kerberos gssapi)
- $(use_with kerberos krb5)
- $(use_with ldap)
- $(use_with mingw)
- $(use_with netapi)
- $(use_with nls gettext)
- $(use_with openal)
- $(use_with opencl)
- $(use_with opengl)
- $(use_with osmesa)
- --without-oss # media-sound/oss is not packaged (OSSv4)
- $(use_with pcap)
- $(use_with pulseaudio pulse)
- $(use_with scanner sane)
- $(use_with sdl)
- $(use_with ssl gnutls)
- $(use_with truetype freetype)
- $(use_with udev)
- $(use_with udisks dbus) # dbus is only used for udisks
- $(use_with unwind)
- $(use_with usb)
- $(use_with v4l v4l2)
- $(use_with vulkan)
- $(use_with xattr)
- $(use_with xcomposite)
- $(use_with xinerama)
- $(usev !odbc ac_cv_lib_soname_odbc=)
- )
-
- tc-ld-force-bfd #867097
- use custom-cflags || strip-flags # can break in obscure ways, also no lto
- use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
-
- # build using upstream's way (--with-wine64)
- # order matters: configure+compile 64->32, install 32->64
- local -i bits
- for bits in $(usev abi_x86_64 64) $(usev abi_x86_32 32); do
- (
- einfo "Configuring ${PN} for ${bits}bits in ${WORKDIR}/build${bits} ..."
-
- mkdir ../build${bits} || die
- cd ../build${bits} || die
-
- # CROSSCC_amd64/x86 are unused by Wine, but recognized here for users
- if (( bits == 64 )); then
- : "${CROSSCC:=${CROSSCC_amd64:-x86_64-w64-mingw32-gcc}}"
- conf+=( --enable-win64 )
- elif use amd64; then
- conf+=(
- $(usev abi_x86_64 --with-wine64=../build64)
- TARGETFLAGS=-m32 # for widl
- )
- # _setup is optional, but use over Wine's auto-detect (+#472038)
- multilib_toolchain_setup x86
- fi
- : "${CROSSCC:=${CROSSCC_x86:-i686-w64-mingw32-gcc}}"
-
- # use *FLAGS for mingw, but strip unsupported (e.g. --hash-style=gnu)
- if use mingw; then
- : "${CROSSCFLAGS:=$(
- filter-flags '-fstack-clash-protection' #758914
- filter-flags '-fstack-protector*' #870136
- filter-flags '-mfunction-return=thunk*' #878849
- CC=${CROSSCC} test-flags-CC ${CFLAGS:--O2})}"
- : "${CROSSLDFLAGS:=$(
- filter-flags '-fuse-ld=*'
- CC=${CROSSCC} test-flags-CCLD ${LDFLAGS})}"
- export CROSS{CC,{C,LD}FLAGS}
- fi
-
- ECONF_SOURCE=${S} econf "${conf[@]}"
- )
- done
-}
-
-src_compile() {
- use abi_x86_64 && emake -C ../build64 # do first
- use abi_x86_32 && emake -C ../build32
-}
-
-src_install() {
- use abi_x86_32 && emake DESTDIR="${D}" -C ../build32 install
- use abi_x86_64 && emake DESTDIR="${D}" -C ../build64 install # do last
-
- # symlink for plain 'wine' and install its man pages if 64bit-only #404331
- if use abi_x86_64 && use !abi_x86_32; then
- dosym wine64 ${WINE_PREFIX}/bin/wine
- dosym wine64-preloader ${WINE_PREFIX}/bin/wine-preloader
- local man
- for man in ../build64/loader/wine.*man; do
- : "${man##*/wine}"
- : "${_%.*}"
- insinto ${WINE_DATADIR}/man/${_:+${_#.}/}man1
- newins ${man} wine.1
- done
- fi
-
- use perl || rm "${ED}"${WINE_DATADIR}/man/man1/wine{dump,maker}.1 \
- "${ED}"${WINE_PREFIX}/bin/{function_grep.pl,wine{dump,maker}} || die
-
- # create variant wrappers for eselect-wine
- local bin
- for bin in "${ED}"${WINE_PREFIX}/bin/*; do
- make_wrapper "${bin##*/}-${P#wine-}" "${bin#"${ED}"}"
- done
-
- # don't let portage try to strip PE files with the wrong
- # strip executable and instead handle it here (saves ~120MB)
- if use mingw; then
- dostrip -x ${WINE_PREFIX}/wine/{i386,x86_64}-windows
- use debug ||
- find "${ED}"${WINE_PREFIX}/wine/*-windows -regex '.*\.\(a\|dll\|exe\)' \
- -exec $(usex abi_x86_64 x86_64 i686)-w64-mingw32-strip --strip-unneeded {} + || die
- fi
-
- dodoc ANNOUNCE AUTHORS README* documentation/README*
-}
-
-wine-eselect() {
- ebegin "${1^}ing ${P} using eselect-wine"
- eselect wine ${1} ${P} &&
- eselect wine ${1} --${PN#wine-} ${P} &&
- eselect wine update --if-unset &&
- eselect wine update --${PN#wine-} --if-unset
- eend ${?} || die -n "eselect failed, may need to manually handle ${P}"
-}
-
-pkg_postinst() {
- wine-eselect register
-}
-
-pkg_prerm() {
- if [[ ${REPLACED_BY_VERSION%-r*} != ${PV} ]]; then #881035
- nonfatal wine-eselect deregister
- fi
-}
diff --git a/app-emulation/wine-staging/wine-staging-7.19.ebuild b/app-emulation/wine-staging/wine-staging-7.19.ebuild
index 8f5c2fb8b316..f4d6cc01a97f 100644
--- a/app-emulation/wine-staging/wine-staging-7.19.ebuild
+++ b/app-emulation/wine-staging/wine-staging-7.19.ebuild
@@ -115,12 +115,13 @@ DEPEND="
X? ( x11-base/xorg-proto )"
BDEPEND="
dev-lang/perl
+ sys-devel/binutils
sys-devel/bison
sys-devel/flex
virtual/pkgconfig
mingw? ( !crossdev-mingw? ( dev-util/mingw64-toolchain[${MULTILIB_USEDEP}] ) )
nls? ( sys-devel/gettext )"
-IDEPEND="app-eselect/eselect-wine"
+IDEPEND=">=app-eselect/eselect-wine-2"
QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext
@@ -249,6 +250,11 @@ src_configure() {
use custom-cflags || strip-flags # can break in obscure ways, also no lto
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
+ # temporary workaround for tc-ld-force-bfd not yet enforcing with mold
+ # https://github.com/gentoo/gentoo/pull/28355
+ [[ $($(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) == mold* ]] &&
+ append-ldflags -fuse-ld=bfd
+
# build using upstream's way (--with-wine64)
# order matters: configure+compile 64->32, install 32->64
local -i bits
@@ -334,21 +340,10 @@ src_install() {
dodoc ANNOUNCE AUTHORS README* documentation/README*
}
-wine-eselect() {
- ebegin "${1^}ing ${P} using eselect-wine"
- eselect wine ${1} ${P} &&
- eselect wine ${1} --${PN#wine-} ${P} &&
- eselect wine update --if-unset &&
- eselect wine update --${PN#wine-} --if-unset
- eend ${?} || die -n "eselect failed, may need to manually handle ${P}"
-}
-
pkg_postinst() {
- wine-eselect register
+ eselect wine update --if-unset || die
}
-pkg_prerm() {
- if [[ ${REPLACED_BY_VERSION%-r*} != ${PV} ]]; then #881035
- nonfatal wine-eselect deregister
- fi
+pkg_postrm() {
+ eselect wine update --if-unset || die
}
diff --git a/app-emulation/wine-staging/wine-staging-7.20.ebuild b/app-emulation/wine-staging/wine-staging-7.20.ebuild
index 9e74efd3fe3a..1a7b1f25c6f9 100644
--- a/app-emulation/wine-staging/wine-staging-7.20.ebuild
+++ b/app-emulation/wine-staging/wine-staging-7.20.ebuild
@@ -115,12 +115,13 @@ DEPEND="
X? ( x11-base/xorg-proto )"
BDEPEND="
dev-lang/perl
+ sys-devel/binutils
sys-devel/bison
sys-devel/flex
virtual/pkgconfig
mingw? ( !crossdev-mingw? ( dev-util/mingw64-toolchain[${MULTILIB_USEDEP}] ) )
nls? ( sys-devel/gettext )"
-IDEPEND="app-eselect/eselect-wine"
+IDEPEND=">=app-eselect/eselect-wine-2"
QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext
@@ -249,6 +250,11 @@ src_configure() {
use custom-cflags || strip-flags # can break in obscure ways, also no lto
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
+ # temporary workaround for tc-ld-force-bfd not yet enforcing with mold
+ # https://github.com/gentoo/gentoo/pull/28355
+ [[ $($(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) == mold* ]] &&
+ append-ldflags -fuse-ld=bfd
+
# build using upstream's way (--with-wine64)
# order matters: configure+compile 64->32, install 32->64
local -i bits
@@ -334,21 +340,10 @@ src_install() {
dodoc ANNOUNCE AUTHORS README* documentation/README*
}
-wine-eselect() {
- ebegin "${1^}ing ${P} using eselect-wine"
- eselect wine ${1} ${P} &&
- eselect wine ${1} --${PN#wine-} ${P} &&
- eselect wine update --if-unset &&
- eselect wine update --${PN#wine-} --if-unset
- eend ${?} || die -n "eselect failed, may need to manually handle ${P}"
-}
-
pkg_postinst() {
- wine-eselect register
+ eselect wine update --if-unset || die
}
-pkg_prerm() {
- if [[ ${REPLACED_BY_VERSION%-r*} != ${PV} ]]; then #881035
- nonfatal wine-eselect deregister
- fi
+pkg_postrm() {
+ eselect wine update --if-unset || die
}
diff --git a/app-emulation/wine-staging/wine-staging-7.21.ebuild b/app-emulation/wine-staging/wine-staging-7.21.ebuild
index 8a8cd11bbbce..e3f38a33cb12 100644
--- a/app-emulation/wine-staging/wine-staging-7.21.ebuild
+++ b/app-emulation/wine-staging/wine-staging-7.21.ebuild
@@ -114,6 +114,7 @@ DEPEND="
X? ( x11-base/xorg-proto )"
BDEPEND="
dev-lang/perl
+ sys-devel/binutils
sys-devel/bison
sys-devel/flex
virtual/pkgconfig
@@ -121,7 +122,7 @@ BDEPEND="
>=dev-util/mingw64-toolchain-10.0.0_p1-r2[${MULTILIB_USEDEP}]
) )
nls? ( sys-devel/gettext )"
-IDEPEND="app-eselect/eselect-wine"
+IDEPEND=">=app-eselect/eselect-wine-2"
QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext
@@ -250,6 +251,11 @@ src_configure() {
use custom-cflags || strip-flags # can break in obscure ways, also no lto
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
+ # temporary workaround for tc-ld-force-bfd not yet enforcing with mold
+ # https://github.com/gentoo/gentoo/pull/28355
+ [[ $($(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) == mold* ]] &&
+ append-ldflags -fuse-ld=bfd
+
# build using upstream's way (--with-wine64)
# order matters: configure+compile 64->32, install 32->64
local -i bits
@@ -340,21 +346,10 @@ src_install() {
dodoc ANNOUNCE AUTHORS README* documentation/README*
}
-wine-eselect() {
- ebegin "${1^}ing ${P} using eselect-wine"
- eselect wine ${1} ${P} &&
- eselect wine ${1} --${PN#wine-} ${P} &&
- eselect wine update --if-unset &&
- eselect wine update --${PN#wine-} --if-unset
- eend ${?} || die -n "eselect failed, may need to manually handle ${P}"
-}
-
pkg_postinst() {
- wine-eselect register
+ eselect wine update --if-unset || die
}
-pkg_prerm() {
- if [[ ${REPLACED_BY_VERSION%-r*} != ${PV} ]]; then #881035
- nonfatal wine-eselect deregister
- fi
+pkg_postrm() {
+ eselect wine update --if-unset || die
}
diff --git a/app-emulation/wine-staging/wine-staging-9999.ebuild b/app-emulation/wine-staging/wine-staging-9999.ebuild
index 365abdfc568e..1f7740c6c6b6 100644
--- a/app-emulation/wine-staging/wine-staging-9999.ebuild
+++ b/app-emulation/wine-staging/wine-staging-9999.ebuild
@@ -112,6 +112,7 @@ DEPEND="
X? ( x11-base/xorg-proto )"
BDEPEND="
dev-lang/perl
+ sys-devel/binutils
sys-devel/bison
sys-devel/flex
virtual/pkgconfig
@@ -119,7 +120,7 @@ BDEPEND="
>=dev-util/mingw64-toolchain-10.0.0_p1-r2[${MULTILIB_USEDEP}]
) )
nls? ( sys-devel/gettext )"
-IDEPEND="app-eselect/eselect-wine"
+IDEPEND=">=app-eselect/eselect-wine-2"
QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext
@@ -246,6 +247,11 @@ src_configure() {
use custom-cflags || strip-flags # can break in obscure ways, also no lto
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
+ # temporary workaround for tc-ld-force-bfd not yet enforcing with mold
+ # https://github.com/gentoo/gentoo/pull/28355
+ [[ $($(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) == mold* ]] &&
+ append-ldflags -fuse-ld=bfd
+
# build using upstream's way (--with-wine64)
# order matters: configure+compile 64->32, install 32->64
local -i bits
@@ -338,21 +344,10 @@ src_install() {
dodoc ANNOUNCE AUTHORS README* documentation/README*
}
-wine-eselect() {
- ebegin "${1^}ing ${P} using eselect-wine"
- eselect wine ${1} ${P} &&
- eselect wine ${1} --${PN#wine-} ${P} &&
- eselect wine update --if-unset &&
- eselect wine update --${PN#wine-} --if-unset
- eend ${?} || die -n "eselect failed, may need to manually handle ${P}"
-}
-
pkg_postinst() {
- wine-eselect register
+ eselect wine update --if-unset || die
}
-pkg_prerm() {
- if [[ ${REPLACED_BY_VERSION%-r*} != ${PV} ]]; then #881035
- nonfatal wine-eselect deregister
- fi
+pkg_postrm() {
+ eselect wine update --if-unset || die
}
diff --git a/app-emulation/wine-vanilla/Manifest b/app-emulation/wine-vanilla/Manifest
index 1848633541c9..aa24705e3015 100644
--- a/app-emulation/wine-vanilla/Manifest
+++ b/app-emulation/wine-vanilla/Manifest
@@ -4,15 +4,13 @@ AUX wine-vanilla-7.20-unwind.patch 1450 BLAKE2B 3f90cc131104ad72a11ae30c582b79b3
AUX wine-vanilla-7.21-crossflags.patch 876 BLAKE2B fa0bfd1f5fba242a8a99bf94e5ebb2c9cc07bb452d84d542f64a7f73795646af91283ac98dc2a78199ad6d0652544d7768a602539bd7c083ac5b9cf9fd4472ae SHA512 fe5160233246ac2335bb7f38daa761978544a935238d7b99cccf36fe09efa171bc4addbdeedbb457c28ea3a85377f4615ba68d04544ff887c94ff8341e3a8178
DIST wine-7.0.1.tar.xz 27167768 BLAKE2B 9bf74e7077fe4b77611f8195feeb53fc6475bdaeac97dab5221942115d6108d8786f93d4a96745bad72afb074b15129fec9b0b2f10261d91c9a9b57bd2240ded SHA512 5a5258132fe30bfb5313454598b85e7d97a74d1e0c7ca7af16aa8c486e316ad34ab74a25fd9a403c98ad1f3280385232f7d159bb824f713e920a4a0dae62c944
DIST wine-7.0.tar.xz 27120912 BLAKE2B 84bfeb28d56f0f40bb93b1b5bf8954c8be2fd90fde5a61608e7c35f48addcce7a4d660e63c3caa3ca2c365d1e83b55a1c3485872b2d6bfa8941e2bce44c4aca6 SHA512 eec17b046ed5447eb540f421c9b2748d9419ce087496c2743a9914fd27bbe5ff9da0cfe47d3cd76fa97323bd1188a1d82b1eef4968d86ed1957dc1a95e28529c
-DIST wine-7.18.tar.xz 28412876 BLAKE2B 1f25c8669a2afbead142923a39913b3f21df641e446a6136e7ecd282f6c31bc70578036e83f3dd28d22516d987ddca179198f76effb5c9aca089f4755ffa873e SHA512 e651b18cef73b4619e953b746d0c207c0220279003560aaf195c2569a22308af129e1460651a246e6a87dcfbcfcff08f52f970734035eb55ab45d8970fd56a02
DIST wine-7.19.tar.xz 28502612 BLAKE2B b7b270656955c7a1e1d84e8bbc7e3e8abff5aedadb5e8a458f0b1109d746875a359f3d2f53b1c9c6caae65d17fd1d205466cd3a884034a8bad6afe9456f13b5d SHA512 f76dbda97cccad4c0f249b5dd4e8d48afa832134f1704ae228650bb73ee82823e628b23bd53a3f8729e06a8933597ff2fffa5551f156fc9c9181b67c066747d5
DIST wine-7.20.tar.xz 28534920 BLAKE2B 2e0cd49a7820f0c885a2a6dbcded6ebbdb5e1ea5576b03dedb7ee066f74f8c675193450cdd45bf5e0224bd588a890138e47a15f513edbfde1eabf1b65c9abe31 SHA512 6e2e65fba2336985df93165050f0f46b752d6aa94fc1581451c58969e2003748378be4b9e16b647ca2922fbdff77920311b12a17bda630a7bccfc7ee8f03b453
DIST wine-7.21.tar.xz 28703308 BLAKE2B 8902ded32b9e635f8ccf659ca4055e9ad45d3659f3ad48d0c218dc5a7a334df456ea0e9441dcaff58e8cac0bbd65140b20e61180acaa06230bc70e28a8382c7e SHA512 15c0c9efda972b84890886fd4b1fb18dd462373ba490f5e607004a5436caba9823f643369ceb5abbc2d2d0e26d7ce002e00136299d9984c0a27f729f3ac129c1
-EBUILD wine-vanilla-7.0-r3.ebuild 10355 BLAKE2B f2d9e56ebb09de68dba8f2d0bb7c0384060185478e38acee7b076a0093a73f16283255a7ee5b9db584d4f850caa585af05792b37a248d2a5315707a938847877 SHA512 4a622689aaa1f589c3aab1790b75a8194bb50c46d695f17476a7c3fb4c41362327c1826a6869029abee33a48220e10a4accb11038f8a36ffd88ef4c4c3c0dd64
-EBUILD wine-vanilla-7.0.1.ebuild 10357 BLAKE2B 7ca11786d54fb5ff0a595e803feda0ab0848e72b403fef0a94c2eacf777e5af1ebb53487267c26d120450802ebe9d58b6b2b3d82e88e39d9f6072fa4ce16e0fb SHA512 2492f80869cce835701068a9f1f1ec5c8a6cf1d0cc2fba79f00bdb9d1a8b437ae76115d708e9741a94abb21e505dec39c3657df73a1595582e51d62e25450cf7
-EBUILD wine-vanilla-7.18.ebuild 10272 BLAKE2B 7e2b1f285f03e25d4b919326939b589e7ac6b4b10f6acfb4892c71a73bcd216f66fa00059fc10cefafc2f6ffb139f9263282eea35c0ca674a1f13714ae71e577 SHA512 d5db49c2a58b31f24fc3ff3ba5ce03f0d6a52efd0017b2b627a69173fc718c2307744191bd6a088aa7fa693ee0b52583cfddab8880d443d544ba252436ddf06c
-EBUILD wine-vanilla-7.19.ebuild 10272 BLAKE2B 7e2b1f285f03e25d4b919326939b589e7ac6b4b10f6acfb4892c71a73bcd216f66fa00059fc10cefafc2f6ffb139f9263282eea35c0ca674a1f13714ae71e577 SHA512 d5db49c2a58b31f24fc3ff3ba5ce03f0d6a52efd0017b2b627a69173fc718c2307744191bd6a088aa7fa693ee0b52583cfddab8880d443d544ba252436ddf06c
-EBUILD wine-vanilla-7.20.ebuild 10273 BLAKE2B fa8af5ca85bacdc748f36a7fb218cbc8fafb12ee49b53d63ccf2145f370f9a502016c392227ddcdb99ac2d488bf825b2f2671a2dbea0d867aad663b684e824ac SHA512 688724287c2ec191730789aeff258ca4e8af9e81bee01c522df31d39b66a20bebe928dec8f8075bd5ca230b6e759fb18cd34889eb6c358129b54e221ee918f24
-EBUILD wine-vanilla-7.21.ebuild 10374 BLAKE2B 915087bea2a7b6116f802c8fb29f3fe41a8249b2a69f501e97025fe0c63c99466f3b89bd769300ed2f968c1170683a4ddfb24c0cd9fa40dd18fae2807eff0b88 SHA512 71800fac0ff6f747da2701df52137777f8888ec6eff38950ce0eb37725d6fc5fcce1c5639cdfc3c37b934d9cc5732e78fd4c110ce3d0fa6565e627ae29154e0a
-EBUILD wine-vanilla-9999.ebuild 10375 BLAKE2B c185a517f3e7a1cd4512406ef93e2c1b55549479d0a91e0744cfbc06cf1972e5f60764b80939c8c57443b089e0dcb1ee5bbd18c9e7630b4355c139df3bd4f699 SHA512 a722662b6af9f04c0339fb9a30b2ae626b0852b57726890ec715ef3b319b8271ae80b92c30124f5b5231c492ee2426766a158f355769a7c09ba2555dd68616af
+EBUILD wine-vanilla-7.0-r3.ebuild 10596 BLAKE2B 9e62fe7db88a8e8e8232b4cd2cea88bdbaffcf3c95d023b280f50094f32fbbb95cf118be16470054e0560cef7db6a21ae780ac3dcdf205bce2e4e91059651f8d SHA512 ac951ccd3c00b52ad174c52f5b82b3295e5a1fe025865148d9b6a286f3af3181c43a6f8f2d37e211c45ef94b21b286ad2aed64f4c7faedfec7c78ceb6c284e90
+EBUILD wine-vanilla-7.0.1.ebuild 10272 BLAKE2B ae3917c6d7900e0a211384a600c29b825ab686da4ad79e89a7c479a997b2bdea65862feed77a94d134532b1ac437524004523da9343de8b61d7790f46c567b1b SHA512 ee9cebb5af001838f9659f576b7f54a06e12994c4e35bca445c521f6031367915ef2e898f9776482209c201e2653735322767b9000c9d8534d167e64c6273cdb
+EBUILD wine-vanilla-7.19.ebuild 10187 BLAKE2B 9008395c2c412674f26b5273ae83cdaad211eadfa70de7d75a7a336b0c3ed189ae0d2c60cd957c8c10f1bcdb22fe9c59a48f034b9e597ccf36c55540a374301c SHA512 9d0ae015c3a171768d01d769df742f66741e2d5fa14cfcbcd458e7ccabb7f7b98cabdcf1eff55b88a8b927c85e14aea7319e0edeac1ca57e60335144768f752e
+EBUILD wine-vanilla-7.20.ebuild 10188 BLAKE2B 77c7365ec9c58166b07a13e4204bb0a0e2251816c502dbea050877cc19b7864b16e7c4513cac8ad2225137f70137808d58eec17469af09f1278263a87f5aba10 SHA512 db487e83f4bfded1b71a0d4b3ba1608cc46a9f5a767a78d2efb9bbd545038fba041c92234f851156fee5e637c13b3e76286a88139d250131320b45af4106fc8f
+EBUILD wine-vanilla-7.21.ebuild 10289 BLAKE2B b0c41654525de30f0bdd43319febc764ede2786ec6078579fefad02ba38bc3f793decf9a046a74af7ca7b870ca12cbede6b4a54446fa4f83a5854991dad8e649 SHA512 b7e7a4d33898c4c01be37350c219dd1f223074ed5908fcdf7d6ec2b61a9e1575b5faa7cab570cdc2625f2f986552bf3f0a99bdd040e943760b97c3eb05b3b138
+EBUILD wine-vanilla-9999.ebuild 10290 BLAKE2B 5520ca47cd05a6ce11837819857cee2fc4d718ee8d7a2c14273f64d8d2f5280b4d063bf12b2462e8b38ba3010dc51859fbf0193e34a8bc6194759e0186bf36fd SHA512 ac5154d780d37c350f7078704efe4914bc733a6a1f72aa9ad74106e73b32c7580fbe54687e30f70754eca05f96eeed2b21083db10692bb67f799e2f64fdc9cd8
MISC metadata.xml 2376 BLAKE2B c37d5b769ce6ea0fd6ac0cde1084a332e34c13d31633d5c60970f89a932f621c0332b97b0667bbc42098a01c979919ac9d8d30487f2ad6691259270641b85485 SHA512 2968f0df88d5d95c0c649ae15cbc9088061c915046b2014448dad782a4abfa8cb173b6ec8ac15575329e5ce882342dfd1f5076a0ea8a2e89800fdc9628dc05f9
diff --git a/app-emulation/wine-vanilla/wine-vanilla-7.0-r3.ebuild b/app-emulation/wine-vanilla/wine-vanilla-7.0-r3.ebuild
index 67946b35d11a..653e8809117b 100644
--- a/app-emulation/wine-vanilla/wine-vanilla-7.0-r3.ebuild
+++ b/app-emulation/wine-vanilla/wine-vanilla-7.0-r3.ebuild
@@ -115,6 +115,7 @@ DEPEND="
X? ( x11-base/xorg-proto )"
BDEPEND="
dev-lang/perl
+ sys-devel/binutils
sys-devel/bison
sys-devel/flex
virtual/pkgconfig
@@ -221,6 +222,11 @@ src_configure() {
use custom-cflags || strip-flags # can break in obscure ways, also no lto
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
+ # temporary workaround for tc-ld-force-bfd not yet enforcing with mold
+ # https://github.com/gentoo/gentoo/pull/28355
+ [[ $($(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) == mold* ]] &&
+ append-ldflags -fuse-ld=bfd
+
# build using upstream's way (--with-wine64)
# order matters: configure+compile 64->32, install 32->64
local -i bits
diff --git a/app-emulation/wine-vanilla/wine-vanilla-7.0.1.ebuild b/app-emulation/wine-vanilla/wine-vanilla-7.0.1.ebuild
index ac4d2d7ec0d3..da66b3163208 100644
--- a/app-emulation/wine-vanilla/wine-vanilla-7.0.1.ebuild
+++ b/app-emulation/wine-vanilla/wine-vanilla-7.0.1.ebuild
@@ -115,12 +115,13 @@ DEPEND="
X? ( x11-base/xorg-proto )"
BDEPEND="
dev-lang/perl
+ sys-devel/binutils
sys-devel/bison
sys-devel/flex
virtual/pkgconfig
mingw? ( !crossdev-mingw? ( dev-util/mingw64-toolchain[${MULTILIB_USEDEP}] ) )
nls? ( sys-devel/gettext )"
-IDEPEND="app-eselect/eselect-wine"
+IDEPEND=">=app-eselect/eselect-wine-2"
QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext
@@ -221,6 +222,11 @@ src_configure() {
use custom-cflags || strip-flags # can break in obscure ways, also no lto
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
+ # temporary workaround for tc-ld-force-bfd not yet enforcing with mold
+ # https://github.com/gentoo/gentoo/pull/28355
+ [[ $($(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) == mold* ]] &&
+ append-ldflags -fuse-ld=bfd
+
# build using upstream's way (--with-wine64)
# order matters: configure+compile 64->32, install 32->64
local -i bits
@@ -306,21 +312,10 @@ src_install() {
dodoc ANNOUNCE AUTHORS README* documentation/README*
}
-wine-eselect() {
- ebegin "${1^}ing ${P} using eselect-wine"
- eselect wine ${1} ${P} &&
- eselect wine ${1} --${PN#wine-} ${P} &&
- eselect wine update --if-unset &&
- eselect wine update --${PN#wine-} --if-unset
- eend ${?} || die -n "eselect failed, may need to manually handle ${P}"
-}
-
pkg_postinst() {
- wine-eselect register
+ eselect wine update --if-unset || die
}
-pkg_prerm() {
- if [[ ${REPLACED_BY_VERSION%-r*} != ${PV} ]]; then #881035
- nonfatal wine-eselect deregister
- fi
+pkg_postrm() {
+ eselect wine update --if-unset || die
}
diff --git a/app-emulation/wine-vanilla/wine-vanilla-7.19.ebuild b/app-emulation/wine-vanilla/wine-vanilla-7.19.ebuild
index 9b551b53e450..69628d775f7e 100644
--- a/app-emulation/wine-vanilla/wine-vanilla-7.19.ebuild
+++ b/app-emulation/wine-vanilla/wine-vanilla-7.19.ebuild
@@ -114,12 +114,13 @@ DEPEND="
X? ( x11-base/xorg-proto )"
BDEPEND="
dev-lang/perl
+ sys-devel/binutils
sys-devel/bison
sys-devel/flex
virtual/pkgconfig
mingw? ( !crossdev-mingw? ( dev-util/mingw64-toolchain[${MULTILIB_USEDEP}] ) )
nls? ( sys-devel/gettext )"
-IDEPEND="app-eselect/eselect-wine"
+IDEPEND=">=app-eselect/eselect-wine-2"
QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext
@@ -219,6 +220,11 @@ src_configure() {
use custom-cflags || strip-flags # can break in obscure ways, also no lto
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
+ # temporary workaround for tc-ld-force-bfd not yet enforcing with mold
+ # https://github.com/gentoo/gentoo/pull/28355
+ [[ $($(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) == mold* ]] &&
+ append-ldflags -fuse-ld=bfd
+
# build using upstream's way (--with-wine64)
# order matters: configure+compile 64->32, install 32->64
local -i bits
@@ -304,21 +310,10 @@ src_install() {
dodoc ANNOUNCE AUTHORS README* documentation/README*
}
-wine-eselect() {
- ebegin "${1^}ing ${P} using eselect-wine"
- eselect wine ${1} ${P} &&
- eselect wine ${1} --${PN#wine-} ${P} &&
- eselect wine update --if-unset &&
- eselect wine update --${PN#wine-} --if-unset
- eend ${?} || die -n "eselect failed, may need to manually handle ${P}"
-}
-
pkg_postinst() {
- wine-eselect register
+ eselect wine update --if-unset || die
}
-pkg_prerm() {
- if [[ ${REPLACED_BY_VERSION%-r*} != ${PV} ]]; then #881035
- nonfatal wine-eselect deregister
- fi
+pkg_postrm() {
+ eselect wine update --if-unset || die
}
diff --git a/app-emulation/wine-vanilla/wine-vanilla-7.20.ebuild b/app-emulation/wine-vanilla/wine-vanilla-7.20.ebuild
index f7300657747d..e1d2da19d47b 100644
--- a/app-emulation/wine-vanilla/wine-vanilla-7.20.ebuild
+++ b/app-emulation/wine-vanilla/wine-vanilla-7.20.ebuild
@@ -114,12 +114,13 @@ DEPEND="
X? ( x11-base/xorg-proto )"
BDEPEND="
dev-lang/perl
+ sys-devel/binutils
sys-devel/bison
sys-devel/flex
virtual/pkgconfig
mingw? ( !crossdev-mingw? ( dev-util/mingw64-toolchain[${MULTILIB_USEDEP}] ) )
nls? ( sys-devel/gettext )"
-IDEPEND="app-eselect/eselect-wine"
+IDEPEND=">=app-eselect/eselect-wine-2"
QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext
@@ -219,6 +220,11 @@ src_configure() {
use custom-cflags || strip-flags # can break in obscure ways, also no lto
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
+ # temporary workaround for tc-ld-force-bfd not yet enforcing with mold
+ # https://github.com/gentoo/gentoo/pull/28355
+ [[ $($(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) == mold* ]] &&
+ append-ldflags -fuse-ld=bfd
+
# build using upstream's way (--with-wine64)
# order matters: configure+compile 64->32, install 32->64
local -i bits
@@ -304,21 +310,10 @@ src_install() {
dodoc ANNOUNCE AUTHORS README* documentation/README*
}
-wine-eselect() {
- ebegin "${1^}ing ${P} using eselect-wine"
- eselect wine ${1} ${P} &&
- eselect wine ${1} --${PN#wine-} ${P} &&
- eselect wine update --if-unset &&
- eselect wine update --${PN#wine-} --if-unset
- eend ${?} || die -n "eselect failed, may need to manually handle ${P}"
-}
-
pkg_postinst() {
- wine-eselect register
+ eselect wine update --if-unset || die
}
-pkg_prerm() {
- if [[ ${REPLACED_BY_VERSION%-r*} != ${PV} ]]; then #881035
- nonfatal wine-eselect deregister
- fi
+pkg_postrm() {
+ eselect wine update --if-unset || die
}
diff --git a/app-emulation/wine-vanilla/wine-vanilla-7.21.ebuild b/app-emulation/wine-vanilla/wine-vanilla-7.21.ebuild
index 71f603995e8a..d931d7219d8d 100644
--- a/app-emulation/wine-vanilla/wine-vanilla-7.21.ebuild
+++ b/app-emulation/wine-vanilla/wine-vanilla-7.21.ebuild
@@ -113,6 +113,7 @@ DEPEND="
X? ( x11-base/xorg-proto )"
BDEPEND="
dev-lang/perl
+ sys-devel/binutils
sys-devel/bison
sys-devel/flex
virtual/pkgconfig
@@ -120,7 +121,7 @@ BDEPEND="
>=dev-util/mingw64-toolchain-10.0.0_p1-r2[${MULTILIB_USEDEP}]
) )
nls? ( sys-devel/gettext )"
-IDEPEND="app-eselect/eselect-wine"
+IDEPEND=">=app-eselect/eselect-wine-2"
QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext
@@ -220,6 +221,11 @@ src_configure() {
use custom-cflags || strip-flags # can break in obscure ways, also no lto
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
+ # temporary workaround for tc-ld-force-bfd not yet enforcing with mold
+ # https://github.com/gentoo/gentoo/pull/28355
+ [[ $($(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) == mold* ]] &&
+ append-ldflags -fuse-ld=bfd
+
# build using upstream's way (--with-wine64)
# order matters: configure+compile 64->32, install 32->64
local -i bits
@@ -310,21 +316,10 @@ src_install() {
dodoc ANNOUNCE AUTHORS README* documentation/README*
}
-wine-eselect() {
- ebegin "${1^}ing ${P} using eselect-wine"
- eselect wine ${1} ${P} &&
- eselect wine ${1} --${PN#wine-} ${P} &&
- eselect wine update --if-unset &&
- eselect wine update --${PN#wine-} --if-unset
- eend ${?} || die -n "eselect failed, may need to manually handle ${P}"
-}
-
pkg_postinst() {
- wine-eselect register
+ eselect wine update --if-unset || die
}
-pkg_prerm() {
- if [[ ${REPLACED_BY_VERSION%-r*} != ${PV} ]]; then #881035
- nonfatal wine-eselect deregister
- fi
+pkg_postrm() {
+ eselect wine update --if-unset || die
}
diff --git a/app-emulation/wine-vanilla/wine-vanilla-9999.ebuild b/app-emulation/wine-vanilla/wine-vanilla-9999.ebuild
index df7e750e1587..b73eb356b435 100644
--- a/app-emulation/wine-vanilla/wine-vanilla-9999.ebuild
+++ b/app-emulation/wine-vanilla/wine-vanilla-9999.ebuild
@@ -111,6 +111,7 @@ DEPEND="
X? ( x11-base/xorg-proto )"
BDEPEND="
dev-lang/perl
+ sys-devel/binutils
sys-devel/bison
sys-devel/flex
virtual/pkgconfig
@@ -118,7 +119,7 @@ BDEPEND="
>=dev-util/mingw64-toolchain-10.0.0_p1-r2[${MULTILIB_USEDEP}]
) )
nls? ( sys-devel/gettext )"
-IDEPEND="app-eselect/eselect-wine"
+IDEPEND=">=app-eselect/eselect-wine-2"
QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext
@@ -216,6 +217,11 @@ src_configure() {
use custom-cflags || strip-flags # can break in obscure ways, also no lto
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
+ # temporary workaround for tc-ld-force-bfd not yet enforcing with mold
+ # https://github.com/gentoo/gentoo/pull/28355
+ [[ $($(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) == mold* ]] &&
+ append-ldflags -fuse-ld=bfd
+
# build using upstream's way (--with-wine64)
# order matters: configure+compile 64->32, install 32->64
local -i bits
@@ -308,21 +314,10 @@ src_install() {
dodoc ANNOUNCE AUTHORS README* documentation/README*
}
-wine-eselect() {
- ebegin "${1^}ing ${P} using eselect-wine"
- eselect wine ${1} ${P} &&
- eselect wine ${1} --${PN#wine-} ${P} &&
- eselect wine update --if-unset &&
- eselect wine update --${PN#wine-} --if-unset
- eend ${?} || die -n "eselect failed, may need to manually handle ${P}"
-}
-
pkg_postinst() {
- wine-eselect register
+ eselect wine update --if-unset || die
}
-pkg_prerm() {
- if [[ ${REPLACED_BY_VERSION%-r*} != ${PV} ]]; then #881035
- nonfatal wine-eselect deregister
- fi
+pkg_postrm() {
+ eselect wine update --if-unset || die
}