summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNP-Hardass <NP-Hardass@gentoo.org>2016-04-21 22:42:16 -0400
committerNP-Hardass <NP-Hardass@gentoo.org>2016-04-22 00:47:51 -0400
commitd1e9f93d59950038f467bdd1b999724e90071558 (patch)
tree85d8bae1cdb34abb5735f7bba701e19db179d7ea /app-emulation/wine
parentwww-client/chromium: stable channel bump (50.0.2661.86) (diff)
downloadgentoo-d1e9f93d59950038f467bdd1b999724e90071558.tar.gz
gentoo-d1e9f93d59950038f467bdd1b999724e90071558.tar.bz2
gentoo-d1e9f93d59950038f467bdd1b999724e90071558.zip
app-emulation/wine: Add d3d9 support to 9999
Package-Manager: portage-2.2.26
Diffstat (limited to 'app-emulation/wine')
-rw-r--r--app-emulation/wine/metadata.xml7
-rw-r--r--app-emulation/wine/wine-9999.ebuild27
2 files changed, 30 insertions, 4 deletions
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 @@
<email>wine@gentoo.org</email>
<name>Wine</name>
</maintainer>
+ <maintainer type="person">
+ <email>commendsarnex@gmail.com</email>
+ <name>Nick Sarnie</name>
+ <description>Only CC on bugs that involve USE="d3d9"</description>
+ </maintainer>
<longdescription>
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
<use>
<flag name="capi">Enable ISDN support via CAPI</flag>
<flag name="custom-cflags">Bypass strip-flags; use at your own peril</flag>
+ <flag name="d3d9">Apply highly experimental patches for Gallium Nine support.
+ This patch may break some applications.</flag>
<flag name="dos">Pull in <pkg>games-emulation/dosbox</pkg> to run DOS applications</flag>
<flag name="gecko">Add support for the Gecko engine when using iexplore</flag>
<flag name="gstreamer">Use <pkg>media-libs/gstreamer</pkg> 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