summaryrefslogtreecommitdiff
path: root/games-emulation/ppsspp/ppsspp-1.2.2.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'games-emulation/ppsspp/ppsspp-1.2.2.ebuild')
-rw-r--r--games-emulation/ppsspp/ppsspp-1.2.2.ebuild129
1 files changed, 129 insertions, 0 deletions
diff --git a/games-emulation/ppsspp/ppsspp-1.2.2.ebuild b/games-emulation/ppsspp/ppsspp-1.2.2.ebuild
new file mode 100644
index 00000000000..6d080208e6e
--- /dev/null
+++ b/games-emulation/ppsspp/ppsspp-1.2.2.ebuild
@@ -0,0 +1,129 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils cmake-utils qt4-r2 git-r3
+
+DESCRIPTION="A PSP emulator written in C++."
+HOMEPAGE="http://www.ppsspp.org/"
+EGIT_REPO_URI="git://github.com/hrydgard/${PN}.git"
+EGIT_COMMIT="v${PV}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="qt4 qt5 +sdl"
+REQUIRED_USE="
+ ?? ( qt4 qt5 sdl )
+"
+
+RDEPEND=""
+
+DEPEND="
+ sys-libs/zlib
+ sdl? (
+ dev-util/cmake
+ media-libs/libsdl
+ media-libs/libsdl2
+ )
+ qt4? (
+ dev-qt/qtsvg:4
+ dev-qt/qtgui:4
+ dev-qt/qtcore:4
+ dev-qt/qtopengl:4
+ dev-qt/qtmultimedia:4
+ dev-qt/qt-mobility[multimedia]
+ )
+ qt5? (
+ dev-qt/qtsvg:5
+ dev-qt/qtgui:5
+ dev-qt/qtcore:5
+ dev-qt/qtopengl:5
+ dev-qt/qtmultimedia:5
+ dev-qt/qtwidgets:5
+ dev-qt/qt-mobility[multimedia]
+ )
+"
+
+src_unpack() {
+ git-r3_fetch
+ git-r3_checkout
+ if use qt4 ; then
+ cd "${WORKDIR}"/"${P}"/Qt || die
+ qt4-r2_src_unpack
+ elif use qt5 ; then
+ cd "${WORKDIR}"/"${P}"/Qt || die
+ qt4-r2_src_unpack
+ fi
+}
+
+src_prepare() {
+ sed -i -e "s#-O3#-O2#g;" "${S}"/CMakeLists.txt || die
+ sed -i -e "s#-O3#-O2#g;" "${S}"/Qt/Settings.pri || die
+ sed -i -e "s#-O3#-O2#g;" "${S}"/ffmpeg/linux_*.sh || die
+
+ if use qt4 ; then
+ cd "${WORKDIR}"/"${P}"/Qt || die
+ qt4-r2_src_prepare
+ elif use qt5 ; then
+ cd "${WORKDIR}"/"${P}"/Qt || die
+ qt4-r2_src_prepare
+ else
+ cmake-utils_src_prepare
+ fi
+}
+
+src_configure() {
+ if use qt4 ; then
+ cd "${WORKDIR}"/"${P}"/Qt || die
+ qt4-r2_src_configure
+ eqmake4 "${WORKDIR}"/"${P}"/Qt/PPSSPPQt.pro
+ elif use qt5 ; then
+ cd "${WORKDIR}"/"${P}"/Qt || die
+ qt4-r2_src_configure
+ eqmake5 "${WORKDIR}"/"${P}"/Qt/PPSSPPQt.pro
+ else
+ cmake-utils_src_configure
+ fi
+}
+
+src_compile() {
+ if use qt4 ; then
+ cd "${WORKDIR}"/"${P}"/Qt || die
+ qt4-r2_src_compile
+ elif use qt5 ; then
+ cd "${WORKDIR}"/"${P}"/Qt || die
+ qt4-r2_src_compile
+ else
+ cmake-utils_src_compile
+ fi
+}
+
+src_install() {
+ if use qt4 ; then
+ exeinto /usr/games/bin
+ newexe "${WORKDIR}"/"${P}"/Qt/ppsspp ppsspp
+ elif use qt5 ; then
+ exeinto /usr/games/bin
+ newexe "${WORKDIR}"/"${P}"/Qt/ppsspp ppsspp
+ else
+ exeinto /usr/games
+ dobin "${FILESDIR}"/ppsspp
+ exeinto /usr/share/games/"${PN}"
+ doexe "${WORKDIR}"/"${P}"_build/PPSSPPSDL
+ insinto /usr/share/games/"${PN}"
+ doins -r "${WORKDIR}"/"${P}"_build/assets
+ doins -r "${WORKDIR}"/"${P}"/lang
+ fi
+ insinto /usr/share/icons/
+ newins "${WORKDIR}"/"${P}"/source_assets/image/icon_regular_72.png ppsspp-icon.png
+ domenu "${FILESDIR}"/ppsspp.desktop
+}
+
+pkg_postinst() {
+ elog "Remember, in order to play games, you have to "
+ elog "be in the 'games' group. "
+ elog "Just run 'gpasswd -a <USER> games', then have <USER> re-login. "
+}