games-emulation/pcsx2: ebuild enhancements.
authorYuri Konotopov <ykonotopov@gnome.org>
Tue, 27 Aug 2019 11:03:52 +0000 (15:03 +0400)
committerJoonas Niilola <juippis@gentoo.org>
Wed, 28 Aug 2019 15:54:05 +0000 (18:54 +0300)
Closes: https://bugs.gentoo.org/692208

Signed-off-by: Yuri Konotopov <ykonotopov@gnome.org>
Closes: https://github.com/gentoo/gentoo/pull/12798
Signed-off-by: Joonas Niilola <juippis@gentoo.org>
games-emulation/pcsx2/pcsx2-1.4.0-r2.ebuild [new file with mode: 0644]
games-emulation/pcsx2/pcsx2-9999.ebuild

diff --git a/games-emulation/pcsx2/pcsx2-1.4.0-r2.ebuild b/games-emulation/pcsx2/pcsx2-1.4.0-r2.ebuild
new file mode 100644 (file)
index 0000000..d31cad3
--- /dev/null
@@ -0,0 +1,87 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+MY_PV="${PV/_/-}"
+
+inherit cmake-utils multilib wxwidgets
+
+DESCRIPTION="A PlayStation 2 emulator"
+HOMEPAGE="https://www.pcsx2.net"
+SRC_URI="https://github.com/PCSX2/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+
+RDEPEND="
+       app-arch/bzip2[abi_x86_32(-)]
+       app-arch/xz-utils[abi_x86_32(-)]
+       dev-libs/libaio[abi_x86_32(-)]
+       media-libs/alsa-lib[abi_x86_32(-)]
+       media-libs/libpng:=[abi_x86_32(-)]
+       media-libs/libsdl[abi_x86_32(-),joystick,sound]
+       media-libs/libsoundtouch[abi_x86_32(-)]
+       media-libs/portaudio[abi_x86_32(-)]
+       sys-libs/zlib[abi_x86_32(-)]
+       virtual/opengl[abi_x86_32(-)]
+       x11-libs/gtk+:2[abi_x86_32(-)]
+       x11-libs/libICE[abi_x86_32(-)]
+       x11-libs/libX11[abi_x86_32(-)]
+       x11-libs/libXext[abi_x86_32(-)]
+       x11-libs/wxGTK:3.0[abi_x86_32(-),X]
+"
+DEPEND="${RDEPEND}
+       dev-cpp/pngpp
+       dev-cpp/sparsehash
+"
+
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+PATCHES=(
+       "${FILESDIR}"/${P}-gcc5.patch
+       "${FILESDIR}"/${P}-xgetbv.patch
+)
+
+src_configure() {
+       multilib_toolchain_setup x86
+
+       # pcsx2 build scripts will force CMAKE_BUILD_TYPE=Devel
+       # if it something other than "Devel|Debug|Release"
+       local CMAKE_BUILD_TYPE="Release"
+
+       if use amd64; then
+               # Passing correct CMAKE_TOOLCHAIN_FILE for amd64
+               # https://github.com/PCSX2/pcsx2/pull/422
+               local MYCMAKEARGS=(-DCMAKE_TOOLCHAIN_FILE=cmake/linux-compiler-i386-multilib.cmake)
+       fi
+
+       local mycmakeargs=(
+               -DARCH_FLAG=
+               -DDISABLE_BUILD_DATE=TRUE
+               -DDISABLE_PCSX2_WRAPPER=TRUE
+               -DEXTRA_PLUGINS=FALSE
+               -DOPTIMIZATION_FLAG=
+               -DPACKAGE_MODE=TRUE
+               -DXDG_STD=TRUE
+
+               -DCMAKE_INSTALL_PREFIX=/usr
+               -DCMAKE_LIBRARY_PATH="/usr/$(get_libdir)/${PN}"
+               -DDOC_DIR=/usr/share/doc/"${PF}"
+               -DEGL_API=FALSE
+               -DGTK3_API=FALSE
+               -DPLUGIN_DIR="/usr/$(get_libdir)/${PN}"
+               # wxGTK must be built against same sdl version
+               -DSDL2_API=FALSE
+               -DWX28_API=FALSE
+       )
+
+       WX_GTK_VER="3.0" setup-wxwidgets
+       cmake-utils_src_configure
+}
+
+src_install() {
+       # Upstream issue: https://github.com/PCSX2/pcsx2/issues/417
+       QA_TEXTRELS="usr/$(get_libdir)/pcsx2/* usr/bin/PCSX2"
+       cmake-utils_src_install
+}
index f79952eccb67709d689b9d423169421f32f6f1c8..9e646daf585304da1dfdbcc4e91350ca90e04a29 100644 (file)
@@ -1,7 +1,7 @@
 # Copyright 1999-2019 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=6
+EAPI=7
 
 inherit cmake-utils git-r3 multilib toolchain-funcs wxwidgets
 
@@ -25,20 +25,19 @@ RDEPEND="
        media-libs/libsoundtouch[abi_x86_32(-)]
        media-libs/portaudio[abi_x86_32(-)]
        net-libs/libpcap[abi_x86_32(-)]
-       >=sys-libs/zlib-1.2.4[abi_x86_32(-)]
+       sys-libs/zlib[abi_x86_32(-)]
        virtual/libudev[abi_x86_32(-)]
        virtual/opengl[abi_x86_32(-)]
        x11-libs/gtk+:2[abi_x86_32(-)]
        x11-libs/libICE[abi_x86_32(-)]
        x11-libs/libX11[abi_x86_32(-)]
        x11-libs/libXext[abi_x86_32(-)]
-       x11-libs/wxGTK:3.0[abi_x86_32(-),-sdl,X]
+       x11-libs/wxGTK:3.0-gtk3[abi_x86_32(-),-sdl,X]
 "
 # Ensure no incompatible headers from eselect-opengl are installed, bug #510730
 DEPEND="${RDEPEND}
-       >=app-eselect/eselect-opengl-1.3.1
        dev-cpp/pngpp
-       >=dev-cpp/sparsehash-1.5
+       dev-cpp/sparsehash
 "
 
 pkg_setup() {
@@ -77,20 +76,21 @@ src_configure() {
                -DCMAKE_LIBRARY_PATH="/usr/$(get_libdir)/${PN}"
                -DDOC_DIR=/usr/share/doc/"${PF}"
                -DEGL_API=FALSE
-               -DGTK3_API=FALSE
+               -DGTK3_API=TRUE
                -DPLUGIN_DIR="/usr/$(get_libdir)/${PN}"
                # wxGTK must be built against same sdl version
                -DSDL2_API=TRUE
-               -DWX28_API=FALSE
        )
 
-       WX_GTK_VER="3.0" need-wxwidgets unicode
+       WX_GTK_VER="3.0-gtk3" setup-wxwidgets
        cmake-utils_src_configure
 }
 
 src_install() {
-       # Upstream issue: https://github.com/PCSX2/pcsx2/issues/417
-       QA_TEXTRELS="usr/$(get_libdir)/pcsx2/*"
-
+       # Upstream issues:
+       #  https://github.com/PCSX2/pcsx2/issues/417
+       #  https://github.com/PCSX2/pcsx2/issues/3077
+       QA_EXECSTACK="usr/bin/PCSX2"
+       QA_TEXTRELS="usr/$(get_libdir)/pcsx2/* usr/bin/PCSX2"
        cmake-utils_src_install
 }