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
This commit is contained in:
Yuri Konotopov
2015-08-13 19:34:44 +03:00
committed by nE0sIghT
parent 086161c22e
commit 17cfc21d2b
9 changed files with 1321 additions and 0 deletions

View File

@@ -0,0 +1 @@
DIST pcsx2-1.3.1.tar.gz 20719203 SHA256 60ba9f7f85bf4337ca6962f9b437d549f16fc04ea0b6b261d7521e0416c2b8c9 SHA512 d09364841d8122abc33619b66c6a5bfac7c3979442a257fe6967e516289b6584546e5b512ab8987c04563beb68a587bd44ddc4fac122633598fe89447c4025c3 WHIRLPOOL ec97823c0642a5fa2e0829465b864c09c4596d0c8eebc477b4db463ff6a3af6493480fbce5586b0e085e7d96b6d2837a087f7ceea77b45ed5a2ddefa683c99ba

View File

@@ -0,0 +1,776 @@
From 683b871c320ec14b777ec3937dc609b69b3cf5a5 Mon Sep 17 00:00:00 2001
From: nE0sIghT <ykonotopov@gmail.com>
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

View File

@@ -0,0 +1,169 @@
From 9cd13ca5b5a6a90c21abf1f41725e52efe4774c0 Mon Sep 17 00:00:00 2001
From: nE0sIghT <ykonotopov@gmail.com>
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 <X11/Xlib.h>
#include <EGL/egl.h>
#include <EGL/eglext.h>
-// 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

View File

@@ -0,0 +1,148 @@
From 8e625d61b0a895074d35d6d227008664360e8458 Mon Sep 17 00:00:00 2001
From: nE0sIghT <ykonotopov@gmail.com>
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

View File

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<herd>proxy-maintainers</herd>
<maintainer>
<email>ykonotopov@gmail.com</email>
<name>Yuri Konotopov</name>
</maintainer>
<upstream>
<bugs-to>https://github.com/PCSX2/pcsx2/issues</bugs-to>
<remote-id type="github">PCSX2/pcsx2</remote-id>
</upstream>
</pkgmetadata>

View File

@@ -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
}

View File

@@ -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
}

View File

@@ -52,6 +52,7 @@ games-arcade/gish-demo
games-arcade/thinktanks-demo
games-emulation/caps
games-emulation/nestra
games-emulation/pcsx2
games-emulation/zinc
games-emulation/zsnes
games-fps/avp

View File

@@ -74,6 +74,7 @@ games-arcade/gish-demo
games-arcade/thinktanks-demo
games-emulation/caps
games-emulation/nestra
games-emulation/pcsx2
games-emulation/zinc
games-emulation/zsnes
games-fps/avp