summaryrefslogtreecommitdiff
path: root/app-emulation
diff options
context:
space:
mode:
Diffstat (limited to 'app-emulation')
-rw-r--r--app-emulation/gallium-nine-standalone/Manifest1
-rw-r--r--app-emulation/gallium-nine-standalone/files/0.8-bypass_bootstrap.patch40
-rw-r--r--app-emulation/gallium-nine-standalone/gallium-nine-standalone-0.8-r2.ebuild65
3 files changed, 106 insertions, 0 deletions
diff --git a/app-emulation/gallium-nine-standalone/Manifest b/app-emulation/gallium-nine-standalone/Manifest
new file mode 100644
index 00000000..8bf4e367
--- /dev/null
+++ b/app-emulation/gallium-nine-standalone/Manifest
@@ -0,0 +1 @@
+DIST gallium-nine-standalone-0.8.tar.gz 66656 BLAKE2B 5eaebcc514570dbaff44c4c889025d19a26c0b54941d1ab99ec131216a6eb49c2c649f1a4df51534f608653dab8b5e55a35afc57ba04a0ab6f4dea0edabac55c SHA512 3f339f909c6d65a2e5b5c912785aaa6f297e95549c868ab679dfb8e99d67db9906b6e75e3679a4e3e003f512a54ceb9953f941a4129f488973c16e1a3ac7267c
diff --git a/app-emulation/gallium-nine-standalone/files/0.8-bypass_bootstrap.patch b/app-emulation/gallium-nine-standalone/files/0.8-bypass_bootstrap.patch
new file mode 100644
index 00000000..8be85749
--- /dev/null
+++ b/app-emulation/gallium-nine-standalone/files/0.8-bypass_bootstrap.patch
@@ -0,0 +1,40 @@
+diff -Nur a/tools/cross-wine32 b/tools/cross-wine32
+--- a/tools/cross-wine32 1970-01-01 01:00:00.000000000 +0100
++++ b/tools/cross-wine32 2022-11-13 00:36:46.010367522 +0000
+@@ -0,0 +1,16 @@
++[binaries]
++c = 'winegcc'
++ar = 'ar'
++strip = 'strip'
++pkgconfig = 'i686-pc-linux-gnu-pkg-config'
++
++[properties]
++c_args = ['-m32']
++c_link_args = ['-m32', '-mwindows', '-L/nonexistant']
++needs_exe_wrapper = true
++
++[host_machine]
++system = 'linux'
++cpu_family = 'x86'
++cpu = 'i686'
++endian = 'little'
+diff -Nur a/tools/cross-wine64 b/tools/cross-wine64
+--- a/tools/cross-wine64 1970-01-01 01:00:00.000000000 +0100
++++ b/tools/cross-wine64 2022-11-13 00:36:46.011367522 +0000
+@@ -0,0 +1,16 @@
++[binaries]
++c = 'winegcc'
++ar = 'ar'
++strip = 'strip'
++pkgconfig = 'x86_64-pc-linux-gnu-pkg-config'
++
++[properties]
++c_args = ['-m64']
++c_link_args = ['-m64', '-mwindows', '-L/nonexistant']
++needs_exe_wrapper = true
++
++[host_machine]
++system = 'linux'
++cpu_family = 'x86_64'
++cpu = 'x86_64'
++endian = 'little'
diff --git a/app-emulation/gallium-nine-standalone/gallium-nine-standalone-0.8-r2.ebuild b/app-emulation/gallium-nine-standalone/gallium-nine-standalone-0.8-r2.ebuild
new file mode 100644
index 00000000..3adff5e1
--- /dev/null
+++ b/app-emulation/gallium-nine-standalone/gallium-nine-standalone-0.8-r2.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit meson-multilib toolchain-funcs
+
+MY_PN="wine-nine-standalone"
+DESCRIPTION="A standalone version of the WINE parts of Gallium Nine"
+HOMEPAGE="https://github.com/iXit/wine-nine-standalone"
+
+if [[ ${PV} = 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/iXit/${MY_PN}.git"
+else
+ SRC_URI="https://github.com/iXit/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ S="${WORKDIR}/${MY_PN}-${PV}"
+ KEYWORDS="-* ~amd64 ~x86"
+fi
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+
+# We don't put Wine in RDEPEND because you can also use this with
+# Steam's Proton.
+
+RDEPEND="
+ media-libs/mesa[d3d9,X(+),${MULTILIB_USEDEP}]
+ x11-libs/libX11[${MULTILIB_USEDEP}]
+ x11-libs/libxcb[${MULTILIB_USEDEP}]
+"
+
+DEPEND="
+ ${RDEPEND}
+ virtual/pkgconfig
+ virtual/wine[${MULTILIB_USEDEP}]
+ >=dev-util/meson-0.50.1
+"
+
+PATCHES=(
+ "${FILESDIR}"/"${PV}"-bypass_bootstrap.patch
+)
+
+bits() {
+ if [[ ${ABI} = amd64 ]]; then
+ echo 64
+ else
+ echo 32
+ fi
+}
+
+multilib_src_configure() {
+ local emesonargs=(
+ --cross-file "${S}/tools/cross-wine$(bits)"
+ --bindir "$(get_libdir)"
+ -Ddistro-independent=false
+ -Ddri2=false
+ )
+ meson_src_configure
+}
+
+multilib_src_install() {
+ meson_src_install
+ dobin "${S}"/tools/nine-install.sh || die
+}