diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2019-05-04 12:02:00 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2019-05-04 12:02:00 +0100 |
commit | eab5731cdf11d4ae8cdf111461d46fd96c5bdd37 (patch) | |
tree | ce35c6d01b5ff5de95c3a20fef853b9a6518ad2e /app-emulation/gallium-nine-standalone | |
parent | b7ebc951da8800f711142f69d9d958bde67a112d (diff) |
gentoo resync : 04.05.2019
Diffstat (limited to 'app-emulation/gallium-nine-standalone')
3 files changed, 115 insertions, 7 deletions
diff --git a/app-emulation/gallium-nine-standalone/Manifest b/app-emulation/gallium-nine-standalone/Manifest index 3f7263e311b0..a03766b75ca3 100644 --- a/app-emulation/gallium-nine-standalone/Manifest +++ b/app-emulation/gallium-nine-standalone/Manifest @@ -1,6 +1,8 @@ AUX 0.3-nine-dll-path.patch 414 BLAKE2B a1747c90521f2fec6ba70ea77c2b7a2adafd705e04a46ea14fe983859f00c0aa33ec73dc24a03805579b84b57a2528857994943bb999e2f38c6f652404fd661e SHA512 423a7ebd8284c475d226109e0af9d867753b75ff1d1a9100d948c91e71dbc76bd8d8973e4ecf3fdb8fab5555da6339484459c623f028f7091e9d010395f24970 AUX flags.patch 928 BLAKE2B 62f7d6c3e904ad13f39f6e554fb02784b1d68bcea92208c16f0583d41dbd95c1bc52d6b58ee7b88aff54073f9afc078839759f752ee765ebb8059a81fe52dee3 SHA512 e37221abb35a4c170a38db0129a0413b54863952ed00efa36dd0b8af67850cde3949d8b81547bad8c13783ddd7a32407b6eaf33881505cdfe165a29ec9c31c19 DIST gallium-nine-standalone-0.3.tar.gz 63887 BLAKE2B bd198617a5d3d3830bd5127b63eed2c82bff037141ae72ff9237ad5062fdbe9b6797e233eaf86e06d92153487c53389eb094b0be3b0cbdbf3fe565292a15cbb0 SHA512 80fedca58523fbf318109d2d3d5420e97d26ebf5b89b9f1965165c7a33c9dab9c62a65f14b75569b5126c549f5df91beef372d54e94dc90c608932eeb6a59829 +DIST gallium-nine-standalone-0.4.tar.gz 66820 BLAKE2B 7e7b0028f0c7e7c26fa1ee164e7e867fee39a5f315b750bfc3537e8720e9fbc625ca27fb28a58e8e521af455f8ab347d6fd6ca82786fe5ac9d76e368cd43466e SHA512 6af31e828400c6f711c76d91fb65215f4ba79c31b8d98f3e953b319593d96d1e5e78e07aca96529de37bbb89f3479a4d4db5f58e32ce7b98667284be10a9e532 EBUILD gallium-nine-standalone-0.3.ebuild 2928 BLAKE2B aec5af41c488c7a0d56b432a6fa103c6f485668f0c068c5aaa85501d4b6c29bd952124799508deb99926822cf58b17e0a86c4ec4e37b79d88aadcb7b690516d1 SHA512 3c93f520498e0b9de4d2f7552fd41944111801f38cf540acda048c61bd83f878e433b273c547c1b21f6945a529881ae94cdaf9c03b27f10908a70a4d16d612c9 -EBUILD gallium-nine-standalone-9999.ebuild 2928 BLAKE2B aec5af41c488c7a0d56b432a6fa103c6f485668f0c068c5aaa85501d4b6c29bd952124799508deb99926822cf58b17e0a86c4ec4e37b79d88aadcb7b690516d1 SHA512 3c93f520498e0b9de4d2f7552fd41944111801f38cf540acda048c61bd83f878e433b273c547c1b21f6945a529881ae94cdaf9c03b27f10908a70a4d16d612c9 +EBUILD gallium-nine-standalone-0.4.ebuild 2782 BLAKE2B 9335c616e56938adce7e7d409f369765936eb58c612601e9feb48714e8313db62b106450ab0d5d63d8880357555b2e2fee7c51c00ae68c0e6c81ef4af3eaae3c SHA512 1a51b7f5a8e68188a0505f1f1467c5b4f35c8ee7dd4135d622dac12a6b756c96a521bf6ce84fb2c655b94f49fd4fea0a01c973a2d4c1fa213b49c42ccb6ff092 +EBUILD gallium-nine-standalone-9999.ebuild 2782 BLAKE2B 9335c616e56938adce7e7d409f369765936eb58c612601e9feb48714e8313db62b106450ab0d5d63d8880357555b2e2fee7c51c00ae68c0e6c81ef4af3eaae3c SHA512 1a51b7f5a8e68188a0505f1f1467c5b4f35c8ee7dd4135d622dac12a6b756c96a521bf6ce84fb2c655b94f49fd4fea0a01c973a2d4c1fa213b49c42ccb6ff092 MISC metadata.xml 774 BLAKE2B 8b793ed6e079a800628ed7e59786bc82dd191c05367ef5e1600f903f3ebfd32c9ab0034a1dba1701ec104348cf1b9a8b437b63300e607a65ee92b1887be4800f SHA512 9453d7d767ba7f788291c6980a86388a0f952b893a474aa17e249c4f3b9b77b864108230fdc8f8b94e74eb45443f608a8d9ecde10cbc121234c9b91f59e7b752 diff --git a/app-emulation/gallium-nine-standalone/gallium-nine-standalone-0.4.ebuild b/app-emulation/gallium-nine-standalone/gallium-nine-standalone-0.4.ebuild new file mode 100644 index 000000000000..868d83cdbb60 --- /dev/null +++ b/app-emulation/gallium-nine-standalone/gallium-nine-standalone-0.4.ebuild @@ -0,0 +1,109 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit meson multilib-minimal 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,dri3,${MULTILIB_USEDEP}] + x11-libs/libX11[${MULTILIB_USEDEP}] + x11-libs/libxcb[${MULTILIB_USEDEP}] +" + +DEPEND=" + ${RDEPEND} + virtual/pkgconfig[${MULTILIB_USEDEP}] + virtual/wine[${MULTILIB_USEDEP}] + >=dev-util/meson-0.50.1 +" + +PATCHES=( + "${FILESDIR}"/flags.patch + "${FILESDIR}"/0.3-nine-dll-path.patch +) + +bits() { + if [[ ${ABI} = amd64 ]]; then + echo 64 + else + echo 32 + fi +} + +src_prepare() { + default + + # Upstream includes a bootstrap.sh script with hardcoded CHOSTs to + # create the Meson cross files. We improve on that here but also + # inject CFLAGS and LDFLAGS, partly to simply respect these, and + # partly to allow d3d9-nine.dll to be loaded from a location outside + # WINEPREFIX. This avoids the need for the nine-install.sh script, + # which doesn't play well with our multi-Wine environment. + bootstrap_nine() { + local file=tools/cross-wine$(bits) + local g9dll=\"Z:${EPREFIX}/usr/$(get_libdir)/d3d9-nine.dll.so\" + + sed \ + -e "s!@PKG_CONFIG@!$(tc-getPKG_CONFIG)!" \ + -e "s!@CFLAGS@!$(_meson_env_array "${CFLAGS} '-DG9DLL=${g9dll}'")!" \ + -e "s!@LDFLAGS@!$(_meson_env_array "${LDFLAGS}")!" \ + ${file}.in > ${file} || die + } + + multilib_foreach_abi bootstrap_nine +} + +multilib_src_configure() { + # We override bindir because otherwise the 32-bit exe is overwritten + # by the 64-bit exe and we need both of them. + local emesonargs=( + --cross-file "${S}/tools/cross-wine$(bits)" + --bindir "$(get_libdir)" + -Ddistro-independent=false + -Ddri2=false + ) + meson_src_configure +} + +multilib_src_compile() { + meson_src_compile +} + +multilib_src_install() { + meson_src_install +} + +pkg_postinst() { + local bits=$(bits) + + einfo "Don't remove the Z: drive from your WINEPREFIX as this relies on it." + einfo + einfo "To set up the ${bits}-bit library, launch your preferred Wine as follows:" + einfo " wine${bits/32} ${EPREFIX}/usr/$(get_libdir)/ninewinecfg.exe.so" + + if use abi_x86_64 && use abi_x86_32; then + einfo + einfo "To set up the 32-bit library, launch your preferred Wine as follows:" + einfo " wine ${EPREFIX}/usr/$(ABI=x86 get_libdir)/ninewinecfg.exe.so" + fi +} diff --git a/app-emulation/gallium-nine-standalone/gallium-nine-standalone-9999.ebuild b/app-emulation/gallium-nine-standalone/gallium-nine-standalone-9999.ebuild index 852055dc803a..868d83cdbb60 100644 --- a/app-emulation/gallium-nine-standalone/gallium-nine-standalone-9999.ebuild +++ b/app-emulation/gallium-nine-standalone/gallium-nine-standalone-9999.ebuild @@ -27,7 +27,6 @@ SLOT="0" RDEPEND=" media-libs/mesa[d3d9,dri3,${MULTILIB_USEDEP}] x11-libs/libX11[${MULTILIB_USEDEP}] - x11-libs/libXext[${MULTILIB_USEDEP}] x11-libs/libxcb[${MULTILIB_USEDEP}] " @@ -35,6 +34,7 @@ DEPEND=" ${RDEPEND} virtual/pkgconfig[${MULTILIB_USEDEP}] virtual/wine[${MULTILIB_USEDEP}] + >=dev-util/meson-0.50.1 " PATCHES=( @@ -61,14 +61,11 @@ src_prepare() { # which doesn't play well with our multi-Wine environment. bootstrap_nine() { local file=tools/cross-wine$(bits) - local g9dll=Z:${EPREFIX//\//\\}\\usr\\$(get_libdir)\\d3d9-nine.dll.so - - # Yes, these ridiculous backslashes are needed! - g9dll=\\\\\\\\\\\"${g9dll//\\/\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\}\\\\\\\\\\\" + local g9dll=\"Z:${EPREFIX}/usr/$(get_libdir)/d3d9-nine.dll.so\" sed \ -e "s!@PKG_CONFIG@!$(tc-getPKG_CONFIG)!" \ - -e "s!@CFLAGS@!$(_meson_env_array "${CFLAGS} -DG9DLL=${g9dll}")!" \ + -e "s!@CFLAGS@!$(_meson_env_array "${CFLAGS} '-DG9DLL=${g9dll}'")!" \ -e "s!@LDFLAGS@!$(_meson_env_array "${LDFLAGS}")!" \ ${file}.in > ${file} || die } |