From 17cfc21d2b5e5ebd17a2134d7ede182fc43b2631 Mon Sep 17 00:00:00 2001 From: Yuri Konotopov Date: Thu, 13 Aug 2015 19:34:44 +0300 Subject: games-emulation/pcsx2: new package Fixes: https://bugs.gentoo.org/show_bug.cgi?id=141626 Fixes: https://bugs.gentoo.org/show_bug.cgi?id=510710 --- games-emulation/pcsx2/Manifest | 1 + .../pcsx2/files/pcsx2-1.3.1-cflags.patch | 776 +++++++++++++++++++++ .../pcsx2/files/pcsx2-1.3.1-egl-optional.patch | 169 +++++ .../pcsx2/files/pcsx2-1.3.1-packaging.patch | 148 ++++ games-emulation/pcsx2/metadata.xml | 13 + games-emulation/pcsx2/pcsx2-1.3.1.ebuild | 106 +++ games-emulation/pcsx2/pcsx2-9999.ebuild | 106 +++ 7 files changed, 1319 insertions(+) create mode 100644 games-emulation/pcsx2/Manifest create mode 100644 games-emulation/pcsx2/files/pcsx2-1.3.1-cflags.patch create mode 100644 games-emulation/pcsx2/files/pcsx2-1.3.1-egl-optional.patch create mode 100644 games-emulation/pcsx2/files/pcsx2-1.3.1-packaging.patch create mode 100644 games-emulation/pcsx2/metadata.xml create mode 100644 games-emulation/pcsx2/pcsx2-1.3.1.ebuild create mode 100644 games-emulation/pcsx2/pcsx2-9999.ebuild (limited to 'games-emulation') diff --git a/games-emulation/pcsx2/Manifest b/games-emulation/pcsx2/Manifest new file mode 100644 index 000000000000..21e18f3514d0 --- /dev/null +++ b/games-emulation/pcsx2/Manifest @@ -0,0 +1 @@ +DIST pcsx2-1.3.1.tar.gz 20719203 SHA256 60ba9f7f85bf4337ca6962f9b437d549f16fc04ea0b6b261d7521e0416c2b8c9 SHA512 d09364841d8122abc33619b66c6a5bfac7c3979442a257fe6967e516289b6584546e5b512ab8987c04563beb68a587bd44ddc4fac122633598fe89447c4025c3 WHIRLPOOL ec97823c0642a5fa2e0829465b864c09c4596d0c8eebc477b4db463ff6a3af6493480fbce5586b0e085e7d96b6d2837a087f7ceea77b45ed5a2ddefa683c99ba diff --git a/games-emulation/pcsx2/files/pcsx2-1.3.1-cflags.patch b/games-emulation/pcsx2/files/pcsx2-1.3.1-cflags.patch new file mode 100644 index 000000000000..f041be5fa15a --- /dev/null +++ b/games-emulation/pcsx2/files/pcsx2-1.3.1-cflags.patch @@ -0,0 +1,776 @@ +From 683b871c320ec14b777ec3937dc609b69b3cf5a5 Mon Sep 17 00:00:00 2001 +From: nE0sIghT +Date: Sat, 8 Aug 2015 19:12:37 +0300 +Subject: [PATCH 3/3] Use global compiler optimization flags instead of + defining them for every plugin/binary + +--- + cmake/BuildParameters.cmake | 35 ++++++++++------- + common/src/Utilities/CMakeLists.txt | 45 +--------------------- + common/src/x86emitter/CMakeLists.txt | 45 +--------------------- + pcsx2/CMakeLists.txt | 45 +--------------------- + plugins/CDVDiso/src/CMakeLists.txt | 16 +------- + plugins/CDVDlinuz/Src/CMakeLists.txt | 21 +--------- + plugins/CDVDnull/CMakeLists.txt | 16 +------- + plugins/FWnull/CMakeLists.txt | 16 +------- + plugins/GSdx/CMakeLists.txt | 9 +---- + plugins/GSnull/CMakeLists.txt | 16 +------- + plugins/PadNull/CMakeLists.txt | 16 +------- + plugins/SPU2null/CMakeLists.txt | 16 +------- + plugins/USBnull/CMakeLists.txt | 16 +------- + plugins/dev9null/CMakeLists.txt | 16 +------- + plugins/onepad/CMakeLists.txt | 16 +------- + plugins/spu2-x/src/CMakeLists.txt | 16 +------- + plugins/zerogs/opengl/CMakeLists.txt | 8 +--- + plugins/zerospu2/CMakeLists.txt | 16 +------- + plugins/zzogl-pg/opengl/CMakeLists.txt | 8 +--- + .../zzogl-pg/opengl/ZeroGSShaders/CMakeLists.txt | 8 +--- + tools/bin2cpp/CMakeLists.txt | 6 +-- + 21 files changed, 51 insertions(+), 355 deletions(-) + +diff --git a/cmake/BuildParameters.cmake b/cmake/BuildParameters.cmake +index 48b167c..82e4ded 100644 +--- a/cmake/BuildParameters.cmake ++++ b/cmake/BuildParameters.cmake +@@ -117,14 +117,17 @@ if(${PCSX2_TARGET_ARCHITECTURES} MATCHES "i386") + # - Only plugins. No package will link to them. + set(CMAKE_POSITION_INDEPENDENT_CODE OFF) + +- if (DISABLE_ADVANCE_SIMD) +- set(ARCH_FLAG "-msse -msse2 -march=i686") +- else() +- # AVX requires some fix of the ABI (mangling) (default 2) +- # Note: V6 requires GCC 4.7 +- #set(ARCH_FLAG "-march=native -fabi-version=6") +- set(ARCH_FLAG "-march=native") ++ if(NOT DEFINED ARCH_FLAG) ++ if (DISABLE_ADVANCE_SIMD) ++ set(ARCH_FLAG "-msse -msse2 -march=i686") ++ else() ++ # AVX requires some fix of the ABI (mangling) (default 2) ++ # Note: V6 requires GCC 4.7 ++ #set(ARCH_FLAG "-march=native -fabi-version=6") ++ set(ARCH_FLAG "-march=native") ++ endif() + endif() ++ + add_definitions(-D_ARCH_32=1 -D_M_X86=1 -D_M_X86_32=1) + set(_ARCH_32 1) + set(_M_X86 1) +@@ -136,11 +139,13 @@ elseif(${PCSX2_TARGET_ARCHITECTURES} MATCHES "x86_64") + # SuperVU will not be ported + set(DISABLE_SVU TRUE) + +- if (DISABLE_ADVANCE_SIMD) +- set(ARCH_FLAG "-msse -msse2") +- else() +- #set(ARCH_FLAG "-march=native -fabi-version=6") +- set(ARCH_FLAG "-march=native") ++ if(NOT DEFINED ARCH_FLAG) ++ if (DISABLE_ADVANCE_SIMD) ++ set(ARCH_FLAG "-msse -msse2") ++ else() ++ #set(ARCH_FLAG "-march=native -fabi-version=6") ++ set(ARCH_FLAG "-march=native") ++ endif() + endif() + add_definitions(-D_ARCH_64=1 -D_M_X86=1 -D_M_X86_64=1) + set(_ARCH_64 1) +@@ -256,8 +261,12 @@ else() + set(ASAN_FLAG "") + endif() + ++if(NOT DEFINED OPTIMIZATION_FLAG) ++ set(OPTIMIZATION_FLAG -O2) ++endif() ++ + # Note: -DGTK_DISABLE_DEPRECATED can be used to test a build without gtk deprecated feature. It could be useful to port to a newer API +-set(DEFAULT_GCC_FLAG "${ARCH_FLAG} ${COMMON_FLAG} ${DEFAULT_WARNINGS} ${AGGRESSIVE_WARNING} ${HARDENING_FLAG} ${DEBUG_FLAG} ${ASAN_FLAG}") ++set(DEFAULT_GCC_FLAG "${ARCH_FLAG} ${COMMON_FLAG} ${DEFAULT_WARNINGS} ${AGGRESSIVE_WARNING} ${HARDENING_FLAG} ${DEBUG_FLAG} ${ASAN_FLAG} ${OPTIMIZATION_FLAG}") + # c++ only flags + set(DEFAULT_CPP_FLAG "${DEFAULT_GCC_FLAG} -Wno-invalid-offsetof") + +diff --git a/common/src/Utilities/CMakeLists.txt b/common/src/Utilities/CMakeLists.txt +index 8f97604..f4b6e27 100644 +--- a/common/src/Utilities/CMakeLists.txt ++++ b/common/src/Utilities/CMakeLists.txt +@@ -14,47 +14,6 @@ set(CommonFlags + -fno-strict-aliasing + ) + +-# set optimization flags +-set(OptimizationFlags +- -falign-functions +- -falign-jumps +- -falign-labels +- -falign-loops +- -fcaller-saves +- -fcprop-registers +- -fcrossjumping +- -fcse-follow-jumps +- -fcse-skip-blocks +- -fdefer-pop +- -fdelete-null-pointer-checks +- -fgcse +- -fgcse-lm +- -fif-conversion +- -fif-conversion2 +- -fmerge-constants +- -foptimize-sibling-calls +- -fpeephole2 +- -fregmove +- -freorder-blocks +- -freorder-functions +- -frerun-cse-after-loop +- -fsched-interblock +- -fsched-spec +- -fstrict-overflow +- -fthread-jumps +- -ftree-ccp +- -ftree-ch +- -ftree-copyrename +- -ftree-dce +- -ftree-dominator-opts +- -ftree-fre +- -ftree-lrs +- -ftree-pre +- -ftree-sra +- -ftree-ter +- -ftree-vrp +- -funit-at-a-time) +- + #Clang doesn't support a few common flags that GCC does. + if(NOT USE_CLANG) + set(UtilitiesFinalFlags +@@ -79,7 +38,7 @@ if(CMAKE_BUILD_TYPE STREQUAL Devel) + # add defines + set(UtilitiesFinalFlags + ${UtilitiesFinalFlags} +- ${CommonFlags} ${OptimizationFlags} -DPCSX2_DEVBUILD ++ ${CommonFlags} -DPCSX2_DEVBUILD + ) + endif(CMAKE_BUILD_TYPE STREQUAL Devel) + +@@ -89,7 +48,7 @@ if(CMAKE_BUILD_TYPE STREQUAL Release) + # add defines + set(UtilitiesFinalFlags + ${UtilitiesFinalFlags} +- ${CommonFlags} ${OptimizationFlags} ++ ${CommonFlags} + ) + endif(CMAKE_BUILD_TYPE STREQUAL Release) + +diff --git a/common/src/x86emitter/CMakeLists.txt b/common/src/x86emitter/CMakeLists.txt +index b37e22a..a8217fc 100644 +--- a/common/src/x86emitter/CMakeLists.txt ++++ b/common/src/x86emitter/CMakeLists.txt +@@ -14,47 +14,6 @@ set(CommonFlags + -fno-strict-aliasing + ) + +-# set optimization flags +-set(OptimizationFlags +- -falign-functions +- -falign-jumps +- -falign-labels +- -falign-loops +- -fcaller-saves +- -fcprop-registers +- -fcrossjumping +- -fcse-follow-jumps +- -fcse-skip-blocks +- -fdefer-pop +- -fdelete-null-pointer-checks +- -fgcse +- -fgcse-lm +- -fif-conversion +- -fif-conversion2 +- -fmerge-constants +- -foptimize-sibling-calls +- -fpeephole2 +- -fregmove +- -freorder-blocks +- -freorder-functions +- -frerun-cse-after-loop +- -fsched-interblock +- -fsched-spec +- -fstrict-overflow +- -fthread-jumps +- -ftree-ccp +- -ftree-ch +- -ftree-copyrename +- -ftree-dce +- -ftree-dominator-opts +- -ftree-fre +- -ftree-lrs +- -ftree-pre +- -ftree-sra +- -ftree-ter +- -ftree-vrp +- -funit-at-a-time) +- + #Clang doesn't support a few common flags that GCC does. + if(NOT USE_CLANG) + set(x86emitterFinalFlags +@@ -77,7 +36,7 @@ if(CMAKE_BUILD_TYPE STREQUAL Devel) + # add defines + set(x86emitterFinalFlags + ${x86emitterFinalFlags} +- ${CommonFlags} ${OptimizationFlags} -DPCSX2_DEVBUILD ++ ${CommonFlags} -DPCSX2_DEVBUILD + ) + endif(CMAKE_BUILD_TYPE STREQUAL Devel) + +@@ -87,7 +46,7 @@ if(CMAKE_BUILD_TYPE STREQUAL Release) + # add defines + set(x86emitterFinalFlags + ${x86emitterFinalFlags} +- ${CommonFlags} ${OptimizationFlags} ++ ${CommonFlags} + ) + endif(CMAKE_BUILD_TYPE STREQUAL Release) + +diff --git a/pcsx2/CMakeLists.txt b/pcsx2/CMakeLists.txt +index 871713e..a98843d 100644 +--- a/pcsx2/CMakeLists.txt ++++ b/pcsx2/CMakeLists.txt +@@ -27,47 +27,6 @@ set(CommonFlags + -DWX_PRECOMP + ) + +-# set optimization flags +-set(OptimizationFlags +- -falign-functions +- -falign-jumps +- -falign-labels +- -falign-loops +- -fcaller-saves +- -fcprop-registers +- -fcrossjumping +- -fcse-follow-jumps +- -fcse-skip-blocks +- -fdefer-pop +- -fdelete-null-pointer-checks +- -fgcse +- -fgcse-lm +- -fif-conversion +- -fif-conversion2 +- -fmerge-constants +- -foptimize-sibling-calls +- -fpeephole2 +- -fregmove +- -freorder-blocks +- -freorder-functions +- -frerun-cse-after-loop +- -fsched-interblock +- -fsched-spec +- -fstrict-overflow +- -fthread-jumps +- -ftree-ccp +- -ftree-ch +- -ftree-copyrename +- -ftree-dce +- -ftree-dominator-opts +- -ftree-fre +- -ftree-lrs +- -ftree-pre +- -ftree-sra +- -ftree-ter +- -ftree-vrp +- -funit-at-a-time) +- + #Clang doesn't support a few common flags that GCC does. + if(NOT USE_CLANG) + set(pcsx2FinalFlags ${CommonFlags} -fno-guess-branch-probability -fno-dse -fno-tree-dse) +@@ -80,11 +39,11 @@ if(CMAKE_BUILD_TYPE STREQUAL Debug) + + elseif(CMAKE_BUILD_TYPE STREQUAL Devel) + set(Output pcsx2-dev) +- set(pcsx2FinalFlags ${pcsx2FinalFlags} ${CommonFlags} ${OptimizationFlags} -DPCSX2_DEVBUILD) ++ set(pcsx2FinalFlags ${pcsx2FinalFlags} ${CommonFlags} -DPCSX2_DEVBUILD) + + elseif(CMAKE_BUILD_TYPE STREQUAL Release) + set(Output pcsx2) +- set(pcsx2FinalFlags ${pcsx2FinalFlags} ${CommonFlags} ${OptimizationFlags}) ++ set(pcsx2FinalFlags ${pcsx2FinalFlags} ${CommonFlags}) + + endif() + +diff --git a/plugins/CDVDiso/src/CMakeLists.txt b/plugins/CDVDiso/src/CMakeLists.txt +index 519c92a..97cb832 100644 +--- a/plugins/CDVDiso/src/CMakeLists.txt ++++ b/plugins/CDVDiso/src/CMakeLists.txt +@@ -8,21 +8,7 @@ endif() + + # plugin name + set(Output CDVDiso) +- +-set(OptimizationFlags +- -O2 +- ) +- +-if(CMAKE_BUILD_TYPE STREQUAL Debug) +- set(CDVDisoFinalFlags "") +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Devel) +- set(CDVDisoFinalFlags ${OptimizationFlags}) +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Release) +- set(CDVDisoFinalFlags ${OptimizationFlags}) +- +-endif() ++set(CDVDisoFinalFlags "") + + # CDVDiso sources + set(CDVDisoSources +diff --git a/plugins/CDVDlinuz/Src/CMakeLists.txt b/plugins/CDVDlinuz/Src/CMakeLists.txt +index 943780f..f02198d 100644 +--- a/plugins/CDVDlinuz/Src/CMakeLists.txt ++++ b/plugins/CDVDlinuz/Src/CMakeLists.txt +@@ -2,26 +2,7 @@ + + # plugin name + set(Output CDVDlinuz) +- +-set(CommonFlags +- -D_LARGEFILE64_SOURCE +- ) +- +-set(OptimizationFlags +- -O2 +- -fomit-frame-pointer +- ) +- +-if(CMAKE_BUILD_TYPE STREQUAL Debug) +- set(CDVDlinuzFinalFlags ${CommonFlags}) +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Devel) +- set(CDVDlinuzFinalFlags ${CommonFlags} ${OptimizationFlags}) +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Release) +- set(CDVDlinuzFinalFlags ${CommonFlags} ${OptimizationFlags}) +- +-endif() ++set(CDVDlinuzFinalFlags -D_LARGEFILE64_SOURCE) + + # CDVDlinuz sources + set(CDVDlinuzSources +diff --git a/plugins/CDVDnull/CMakeLists.txt b/plugins/CDVDnull/CMakeLists.txt +index 4fde2f7..5c84959 100644 +--- a/plugins/CDVDnull/CMakeLists.txt ++++ b/plugins/CDVDnull/CMakeLists.txt +@@ -8,21 +8,7 @@ endif() + + # plugin name + set(Output CDVDnull) +- +-set(OptimizationFlags +- -O2 +- ) +- +-if(CMAKE_BUILD_TYPE STREQUAL Debug) +- set(CDVDnullFinalFlags "") +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Devel) +- set(CDVDnullFinalFlags ${OptimizationFlags}) +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Release) +- set(CDVDnullFinalFlags ${OptimizationFlags}) +- +-endif() ++set(CDVDnullFinalFlags "") + + # CDVDnull sources + set(CDVDnullSources +diff --git a/plugins/FWnull/CMakeLists.txt b/plugins/FWnull/CMakeLists.txt +index fd5a45e..aaf9e4e 100644 +--- a/plugins/FWnull/CMakeLists.txt ++++ b/plugins/FWnull/CMakeLists.txt +@@ -8,21 +8,7 @@ endif() + + # plugin name + set(Output FWnull-0.7.0) +- +-set(OptimizationFlags +- -O2 +- ) +- +-if(CMAKE_BUILD_TYPE STREQUAL Debug) +- set(FWnullFinalFlags "") +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Devel) +- set(FWnullFinalFlags ${OptimizationFlags}) +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Release) +- set(FWnullFinalFlags ${OptimizationFlags}) +- +-endif() ++set(FWnullFinalFlags "") + + # FWnull sources + set(FWnullSources +diff --git a/plugins/GSdx/CMakeLists.txt b/plugins/GSdx/CMakeLists.txt +index 13b30c7..6fd6253 100644 +--- a/plugins/GSdx/CMakeLists.txt ++++ b/plugins/GSdx/CMakeLists.txt +@@ -18,19 +18,14 @@ set(CommonFlags + -Wunused-variable # __dummy variable need to be investigated + ) + +-set(OptimizationFlags +- -O2 +- ) +- +- + if(CMAKE_BUILD_TYPE STREQUAL Debug) + set(GSdxFinalFlags ${GSdxFinalFlags} ${CommonFlags} -D_DEBUG) + + elseif(CMAKE_BUILD_TYPE STREQUAL Devel) +- set(GSdxFinalFlags ${GSdxFinalFlags} ${CommonFlags} ${OptimizationFlags} -D_DEVEL) ++ set(GSdxFinalFlags ${GSdxFinalFlags} ${CommonFlags} -D_DEVEL) + + elseif(CMAKE_BUILD_TYPE STREQUAL Release) +- set(GSdxFinalFlags ${GSdxFinalFlags} ${CommonFlags} ${OptimizationFlags} -W) ++ set(GSdxFinalFlags ${GSdxFinalFlags} ${CommonFlags} -W) + + endif() + +diff --git a/plugins/GSnull/CMakeLists.txt b/plugins/GSnull/CMakeLists.txt +index 2216e17..3bde988 100644 +--- a/plugins/GSnull/CMakeLists.txt ++++ b/plugins/GSnull/CMakeLists.txt +@@ -8,21 +8,7 @@ endif() + + # plugin name + set(Output GSnull) +- +-set(OptimizationFlags +- -O2 +- ) +- +-if(CMAKE_BUILD_TYPE STREQUAL Debug) +- set(GSnullFinalFlags "") +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Devel) +- set(GSnullFinalFlags ${OptimizationFlags}) +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Release) +- set(GSnullFinalFlags ${OptimizationFlags}) +- +-endif() ++set(GSnullFinalFlags "") + + # GSnull sources + set(GSnullSources +diff --git a/plugins/PadNull/CMakeLists.txt b/plugins/PadNull/CMakeLists.txt +index acbe758..18b1b6c 100644 +--- a/plugins/PadNull/CMakeLists.txt ++++ b/plugins/PadNull/CMakeLists.txt +@@ -7,21 +7,7 @@ endif() + + # plugin name + set(Output PADnull) +- +-set(OptimizationFlags +- -O2 +- ) +- +-if(CMAKE_BUILD_TYPE STREQUAL Debug) +- set(PadNullFinalFlags "") +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Devel) +- set(PadNullFinalFlags ${OptimizationFlags}) +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Release) +- set(PadNullFinalFlags ${OptimizationFlags}) +- +-endif() ++set(PadNullFinalFlags "") + + # PadNull sources + set(PadNullSources +diff --git a/plugins/SPU2null/CMakeLists.txt b/plugins/SPU2null/CMakeLists.txt +index 5409543..620a521 100644 +--- a/plugins/SPU2null/CMakeLists.txt ++++ b/plugins/SPU2null/CMakeLists.txt +@@ -8,21 +8,7 @@ endif() + + # plugin name + set(Output SPU2null) +- +-set(OptimizationFlags +- -O2 +- ) +- +-if(CMAKE_BUILD_TYPE STREQUAL Debug) +- set(SPU2nullFinalFlags "") +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Devel) +- set(SPU2nullFinalFlags ${OptimizationFlags}) +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Release) +- set(SPU2nullFinalFlags ${OptimizationFlags}) +- +-endif() ++set(SPU2nullFinalFlags "") + + # SPU2null sources + set(SPU2nullSources +diff --git a/plugins/USBnull/CMakeLists.txt b/plugins/USBnull/CMakeLists.txt +index c84890e..7892d03 100644 +--- a/plugins/USBnull/CMakeLists.txt ++++ b/plugins/USBnull/CMakeLists.txt +@@ -8,21 +8,7 @@ endif() + + # plugin name + set(Output USBnull-0.7.0) +- +-set(OptimizationFlags +- -O2 +- ) +- +-if(CMAKE_BUILD_TYPE STREQUAL Debug) +- set(USBnullFinalFlags "") +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Devel) +- set(USBnullFinalFlags ${OptimizationFlags}) +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Release) +- set(USBnullFinalFlags ${OptimizationFlags}) +- +-endif() ++set(USBnullFinalFlags "") + + # USBnull sources + set(USBnullSources +diff --git a/plugins/dev9null/CMakeLists.txt b/plugins/dev9null/CMakeLists.txt +index 09d8bee..b819985 100644 +--- a/plugins/dev9null/CMakeLists.txt ++++ b/plugins/dev9null/CMakeLists.txt +@@ -8,21 +8,7 @@ endif() + + # plugin name + set(Output dev9null-0.5.0) +- +-set(OptimizationFlags +- -O2 +- ) +- +-if(CMAKE_BUILD_TYPE STREQUAL Debug) +- set(dev9nullFinalFlags "") +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Devel) +- set(dev9nullFinalFlags ${OptimizationFlags}) +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Release) +- set(dev9nullFinalFlags ${OptimizationFlags}) +- +-endif() ++set(dev9nullFinalFlags "") + + # dev9null sources + set(dev9nullSources +diff --git a/plugins/onepad/CMakeLists.txt b/plugins/onepad/CMakeLists.txt +index 6a12cd7..68ffb82 100644 +--- a/plugins/onepad/CMakeLists.txt ++++ b/plugins/onepad/CMakeLists.txt +@@ -8,21 +8,7 @@ endif() + + # plugin name + set(Output onepad-1.1.0) +- +-set(OptimizationFlags +- -O2 +- ) +- +-if(CMAKE_BUILD_TYPE STREQUAL Debug) +- set(onepadFinalFlags "") +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Devel) +- set(onepadFinalFlags ${OptimizationFlags}) +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Release) +- set(onepadFinalFlags ${OptimizationFlags}) +- +-endif() ++set(onepadFinalFlags "") + + # onepad sources + set(onepadSources +diff --git a/plugins/spu2-x/src/CMakeLists.txt b/plugins/spu2-x/src/CMakeLists.txt +index 720c4ac..0180704 100644 +--- a/plugins/spu2-x/src/CMakeLists.txt ++++ b/plugins/spu2-x/src/CMakeLists.txt +@@ -14,21 +14,7 @@ endif() + + # plugin name + set(Output spu2x-2.0.0) +- +-set(OptimizationFlags +- -O2 +- ) +- +-if(CMAKE_BUILD_TYPE STREQUAL Debug) +- set(spu2xFinalFlags "") +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Devel) +- set(spu2xFinalFlags ${OptimizationFlags}) +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Release) +- set(spu2xFinalFlags ${OptimizationFlags}) +- +-endif() ++set(spu2xFinalFlags "") + + # spu2x sources + set(spu2xSources +diff --git a/plugins/zerogs/opengl/CMakeLists.txt b/plugins/zerogs/opengl/CMakeLists.txt +index fd33949..79716c6 100644 +--- a/plugins/zerogs/opengl/CMakeLists.txt ++++ b/plugins/zerogs/opengl/CMakeLists.txt +@@ -7,10 +7,6 @@ set(CommonFlags + -Wall + ) + +-set(OptimizationFlags +- -O2 +- ) +- + # Debug - Build + if(CMAKE_BUILD_TYPE STREQUAL Debug) + # add defines +@@ -20,13 +16,13 @@ endif(CMAKE_BUILD_TYPE STREQUAL Debug) + # Devel - Build + if(CMAKE_BUILD_TYPE STREQUAL Devel) + # add defines +- add_definitions(${CommonFlags} ${OptimizationFlags}) ++ add_definitions(${CommonFlags}) + endif(CMAKE_BUILD_TYPE STREQUAL Devel) + + # Release - Build + if(CMAKE_BUILD_TYPE STREQUAL Release) + # add defines +- add_definitions(${CommonFlags} ${OptimizationFlags}) ++ add_definitions(${CommonFlags}) + endif(CMAKE_BUILD_TYPE STREQUAL Release) + + # zerogs sources +diff --git a/plugins/zerospu2/CMakeLists.txt b/plugins/zerospu2/CMakeLists.txt +index c3e3243..9291706 100644 +--- a/plugins/zerospu2/CMakeLists.txt ++++ b/plugins/zerospu2/CMakeLists.txt +@@ -8,21 +8,7 @@ endif() + + # plugin name + set(Output zerospu2) +- +-set(OptimizationFlags +- -O2 +- ) +- +-if(CMAKE_BUILD_TYPE STREQUAL Debug) +- set(zerospu2FinalFlags "") +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Devel) +- set(zerospu2FinalFlags ${OptimizationFlags}) +- +-elseif(CMAKE_BUILD_TYPE STREQUAL Release) +- set(zerospu2FinalFlags ${OptimizationFlags}) +- +-endif(CMAKE_BUILD_TYPE STREQUAL Release) ++set(zerospu2FinalFlags "") + + # zerospu2 sources + set(zerospu2Sources +diff --git a/plugins/zzogl-pg/opengl/CMakeLists.txt b/plugins/zzogl-pg/opengl/CMakeLists.txt +index fe93246..4798097 100644 +--- a/plugins/zzogl-pg/opengl/CMakeLists.txt ++++ b/plugins/zzogl-pg/opengl/CMakeLists.txt +@@ -26,10 +26,6 @@ set(CommonFlags + -Wunused-variable + ) + +-set(OptimizationFlags +- -O2 +- ) +- + #Clang doesn't support a few common flags that GCC does. + if(NOT USE_CLANG) + set(zzoglFinalFlags +@@ -46,12 +42,12 @@ if(CMAKE_BUILD_TYPE STREQUAL Debug) + elseif(CMAKE_BUILD_TYPE STREQUAL Devel) + set(zzoglFinalFlags + ${zzoglFinalFlags} +- ${CommonFlags} ${OptimizationFlags} -g -W -DZEROGS_DEVBUILD ++ ${CommonFlags} -g -W -DZEROGS_DEVBUILD + ) + elseif(CMAKE_BUILD_TYPE STREQUAL Release) + set(zzoglFinalFlags + ${zzoglFinalFlags} +- ${CommonFlags} ${OptimizationFlags} -W ++ ${CommonFlags} -W + ) + endif() + +diff --git a/plugins/zzogl-pg/opengl/ZeroGSShaders/CMakeLists.txt b/plugins/zzogl-pg/opengl/ZeroGSShaders/CMakeLists.txt +index 156189c..ad1eb49 100644 +--- a/plugins/zzogl-pg/opengl/ZeroGSShaders/CMakeLists.txt ++++ b/plugins/zzogl-pg/opengl/ZeroGSShaders/CMakeLists.txt +@@ -17,21 +17,17 @@ set(CommonFlags + -DNVIDIA_CG_API + ) + +-set(OptimizationFlags +- -O2 +- ) +- + if(CMAKE_BUILD_TYPE STREQUAL Debug) + set(zerogsshadersFinalFlags + ${CommonFlags} -D_DEBUG + ) + elseif(CMAKE_BUILD_TYPE STREQUAL Devel) + set(zerogsshadersFinalFlags +- ${CommonFlags} ${OptimizationFlags} -g -W -DZEROGS_DEVBUILD ++ ${CommonFlags} -g -W -DZEROGS_DEVBUILD + ) + elseif(CMAKE_BUILD_TYPE STREQUAL Release) + set(zerogsshadersFinalFlags +- ${CommonFlags} ${OptimizationFlags} -W ++ ${CommonFlags} -W + ) + endif(CMAKE_BUILD_TYPE STREQUAL Release) + +diff --git a/tools/bin2cpp/CMakeLists.txt b/tools/bin2cpp/CMakeLists.txt +index 1689620..1e3e45c 100644 +--- a/tools/bin2cpp/CMakeLists.txt ++++ b/tools/bin2cpp/CMakeLists.txt +@@ -7,7 +7,7 @@ set(bin2cppName bin2cpp) + if(CMAKE_BUILD_TYPE STREQUAL Debug) + # add defines + set(bin2cppFinalFlags +- -O2 -s -Wall -fexceptions ++ -s -Wall -fexceptions + ) + endif(CMAKE_BUILD_TYPE STREQUAL Debug) + +@@ -15,7 +15,7 @@ endif(CMAKE_BUILD_TYPE STREQUAL Debug) + if(CMAKE_BUILD_TYPE STREQUAL Devel) + # add defines + set(bin2cppFinalFlags +- -O2 -s -Wall -fexceptions ++ -s -Wall -fexceptions + ) + endif(CMAKE_BUILD_TYPE STREQUAL Devel) + +@@ -23,7 +23,7 @@ endif(CMAKE_BUILD_TYPE STREQUAL Devel) + if(CMAKE_BUILD_TYPE STREQUAL Release) + # add defines + set(bin2cppFinalFlags +- -O2 -s -Wall -fexceptions ++ -s -Wall -fexceptions + ) + endif(CMAKE_BUILD_TYPE STREQUAL Release) + +-- +2.4.6 + diff --git a/games-emulation/pcsx2/files/pcsx2-1.3.1-egl-optional.patch b/games-emulation/pcsx2/files/pcsx2-1.3.1-egl-optional.patch new file mode 100644 index 000000000000..9bdf231c3f0b --- /dev/null +++ b/games-emulation/pcsx2/files/pcsx2-1.3.1-egl-optional.patch @@ -0,0 +1,169 @@ +From 9cd13ca5b5a6a90c21abf1f41725e52efe4774c0 Mon Sep 17 00:00:00 2001 +From: nE0sIghT +Date: Mon, 10 Aug 2015 19:11:00 +0300 +Subject: [PATCH 1/3] gsdx-linux: Don't enable EGL by default + +I was hoping that EGL become a standard much more faster. Currently it is an useless dep +so let's disable it by default. + +Only check for EGL if using EGL_API. +--- + cmake/SearchForStuff.cmake | 5 +++-- + cmake/SelectPcsx2Plugins.cmake | 2 +- + plugins/GSdx/CMakeLists.txt | 27 ++++++++++----------------- + plugins/GSdx/GS.cpp | 8 ++++---- + plugins/GSdx/GSWndEGL.cpp | 2 +- + plugins/GSdx/GSWndEGL.h | 21 +-------------------- + 6 files changed, 20 insertions(+), 45 deletions(-) + +diff --git a/cmake/SearchForStuff.cmake b/cmake/SearchForStuff.cmake +index 8c8918e..b43a547 100644 +--- a/cmake/SearchForStuff.cmake ++++ b/cmake/SearchForStuff.cmake +@@ -69,8 +69,9 @@ include(CheckLib) + if(Linux) + check_lib(AIO aio libaio.h) + endif() +-check_lib(EGL EGL EGL/egl.h) +-check_lib(GLESV2 GLESv2 GLES3/gl3ext.h) # NOTE: looking for GLESv3, not GLESv2 ++if(EGL_API) ++ check_lib(EGL EGL EGL/egl.h) ++endif() + check_lib(PORTAUDIO portaudio portaudio.h pa_linux_alsa.h) + check_lib(SOUNDTOUCH SoundTouch soundtouch/SoundTouch.h) + +diff --git a/cmake/SelectPcsx2Plugins.cmake b/cmake/SelectPcsx2Plugins.cmake +index 726dc2d..ee8138b 100644 +--- a/cmake/SelectPcsx2Plugins.cmake ++++ b/cmake/SelectPcsx2Plugins.cmake +@@ -144,7 +144,7 @@ endif() + # requires: -OpenGL + # -X11 + #--------------------------------------- +-if(OPENGL_FOUND AND X11_FOUND AND EGL_FOUND AND GTKn_FOUND) ++if(OPENGL_FOUND AND X11_FOUND AND GTKn_FOUND AND (EGL_FOUND OR NOT EGL_API)) + set(GSdx TRUE) + elseif(NOT EXISTS "${CMAKE_SOURCE_DIR}/plugins/GSdx") + set(GSdx FALSE) +diff --git a/plugins/GSdx/CMakeLists.txt b/plugins/GSdx/CMakeLists.txt +index 8859044..13b30c7 100644 +--- a/plugins/GSdx/CMakeLists.txt ++++ b/plugins/GSdx/CMakeLists.txt +@@ -38,8 +38,8 @@ if(XDG_STD) + set(GSdxFinalFlags ${GSdxFinalFlags} -DXDG_STD) + endif() + +-if(GLES_API AND GLESV2_FOUND) +- set(GSdxFinalFlags ${GSdxFinalFlags} -DENABLE_GLES) ++if(EGL_API AND EGL_FOUND) ++ set(GSdxFinalFlags ${GSdxFinalFlags} -DEGL_SUPPORTED) + endif() + + #Clang doesn't support a few common flags that GCC does. +@@ -198,25 +198,18 @@ set(GSdxFinalLibs + ${X11_LIBRARIES} + ) + +-if(GLES_API AND GLESV2_FOUND) +- set(GSdxFinalLibs +- ${GSdxFinalLibs} +- ${GLESV2_LIBRARIES} +- ) +-else() +- set(GSdxFinalLibs +- ${GSdxFinalLibs} +- ${OPENGL_LIBRARIES} +- ) +-endif() +- +-set(GSdxFinalLibs +- ${GSdxFinalLibs} +- ${EGL_LIBRARIES} ++set(GSdxFinalLibs ${GSdxFinalLibs} ++ ${OPENGL_LIBRARIES} + ${GTK2_LIBRARIES} + ${LIBC_LIBRARIES} + ) + ++if(EGL_API AND EGL_FOUND) ++ set(GSdxFinalLibs ${GSdxFinalLibs} ++ ${EGL_LIBRARIES} ++ ) ++endif() ++ + # Generate Glsl header file. Protect with REBUILD_SHADER to avoid build-dependency on PERL + if (REBUILD_SHADER) + add_custom_command(OUTPUT res/glsl_source.h COMMAND perl ${CMAKE_SOURCE_DIR}/linux_various/glsl2h.pl) +diff --git a/plugins/GSdx/GS.cpp b/plugins/GSdx/GS.cpp +index 3ffb5e8..4836192 100644 +--- a/plugins/GSdx/GS.cpp ++++ b/plugins/GSdx/GS.cpp +@@ -291,12 +291,12 @@ static int _GSopen(void** dsp, char* title, int renderer, int threads = -1) + break; + } + #else +-#ifdef ENABLE_GLES +- wnd[0] = NULL; +-#else + wnd[0] = new GSWndOGL(); +-#endif ++#ifdef EGL_SUPPORTED + wnd[1] = new GSWndEGL(); ++#else ++ wnd[1] = NULL; ++#endif + #endif + } + } +diff --git a/plugins/GSdx/GSWndEGL.cpp b/plugins/GSdx/GSWndEGL.cpp +index 491f34f..f69ff0c 100644 +--- a/plugins/GSdx/GSWndEGL.cpp ++++ b/plugins/GSdx/GSWndEGL.cpp +@@ -22,7 +22,7 @@ + #include "stdafx.h" + #include "GSWndEGL.h" + +-#if defined(__linux__) ++#if defined(__linux__) && defined(EGL_SUPPORTED) + + GSWndEGL::GSWndEGL() + : m_NativeWindow(0), m_NativeDisplay(NULL) +diff --git a/plugins/GSdx/GSWndEGL.h b/plugins/GSdx/GSWndEGL.h +index c5a2573..17804bb 100644 +--- a/plugins/GSdx/GSWndEGL.h ++++ b/plugins/GSdx/GSWndEGL.h +@@ -21,30 +21,11 @@ + + #include "GSWnd.h" + +-#if defined(__linux__) ++#if defined(__linux__) && defined(EGL_SUPPORTED) + #include + #include + #include + +-// Need at least MESA 9.0 (plan for october/november 2012) +-// So force the destiny to at least check the compilation +-#ifndef EGL_KHR_create_context +-#define EGL_KHR_create_context 1 +-#define EGL_CONTEXT_MAJOR_VERSION_KHR EGL_CONTEXT_CLIENT_VERSION +-#define EGL_CONTEXT_MINOR_VERSION_KHR 0x30FB +-#define EGL_CONTEXT_FLAGS_KHR 0x30FC +-#define EGL_CONTEXT_OPENGL_PROFILE_MASK_KHR 0x30FD +-#define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY_KHR 0x31BD +-#define EGL_NO_RESET_NOTIFICATION_KHR 0x31BE +-#define EGL_LOSE_CONTEXT_ON_RESET_KHR 0x31BF +-#define EGL_CONTEXT_OPENGL_DEBUG_BIT_KHR 0x00000001 +-#define EGL_CONTEXT_OPENGL_FORWARD_COMPATIBLE_BIT_KHR 0x00000002 +-#define EGL_CONTEXT_OPENGL_ROBUST_ACCESS_BIT_KHR 0x00000004 +-#define EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT_KHR 0x00000001 +-#define EGL_CONTEXT_OPENGL_COMPATIBILITY_PROFILE_BIT_KHR 0x00000002 +-#endif +- +- + class GSWndEGL : public GSWndGL + { + EGLNativeWindowType m_NativeWindow; +-- +2.4.6 + diff --git a/games-emulation/pcsx2/files/pcsx2-1.3.1-packaging.patch b/games-emulation/pcsx2/files/pcsx2-1.3.1-packaging.patch new file mode 100644 index 000000000000..6c009e6cbab2 --- /dev/null +++ b/games-emulation/pcsx2/files/pcsx2-1.3.1-packaging.patch @@ -0,0 +1,148 @@ +From 8e625d61b0a895074d35d6d227008664360e8458 Mon Sep 17 00:00:00 2001 +From: nE0sIghT +Date: Mon, 10 Aug 2015 19:15:40 +0300 +Subject: [PATCH 2/3] cmake: fatal error if miss dependencies in package mode + Moved zzogl to extra plugins + +--- + cmake/SelectPcsx2Plugins.cmake | 56 +++++++++++++++++++++--------------------- + 1 file changed, 28 insertions(+), 28 deletions(-) + +diff --git a/cmake/SelectPcsx2Plugins.cmake b/cmake/SelectPcsx2Plugins.cmake +index ee8138b..bb7307e 100644 +--- a/cmake/SelectPcsx2Plugins.cmake ++++ b/cmake/SelectPcsx2Plugins.cmake +@@ -15,6 +15,14 @@ else(GLSL_API) + set(msg_dep_zzogl "check these libraries -> glew (>=1.6), jpeg (>=6.2), opengl, X11, nvidia-cg-toolkit (>=2.1), pcsx2 common libs") + endif() + ++macro(print_dep str dep) ++ if (PACKAGE_MODE) ++ message(FATAL_ERROR "${str}:${dep}") ++ else() ++ message(STATUS "${str}:${dep}") ++ endif() ++endmacro(print_dep) ++ + #------------------------------------------------------------------------------- + # Pcsx2 core & common libs + #------------------------------------------------------------------------------- +@@ -43,8 +51,7 @@ elseif(NOT EXISTS "${CMAKE_SOURCE_DIR}/common/src") + set(common_libs FALSE) + else() + set(common_libs FALSE) +- message(STATUS "Skip build of common libraries: miss some dependencies") +- message(STATUS "${msg_dep_common_libs}") ++ print_dep("Skip build of common libraries: miss some dependencies" "${msg_dep_common_libs}") + endif() + + #--------------------------------------- +@@ -62,14 +69,12 @@ elseif(NOT EXISTS "${CMAKE_SOURCE_DIR}/pcsx2") + set(pcsx2_core FALSE) + else() + set(pcsx2_core FALSE) +- message(STATUS "Skip build of pcsx2 core: miss some dependencies") +- message(STATUS "${msg_dep_pcsx2}") ++ print_dep("Skip build of pcsx2 core: miss some dependencies" "${msg_dep_pcsx2}") + endif() + # Linux need also gtk2 + if(UNIX AND pcsx2_core AND NOT GTKn_FOUND) + set(pcsx2_core FALSE) +- message(STATUS "Skip build of pcsx2 core: miss some dependencies") +- message(STATUS "${msg_dep_pcsx2}") ++ print_dep("Skip build of pcsx2 core: miss some dependencies" "${msg_dep_pcsx2}") + endif() + + +@@ -102,8 +107,7 @@ if(EXTRA_PLUGINS) + set(CDVDiso FALSE) + else() + set(CDVDiso FALSE) +- message(STATUS "Skip build of CDVDiso: miss some dependencies") +- message(STATUS "${msg_dep_cdvdiso}") ++ print_dep("Skip build of CDVDiso: miss some dependencies" "${msg_dep_cdvdiso}") + endif() + endif() + +@@ -147,11 +151,10 @@ endif() + if(OPENGL_FOUND AND X11_FOUND AND GTKn_FOUND AND (EGL_FOUND OR NOT EGL_API)) + set(GSdx TRUE) + elseif(NOT EXISTS "${CMAKE_SOURCE_DIR}/plugins/GSdx") +- set(GSdx FALSE) ++ set(GSdx FALSE) + else() +- set(GSdx FALSE) +- message(STATUS "Skip build of GSdx: miss some dependencies") +- message(STATUS "${msg_dep_gsdx}") ++ set(GSdx FALSE) ++ print_dep("Skip build of GSdx: miss some dependencies" "${msg_dep_gsdx}") + endif() + #--------------------------------------- + +@@ -170,8 +173,7 @@ if(EXTRA_PLUGINS) + set(zerogs FALSE) + else() + set(zerogs FALSE) +- message(STATUS "Skip build of zerogs: miss some dependencies") +- message(STATUS "${msg_dep_zerogs}") ++ print_dep("Skip build of zerogs: miss some dependencies" "${msg_dep_zerogs}") + endif() + endif() + #--------------------------------------- +@@ -186,14 +188,15 @@ endif() + # -JPEG + # -common_libs + #--------------------------------------- +-if((GLEW_FOUND AND OPENGL_FOUND AND X11_FOUND AND JPEG_FOUND AND common_libs AND GTKn_FOUND) AND (CG_FOUND OR GLSL_API)) +- set(zzogl TRUE) +-elseif(NOT EXISTS "${CMAKE_SOURCE_DIR}/plugins/zzogl-pg") +- set(zzogl FALSE) +-else() +- set(zzogl FALSE) +- message(STATUS "Skip build of zzogl: miss some dependencies") +- message(STATUS "${msg_dep_zzogl}") ++if(EXTRA_PLUGINS) ++ if((GLEW_FOUND AND OPENGL_FOUND AND X11_FOUND AND JPEG_FOUND AND common_libs AND GTKn_FOUND) AND (CG_FOUND OR GLSL_API)) ++ set(zzogl TRUE) ++ elseif(NOT EXISTS "${CMAKE_SOURCE_DIR}/plugins/zzogl-pg") ++ set(zzogl FALSE) ++ else() ++ set(zzogl FALSE) ++ print_dep("Skip build of zzogl: miss some dependencies" "${msg_dep_zzogl}") ++ endif() + endif() + #--------------------------------------- + +@@ -216,8 +219,7 @@ elseif(NOT EXISTS "${CMAKE_SOURCE_DIR}/plugins/onepad") + set(onepad FALSE) + else() + set(onepad FALSE) +- message(STATUS "Skip build of onepad: miss some dependencies") +- message(STATUS "${msg_dep_onepad}") ++ print_dep("Skip build of onepad: miss some dependencies" "${msg_dep_onepad}") + endif() + #--------------------------------------- + +@@ -244,8 +246,7 @@ elseif(NOT EXISTS "${CMAKE_SOURCE_DIR}/plugins/spu2-x") + set(spu2-x FALSE) + else() + set(spu2-x FALSE) +- message(STATUS "Skip build of spu2-x: miss some dependencies") +- message(STATUS "${msg_dep_spu2x}") ++ print_dep("Skip build of spu2-x: miss some dependencies" "${msg_dep_spu2x}") + endif() + #--------------------------------------- + +@@ -266,8 +267,7 @@ if(EXTRA_PLUGINS) + set(zerospu2 FALSE) + else() + set(zerospu2 FALSE) +- message(STATUS "Skip build of zerospu2: miss some dependencies") +- message(STATUS "${msg_dep_zerospu2}") ++ print_dep("Skip build of zerospu2: miss some dependencies" "${msg_dep_zerospu2}") + endif() + endif() + #--------------------------------------- +-- +2.4.6 + diff --git a/games-emulation/pcsx2/metadata.xml b/games-emulation/pcsx2/metadata.xml new file mode 100644 index 000000000000..dc49038581b3 --- /dev/null +++ b/games-emulation/pcsx2/metadata.xml @@ -0,0 +1,13 @@ + + + + proxy-maintainers + + ykonotopov@gmail.com + Yuri Konotopov + + + https://github.com/PCSX2/pcsx2/issues + PCSX2/pcsx2 + + diff --git a/games-emulation/pcsx2/pcsx2-1.3.1.ebuild b/games-emulation/pcsx2/pcsx2-1.3.1.ebuild new file mode 100644 index 000000000000..e839ef2e2675 --- /dev/null +++ b/games-emulation/pcsx2/pcsx2-1.3.1.ebuild @@ -0,0 +1,106 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +PLOCALES="ar_SA ca_ES cs_CZ de_DE es_ES fi_FI fr_FR hr_HR hu_HU id_ID it_IT ja_JP ko_KR ms_MY nb_NO pl_PL pt_BR ru_RU sv_SE th_TH tr_TR zh_CN zh_TW" + +inherit cmake-utils l10n multilib toolchain-funcs wxwidgets + +DESCRIPTION="A PlayStation 2 emulator" +HOMEPAGE="http://www.pcsx2.net" +SRC_URI="https://github.com/PCSX2/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="-* ~amd64 ~x86" +IUSE="" + +RDEPEND=" + app-arch/bzip2[abi_x86_32(-)] + dev-libs/libaio[abi_x86_32(-)] + media-libs/alsa-lib[abi_x86_32(-)] + media-libs/libsdl[abi_x86_32(-),joystick,sound] + media-libs/portaudio[abi_x86_32(-)] + media-libs/libsoundtouch[abi_x86_32(-)] + virtual/opengl[abi_x86_32(-)] + >=sys-libs/zlib-1.2.4[abi_x86_32(-)] + virtual/jpeg:62[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] +" +# Ensure no incompatible headers from eselect-opengl are installed, bug #510730 +DEPEND="${RDEPEND} + >=app-eselect/eselect-opengl-1.3.1 + >=dev-cpp/sparsehash-1.5 +" + +PATCHES=( + "${FILESDIR}"/"${P}-egl-optional.patch" + "${FILESDIR}"/"${P}-packaging.patch" + "${FILESDIR}"/"${P}-cflags.patch" +) + +clean_locale() { + rm -R "${S}"/locales/"${1}" || die +} + +pkg_setup() { + if [[ ${MERGE_TYPE} != binary && $(tc-getCC) == *gcc* ]]; then + if [[ $(gcc-major-version) -lt 4 || $(gcc-major-version) == 4 && $(gcc-minor-version) -lt 7 ]] ; then + die "${PN} does not compile with gcc less than 4.7" + fi + fi +} + +src_prepare() { + cmake-utils_src_prepare + l10n_for_each_disabled_locale_do clean_locale +} + +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= + -DEGL_API=FALSE + -DEXTRA_PLUGINS=FALSE + -DGLES_API=FALSE + -DGLSL_API=FALSE + -DGTK3_API=FALSE + -DPACKAGE_MODE=TRUE + -DOPTIMIZATION_FLAG= + -DXDG_STD=TRUE + + -DCMAKE_INSTALL_PREFIX=/usr + -DCMAKE_LIBRARY_PATH="/usr/$(get_libdir)/${PN}" + -DDOC_DIR=/usr/share/doc/"${PF}" + -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" need-wxwidgets unicode + cmake-utils_src_configure +} + +src_install() { + # Upstream issue: https://github.com/PCSX2/pcsx2/issues/417 + QA_TEXTRELS="usr/$(get_libdir)/pcsx2/*" + + cmake-utils_src_install +} diff --git a/games-emulation/pcsx2/pcsx2-9999.ebuild b/games-emulation/pcsx2/pcsx2-9999.ebuild new file mode 100644 index 000000000000..1427f558301c --- /dev/null +++ b/games-emulation/pcsx2/pcsx2-9999.ebuild @@ -0,0 +1,106 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +PLOCALES="ar_SA ca_ES cs_CZ de_DE es_ES fi_FI fr_FR hr_HR hu_HU id_ID it_IT ja_JP ko_KR ms_MY nb_NO pl_PL pt_BR ru_RU sv_SE th_TH tr_TR zh_CN zh_TW" + +inherit cmake-utils git-r3 l10n multilib toolchain-funcs wxwidgets + +DESCRIPTION="A PlayStation 2 emulator" +HOMEPAGE="http://www.pcsx2.net" +EGIT_REPO_URI=( + "https://github.com/PCSX2/pcsx2.git" + "git://github.com/PCSX2/pcsx2.git" +) + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="" +IUSE="" + +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-1.2.4[abi_x86_32(-)] + virtual/jpeg:62[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] +" +# 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 +" + +clean_locale() { + rm -R "${S}"/locales/"${1}" || die +} + +pkg_setup() { + if [[ ${MERGE_TYPE} != binary && $(tc-getCC) == *gcc* ]]; then + if [[ $(gcc-major-version) -lt 4 || $(gcc-major-version) == 4 && $(gcc-minor-version) -lt 8 ]] ; then + die "${PN} does not compile with gcc less than 4.8" + fi + fi +} + +src_prepare() { + cmake-utils_src_prepare + l10n_for_each_disabled_locale_do clean_locale +} + +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" need-wxwidgets unicode + cmake-utils_src_configure +} + +src_install() { + # Upstream issue: https://github.com/PCSX2/pcsx2/issues/417 + QA_TEXTRELS="usr/$(get_libdir)/pcsx2/*" + + cmake-utils_src_install +} -- cgit v1.2.3-65-gdbad