commit: feca0d431897f1433c47c522e4accdc3aff14723 Author: Nick Sarnie <sarnex <AT> gentoo <DOT> org> AuthorDate: Tue Nov 24 03:23:00 2020 +0000 Commit: Nick Sarnie <sarnex <AT> gentoo <DOT> org> CommitDate: Tue Nov 24 03:27:00 2020 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=feca0d43
app-emulation/wine-staging: Sync with ::wine Add mingw USE Package-Manager: Portage-3.0.10, Repoman-3.0.2 Signed-off-by: Nick Sarnie <sarnex <AT> gentoo.org> app-emulation/wine-staging/metadata.xml | 3 +- ...ing-9999.ebuild => wine-staging-5.22-r1.ebuild} | 38 +++++++++++++++++++--- .../wine-staging/wine-staging-9999.ebuild | 33 +++++++++++++++++-- 3 files changed, 67 insertions(+), 7 deletions(-) diff --git a/app-emulation/wine-staging/metadata.xml b/app-emulation/wine-staging/metadata.xml index 47f226562ce..453fea4e770 100644 --- a/app-emulation/wine-staging/metadata.xml +++ b/app-emulation/wine-staging/metadata.xml @@ -25,6 +25,7 @@ This variant of the Wine packaging includes the Wine-Staging patchset. <flag name="gecko">Add support for the Gecko engine when using iexplore</flag> <flag name="gssapi">Use GSSAPI (Kerberos SSP support)</flag> <flag name="gstreamer">Use <pkg>media-libs/gstreamer</pkg> to provide DirectShow functionality;</flag> + <flag name="mingw">Build PE files using a MinGW cross compiler</flag> <flag name="mono">Add support for .NET using Wine's Mono add-on</flag> <flag name="netapi">Use libnetapi from <pkg>net-fs/samba</pkg> to support Windows networks in netapi32.dll</flag> <flag name="opencl">Enable OpenCL support</flag> @@ -42,7 +43,7 @@ This variant of the Wine packaging includes the Wine-Staging patchset. (these pages are not currently in the updated WineHQ Wiki).</flag> <flag name="sdl">Add support for gamepad detection using SDL</flag> <flag name="staging">Apply Wine-Staging patches for advanced feature support that haven't made it into upstream Wine yet</flag> - <flag name="themes">Support GTK+:3 window theming through Wine-Staging</flag> + <flag name="themes">Support GTK+:3 window theming through Wine-Staging</flag> <flag name="udev">Use <pkg>virtual/libudev</pkg> to provide plug and play support</flag> <flag name="unwind">Use <pkg>sys-libs/libunwind</pkg> to unwind the stack</flag> <flag name="vkd3d">Use <pkg>app-emulation/vkd3d</pkg> to provide Direct3D 12 support</flag> diff --git a/app-emulation/wine-staging/wine-staging-9999.ebuild b/app-emulation/wine-staging/wine-staging-5.22-r1.ebuild similarity index 92% copy from app-emulation/wine-staging/wine-staging-9999.ebuild copy to app-emulation/wine-staging/wine-staging-5.22-r1.ebuild index 11363b6b82b..cf0d7510808 100644 --- a/app-emulation/wine-staging/wine-staging-9999.ebuild +++ b/app-emulation/wine-staging/wine-staging-5.22-r1.ebuild @@ -44,7 +44,7 @@ fi LICENSE="LGPL-2.1" SLOT="${PV}" -IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc +faudio +fontconfig +gcrypt +gecko gphoto2 gsm gssapi gstreamer +jpeg kerberos kernel_FreeBSD +lcms ldap +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight +png prelink pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl staging test themes +threads +truetype udev +udisks +unwind v4l vaapi vkd3d vulkan +X +xcomposite xinerama +xml" +IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc +faudio +fontconfig +gcrypt +gecko gphoto2 gsm gssapi gstreamer +jpeg kerberos kernel_FreeBSD +lcms ldap mingw +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight +png prelink pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl staging test themes +threads +truetype udev +udisks +unwind v4l vaapi vkd3d vulkan +X +xcomposite xinerama +xml" REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 ) X? ( truetype ) elibc_glibc? ( threads ) @@ -297,6 +297,34 @@ pkg_pretend() { die fi fi + + if use mingw && use abi_x86_32 && ! has_version "cross-i686-w64-mingw32/gcc"; then + eerror + eerror "USE=\"mingw\" is currently experimental, and requires the" + eerror "'cross-i686-w64-mingw32' compiler and its runtime for 32-bit builds." + eerror + eerror "These can be installed by using 'sys-devel/crossdev':" + eerror + eerror "crossdev --target i686-w64-mingw32" + eerror + eerror "For more information on setting up MinGW, see: https://wiki.gentoo.org/wiki/Mingw" + eerror + die "MinGW build was enabled, but no compiler to support it was found." + fi + + if use mingw && use abi_x86_64 && ! has_version "cross-x86_64-w64-mingw32/gcc"; then + eerror + eerror "USE=\"mingw\" is currently experimental, and requires the" + eerror "'cross-x86_64-w64-mingw32' compiler and its runtime for 64-bit builds." + eerror + eerror "These can be installed by using 'sys-devel/crossdev':" + eerror + eerror "crossdev --target x86_64-w64-mingw32" + eerror + eerror "For more information on setting up MinGW, see: https://wiki.gentoo.org/wiki/Mingw" + eerror + die "MinGW build was enabled, but no compiler to support it was found." + fi } pkg_setup() { @@ -455,7 +483,8 @@ multilib_src_configure() { $(use_with jpeg) $(use_with kerberos krb5) $(use_with ldap) - --without-mingw # linux LDFLAGS leak in mingw32: bug #685172 + # TODO: Will bug 685172 still need special handling? + $(use_with mingw) $(use_enable mono mscoree) $(use_with mp3 mpg123) $(use_with netapi) @@ -492,9 +521,10 @@ multilib_src_configure() { $(use_with vaapi va) ) - local PKG_CONFIG + local PKG_CONFIG AR RANLIB # Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038 - tc-export PKG_CONFIG + # set AR and RANLIB to make QA scripts happy; #483342 + tc-export PKG_CONFIG AR RANLIB if use amd64; then if [[ ${ABI} == amd64 ]]; then diff --git a/app-emulation/wine-staging/wine-staging-9999.ebuild b/app-emulation/wine-staging/wine-staging-9999.ebuild index 11363b6b82b..df834fec4d8 100644 --- a/app-emulation/wine-staging/wine-staging-9999.ebuild +++ b/app-emulation/wine-staging/wine-staging-9999.ebuild @@ -44,7 +44,7 @@ fi LICENSE="LGPL-2.1" SLOT="${PV}" -IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc +faudio +fontconfig +gcrypt +gecko gphoto2 gsm gssapi gstreamer +jpeg kerberos kernel_FreeBSD +lcms ldap +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight +png prelink pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl staging test themes +threads +truetype udev +udisks +unwind v4l vaapi vkd3d vulkan +X +xcomposite xinerama +xml" +IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc +faudio +fontconfig +gcrypt +gecko gphoto2 gsm gssapi gstreamer +jpeg kerberos kernel_FreeBSD +lcms ldap mingw +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight +png prelink pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl staging test themes +threads +truetype udev +udisks +unwind v4l vaapi vkd3d vulkan +X +xcomposite xinerama +xml" REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 ) X? ( truetype ) elibc_glibc? ( threads ) @@ -297,6 +297,34 @@ pkg_pretend() { die fi fi + + if use mingw && use abi_x86_32 && ! has_version "cross-i686-w64-mingw32/gcc"; then + eerror + eerror "USE=\"mingw\" is currently experimental, and requires the" + eerror "'cross-i686-w64-mingw32' compiler and its runtime for 32-bit builds." + eerror + eerror "These can be installed by using 'sys-devel/crossdev':" + eerror + eerror "crossdev --target i686-w64-mingw32" + eerror + eerror "For more information on setting up MinGW, see: https://wiki.gentoo.org/wiki/Mingw" + eerror + die "MinGW build was enabled, but no compiler to support it was found." + fi + + if use mingw && use abi_x86_64 && ! has_version "cross-x86_64-w64-mingw32/gcc"; then + eerror + eerror "USE=\"mingw\" is currently experimental, and requires the" + eerror "'cross-x86_64-w64-mingw32' compiler and its runtime for 64-bit builds." + eerror + eerror "These can be installed by using 'sys-devel/crossdev':" + eerror + eerror "crossdev --target x86_64-w64-mingw32" + eerror + eerror "For more information on setting up MinGW, see: https://wiki.gentoo.org/wiki/Mingw" + eerror + die "MinGW build was enabled, but no compiler to support it was found." + fi } pkg_setup() { @@ -455,7 +483,8 @@ multilib_src_configure() { $(use_with jpeg) $(use_with kerberos krb5) $(use_with ldap) - --without-mingw # linux LDFLAGS leak in mingw32: bug #685172 + # TODO: Will bug 685172 still need special handling? + $(use_with mingw) $(use_enable mono mscoree) $(use_with mp3 mpg123) $(use_with netapi)