From d1e9f93d59950038f467bdd1b999724e90071558 Mon Sep 17 00:00:00 2001 From: NP-Hardass Date: Thu, 21 Apr 2016 22:42:16 -0400 Subject: app-emulation/wine: Add d3d9 support to 9999 Package-Manager: portage-2.2.26 --- app-emulation/wine/metadata.xml | 7 +++++++ app-emulation/wine/wine-9999.ebuild | 27 +++++++++++++++++++++++---- 2 files changed, 30 insertions(+), 4 deletions(-) (limited to 'app-emulation/wine') diff --git a/app-emulation/wine/metadata.xml b/app-emulation/wine/metadata.xml index 16fa7a695f4d..aa61670c51b9 100644 --- a/app-emulation/wine/metadata.xml +++ b/app-emulation/wine/metadata.xml @@ -5,6 +5,11 @@ wine@gentoo.org Wine + + commendsarnex@gmail.com + Nick Sarnie + Only CC on bugs that involve USE="d3d9" + Wine is an Open Source implementation of the Windows API on top of X and Unix. @@ -13,6 +18,8 @@ Think of Wine as a compatibility layer for running Windows programs. Wine does n Enable ISDN support via CAPI Bypass strip-flags; use at your own peril + Apply highly experimental patches for Gallium Nine support. + This patch may break some applications. Pull in games-emulation/dosbox to run DOS applications Add support for the Gecko engine when using iexplore Use media-libs/gstreamer to provide DirectShow functionality; diff --git a/app-emulation/wine/wine-9999.ebuild b/app-emulation/wine/wine-9999.ebuild index d0ad464c637f..c495091d9cff 100644 --- a/app-emulation/wine/wine-9999.ebuild +++ b/app-emulation/wine/wine-9999.ebuild @@ -26,6 +26,8 @@ MV="4.6.2" [[ ${MAJOR_V} == "1.8" ]] && SUFFIX="-unofficial" STAGING_P="wine-staging-${PV}" STAGING_DIR="${WORKDIR}/${STAGING_P}${SUFFIX}" +D3D9_P="${PV}" +D3D9_DIR="${WORKDIR}/wine-d3d9-patches-${D3D9_P}" WINE_GENTOO="wine-gentoo-2015.03.07" DESCRIPTION="Free implementation of Windows(tm) on Unix" HOMEPAGE="http://www.winehq.org/" @@ -39,14 +41,16 @@ SRC_URI="${SRC_URI} if [[ ${PV} == "9999" ]] ; then STAGING_EGIT_REPO_URI="git://github.com/wine-compholio/wine-staging.git" + D3D9_EGIT_REPO_URI="git://github.com/sarnex/wine-d3d9-patches.git" else SRC_URI="${SRC_URI} - staging? ( https://github.com/wine-compholio/wine-staging/archive/v${PV}${SUFFIX}.tar.gz -> ${STAGING_P}.tar.gz )" + staging? ( https://github.com/wine-compholio/wine-staging/archive/v${PV}${SUFFIX}.tar.gz -> ${STAGING_P}.tar.gz ) + d3d9? ( https://github.com/sarnex/wine-d3d9-patches/archive/wine-d3d9-${PV}.tar.gz -> ${D3D9_P}.tar.gz )" fi LICENSE="LGPL-2.1" SLOT="0" -IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc +fontconfig +gecko gphoto2 gsm gstreamer +jpeg +lcms ldap +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight +png prelink pulseaudio +realtime +run-exes s3tc samba scanner selinux +ssl staging test +threads +truetype +udisks v4l vaapi +X +xcomposite xinerama +xml" +IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags d3d9 dos elibc_glibc +fontconfig +gecko gphoto2 gsm gstreamer +jpeg +lcms ldap +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight +png prelink pulseaudio +realtime +run-exes s3tc samba scanner selinux +ssl staging test +threads +truetype +udisks v4l vaapi +X +xcomposite xinerama +xml" REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 ) test? ( abi_x86_32 ) elibc_glibc? ( threads ) @@ -62,6 +66,7 @@ RESTRICT="test" COMMON_DEPEND=" truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] ) capi? ( net-dialup/capi4k-utils ) + d3d9? ( media-libs/mesa[d3d9,${MULTILIB_USEDEP}] ) ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] ) udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] ) fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] ) @@ -216,8 +221,7 @@ src_unpack() { local WINE_COMMIT=${EGIT_VERSION} EGIT_REPO_URI=${STAGING_EGIT_REPO_URI} - unset ${PN}_LIVE_REPO; - unset EGIT_COMMIT; + unset ${PN}_LIVE_{REPO,BRANCH,COMMIT} EGIT_COMMIT; EGIT_CHECKOUT_DIR=${STAGING_DIR} git-r3_src_unpack @@ -229,9 +233,15 @@ src_unpack() { einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine" fi fi + if use d3d9; then + EGIT_REPO_URI="${D3D9_EGIT_REPO_URI}" + unset ${PN}_LIVE_{REPO,BRANCH,COMMIT} EGIT_COMMIT; + EGIT_CHECKOUT_DIR="${D3D9_DIR}" git-r3_src_unpack + fi else unpack ${P}.tar.bz2 use staging && unpack "${STAGING_P}.tar.gz" + use d3d9 && unpack "${D3D9_P}.tar.gz" fi unpack "${WINE_GENTOO}.tar.bz2" @@ -268,6 +278,14 @@ src_prepare() { sed -i "s/(Staging)/(Staging [Unofficial])/" libs/wine/Makefile.in || die fi fi + if use d3d9; then + if use staging; then + PATCHES+=( "${D3D9_DIR}/staging-helper.patch" ) + else + PATCHES+=( "${D3D9_DIR}/d3d9-helper.patch" ) + fi + PATCHES+=( "${D3D9_DIR}/wine-d3d9.patch" ) + fi default eautoreconf @@ -341,6 +359,7 @@ multilib_src_configure() { --with-xattr $(use_with vaapi va) ) + use d3d9 && myconf+=( $(use_with d3d9 d3dadapter) ) local PKG_CONFIG AR RANLIB # Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038 -- cgit v1.2.3-65-gdbad