diff options
author | Julian Ospald <hasufell@gentoo.org> | 2013-02-27 00:20:23 +0000 |
---|---|---|
committer | Julian Ospald <hasufell@gentoo.org> | 2013-02-27 00:20:23 +0000 |
commit | 2f84d6ca7ea55fa148a7bdf0759520bafacb1f58 (patch) | |
tree | f5fb3ef28211de1d24d10c5542b19903b276be27 /games-engines/renpy | |
parent | initial import wrt #301324 (diff) | |
download | historical-2f84d6ca7ea55fa148a7bdf0759520bafacb1f58.tar.gz historical-2f84d6ca7ea55fa148a7bdf0759520bafacb1f58.tar.bz2 historical-2f84d6ca7ea55fa148a7bdf0759520bafacb1f58.zip |
initial import wrt #301324
Package-Manager: portage-2.2.0_alpha163/cvs/Linux x86_64
Manifest-Sign-Key: 0xE73C35B3
Diffstat (limited to 'games-engines/renpy')
-rw-r--r-- | games-engines/renpy/Manifest | 18 | ||||
-rw-r--r-- | games-engines/renpy/files/renpy-6.14.1-av_close_input_stream.patch | 11 | ||||
-rw-r--r-- | games-engines/renpy/files/renpy-6.14.1-multiple-abi.patch | 230 | ||||
-rw-r--r-- | games-engines/renpy/files/renpy-6.14.1-remove-AVFormatParameters.patch | 19 | ||||
-rw-r--r-- | games-engines/renpy/metadata.xml | 28 | ||||
-rw-r--r-- | games-engines/renpy/renpy-6.14.1.ebuild | 104 |
6 files changed, 408 insertions, 2 deletions
diff --git a/games-engines/renpy/Manifest b/games-engines/renpy/Manifest index bdca9f89ea49..700bfa38d711 100644 --- a/games-engines/renpy/Manifest +++ b/games-engines/renpy/Manifest @@ -1,7 +1,21 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + AUX renpy-6.14.1-av_close_input_stream.patch 291 SHA256 da5d69dadb0c8559f20b205999580fa7b4bc9647c5eb5b3567dc198745b006ba SHA512 6c6dd700e8b11397089791179db4eea2da403671470b4500d0baa37d712be1e73676d4ac9997d869de19fe11b4625edcca91c074ad64e99ea463e630d4995991 WHIRLPOOL f937817ab4c21bdce3137b10f8d1b60900b76644c1cd0b02c11009fec4dd309d5fc3834d9dfa58475eab584de85bec931b7e57707d2b1dbd400cc8cb8cf3e420 AUX renpy-6.14.1-multiple-abi.patch 7950 SHA256 7605357e2fb692acc0032380ebaff4d153d4cae139b8b6298cbcd347f8880838 SHA512 1673cb44bb168745b6eeb770ca4bc88ca0c72ded4e325bedb5fb5ea90147276bfe63bd5607441560e5aa1dbaf93820fe3e77f853716b24f5eaa80ad8ab2e9008 WHIRLPOOL 330aa2c6ed0a5f54f8523fffbc5f503d7497f756c776620d91981be89d90737f16114b331662ce300720039b847d34d3df13dd19c039e7dca851784a962d0722 AUX renpy-6.14.1-remove-AVFormatParameters.patch 494 SHA256 3e67e752def86a848d6a9e4a7d20c8dd3bf4158a1288065ec1f21278a4c626e2 SHA512 6589c26dfb746aa23196ad0f5a74854ef7d7916fa48298794c9d6a146865cb124c9d1b22c922d57202de87c32487706c45d3a73c90fa9035afae6604a05de75e WHIRLPOOL 6fb36d076c891b2c2e8fa6b2af548de73a575e91037fa9b4cb4f77f74262e714f499a72a93c3d1756aabed80b336dd7bbd27a3b939eb83c76453ef52a41cbe68 DIST renpy-6.14.1-source.tar.bz2 9806538 SHA256 18be3630d1956131a1f010732d15292cdcec14a2391210af27dc342fafd8197f SHA512 a1f13a5f860e66054012eab29bbd37715bd9721e2dc30fdd9c8d4d8c58dc672c35b3c813e962ad6878cb741502af5a181dff8a05f359892b6b60d2e15bc5a7bc WHIRLPOOL 54018731e136106f328bf2d028841f09424d8ffd8303821eec995c55918b2c8ac7eb97d9ed24785e95ad3d878b794f5bcf96cc9f783955f8d1ace086a3ca9b61 -EBUILD renpy-6.14.1.ebuild 2356 SHA256 1c0cdf2aa15c2e8687cb347cfb34b978a11807d44c6698413a12950a0bb610e7 SHA512 46293ae5926c2467b9fe925fb2788d5bb53e461bd418572d99d372fa452202da0cf065eca3574155a6ebefd4f7c177756fae586ed1c52c3e8e6bd8dfa8ed0fff WHIRLPOOL 335db0bf08a4874274e8d5619f269e7fdb136b8710cfef70603956d93325b345a26109864b679b02347669d8d78ea69e591cd0b17fc3552a7fd49b24b02009ac -MISC ChangeLog 415 SHA256 e18a31dcc667ba481adacc25f7fc79535fb50bd945729c6ea3b979df04b566ea SHA512 378d7e94f780f1ca4cef8a462b11ba262dbe05d7fce96d5ce4c5261f8c03c43ff3708c9c5b68f1bf83be9f100ec0955b085653da1d713e9a463060a498f9de32 WHIRLPOOL 8e664ddcfa8d13dcc8d1c93ce865405333e3eb0ccbe4af0dd616ee0aeabfc3fae176846f3ef4c72981c826418cae3b4aca44471b09391a8ebe6f953dd35cad7d +EBUILD renpy-6.14.1.ebuild 2459 SHA256 52aad33fcb291fc7ab44c0af033e368fbbc015aedf86577e9120a635daff9568 SHA512 5d340954146b9f2719d41456a2ac901f676f32c13d60adb25fffa38be8092346c5a6b274bb19b372bfd619bdd90bf1379856f8e9f7eb4687e5f87d37b34585d0 WHIRLPOOL 91e350dbb145bc0a4d4bdb3e0f6f5e18243751d39bf26b932ef4be05069af6e61ad97b8895eedfa319045ae364dba5342bf2bd2c9cbc0d86dc4cc88afc279362 +MISC ChangeLog 508 SHA256 0b33c81246eaf47b179b1d22f5235bde5d373a288cce9e013afb65244825c13a SHA512 3297ea87cb105ff551f9acaac5be6c0d6a23aa7abae3f50e6e17eea8423dddd204ea4e05c090d90da07cdfc89714a21a4435b187dc38f0d678893ae9fe724fc7 WHIRLPOOL 02b9ea7daa631fdfbcffb51b18fc606e8b6f396e7acc4370d70b7b60583628fe55370bfb8677d5721d4f2d7274dc4f06232784b974948c39ee59b87b89eebe2c MISC metadata.xml 1004 SHA256 57eb550db84ed86cc4a35c4636b28e71a884d3c6504d651d323e16a12b4a187e SHA512 09b96f2b3224fc2a255653e7734f3b87cbe8280c6befcc5094b19203fb363a89d6db259d37a22f162c8a76e08241ccd31f092bef5cfa80e07f9fd9bd132590a5 WHIRLPOOL 1704ebd462b4a672fa2168268f82309b80dd9d62e91b817383af5a8685b1a7c8c137d9b78bf9dac9c5d4886692577a5a9bd52413b19e361eb98d022fde7617e9 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2.0.19 (GNU/Linux) + +iQEcBAEBCAAGBQJRLVFIAAoJEFpvPKfnPDWz7cMH/RrfscC75dE0NUclhJBU7vzQ +nfcdU38S0ROQBSfnOVHFT5HoDbpkuKmG6+tbyCjyQ7H0VGgCBQcpIkf0hjv1h1w7 +VIBIPvodzsdwihPXXyElVLqSAaHHdqROYBQAK62MN8osnSMqTUxoZ2h53M3jKTnW +MpP/G7hfu7k4xjxkDyEzyneXEPRFs8XNBmjQLj517WUsX1e9EV8+Z0Lo4JAjhYQg +WN0+VDoEjbqGLTQlzLwWBIR7nd2hLj2HUOC4set+2yUstYoNYB88ZLBXtwQEtqXV +HNUt0XAKzQoYt2aAAdhLJDpQolMp2Isnt2ADOPcCHCG0Dn3k1hYtTfomgLdJ8Ys= +=K+2g +-----END PGP SIGNATURE----- diff --git a/games-engines/renpy/files/renpy-6.14.1-av_close_input_stream.patch b/games-engines/renpy/files/renpy-6.14.1-av_close_input_stream.patch new file mode 100644 index 000000000000..c2415a2233a9 --- /dev/null +++ b/games-engines/renpy/files/renpy-6.14.1-av_close_input_stream.patch @@ -0,0 +1,11 @@ +--- module/ffdecode.c ++++ module/ffdecode.c +@@ -1356,7 +1356,7 @@ + if (is->video_stream >= 0) + stream_component_close(is, is->video_stream); + if (is->ic) { +- av_close_input_stream(is->ic); ++ av_close_input_file(is->ic); + is->ic = NULL; + } + diff --git a/games-engines/renpy/files/renpy-6.14.1-multiple-abi.patch b/games-engines/renpy/files/renpy-6.14.1-multiple-abi.patch new file mode 100644 index 000000000000..e200746d153a --- /dev/null +++ b/games-engines/renpy/files/renpy-6.14.1-multiple-abi.patch @@ -0,0 +1,230 @@ +From: Julian Ospald <hasufell@gentoo.org> +Date: Mon Feb 25 21:35:31 UTC 2013 +Subject: fix multiple abi support + +--- /dev/null ++++ renpy-6.14.1-source/renpy/common.py +@@ -0,0 +1,83 @@ ++# Copyright 2004-2012 Tom Rothamel <pytom@bishoujo.us> ++# ++# Permission is hereby granted, free of charge, to any person ++# obtaining a copy of this software and associated documentation files ++# (the "Software"), to deal in the Software without restriction, ++# including without limitation the rights to use, copy, modify, merge, ++# publish, distribute, sublicense, and/or sell copies of the Software, ++# and to permit persons to whom the Software is furnished to do so, ++# subject to the following conditions: ++# ++# The above copyright notice and this permission notice shall be ++# included in all copies or substantial portions of the Software. ++# ++# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, ++# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF ++# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE ++# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION ++# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION ++# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ++ ++import os ++import sys ++import warnings ++from distutils.sysconfig import get_python_lib ++ ++# Functions to be customized by distributors. ################################ ++ ++# Given the Ren'Py base directory (usually the directory containing ++# this file), this is expected to return the path to the common directory. ++def path_to_common(renpy_base): ++ return renpy_base + "/common" ++ ++# Given a directory holding a Ren'Py game, this is expected to return ++# the path to a directory that will hold save files. ++def path_to_saves(gamedir): ++ import renpy #@UnresolvedImport ++ ++ if not renpy.config.save_directory: ++ return gamedir + "/saves" ++ ++ # Search the path above Ren'Py for a directory named "Ren'Py Data". ++ # If it exists, then use that for our save directory. ++ path = renpy.config.renpy_base ++ ++ while True: ++ if os.path.isdir(path + "/Ren'Py Data"): ++ return path + "/Ren'Py Data/" + renpy.config.save_directory ++ ++ newpath = os.path.dirname(path) ++ if path == newpath: ++ break ++ path = newpath ++ ++ # Otherwise, put the saves in a platform-specific location. ++ if renpy.android: ++ return gamedir + "/saves" ++ ++ elif renpy.macintosh: ++ rv = "~/Library/RenPy/" + renpy.config.save_directory ++ return os.path.expanduser(rv) ++ ++ elif renpy.windows: ++ if 'APPDATA' in os.environ: ++ return os.environ['APPDATA'] + "/RenPy/" + renpy.config.save_directory ++ else: ++ rv = "~/RenPy/" + renpy.config.save_directory ++ return os.path.expanduser(rv) ++ ++ else: ++ rv = "~/.renpy/" + renpy.config.save_directory ++ return os.path.expanduser(rv) ++ ++ ++# Returns the path to the Ren'Py base directory (containing common and ++# the launcher, usually.) ++def path_to_renpy_base(): ++ renpy_base = os.path.dirname(sys.argv[0]) ++ renpy_base = get_python_lib() + "/renpy@SLOT@" ++ renpy_base = os.environ.get('RENPY_BASE', renpy_base) ++ renpy_base = os.path.abspath(renpy_base) ++ ++ return renpy_base +--- renpy-6.14.1-source/renpy.py ++++ renpy-6.14.1-source/renpy.py +@@ -24,65 +24,9 @@ + import os + import sys + import warnings +- +-# Functions to be customized by distributors. ################################ +- +-# Given the Ren'Py base directory (usually the directory containing +-# this file), this is expected to return the path to the common directory. +-def path_to_common(renpy_base): +- return renpy_base + "/common" +- +-# Given a directory holding a Ren'Py game, this is expected to return +-# the path to a directory that will hold save files. +-def path_to_saves(gamedir): +- import renpy #@UnresolvedImport +- +- if not renpy.config.save_directory: +- return gamedir + "/saves" +- +- # Search the path above Ren'Py for a directory named "Ren'Py Data". +- # If it exists, then use that for our save directory. +- path = renpy.config.renpy_base +- +- while True: +- if os.path.isdir(path + "/Ren'Py Data"): +- return path + "/Ren'Py Data/" + renpy.config.save_directory +- +- newpath = os.path.dirname(path) +- if path == newpath: +- break +- path = newpath +- +- # Otherwise, put the saves in a platform-specific location. +- if renpy.android: +- return gamedir + "/saves" +- +- elif renpy.macintosh: +- rv = "~/Library/RenPy/" + renpy.config.save_directory +- return os.path.expanduser(rv) +- +- elif renpy.windows: +- if 'APPDATA' in os.environ: +- return os.environ['APPDATA'] + "/RenPy/" + renpy.config.save_directory +- else: +- rv = "~/RenPy/" + renpy.config.save_directory +- return os.path.expanduser(rv) +- +- else: +- rv = "~/.renpy/" + renpy.config.save_directory +- return os.path.expanduser(rv) +- +- +-# Returns the path to the Ren'Py base directory (containing common and +-# the launcher, usually.) +-def path_to_renpy_base(): +- renpy_base = os.path.dirname(sys.argv[0]) +- renpy_base = os.environ.get('RENPY_BASE', renpy_base) +- renpy_base = os.path.abspath(renpy_base) +- +- return renpy_base +- +-############################################################################## ++from distutils.sysconfig import get_python_lib ++sys.path.append(get_python_lib() + "/renpy@SLOT@") ++import renpy.common as common + + # The version of the Mac Launcher and py4renpy that we require. + macos_version = (6, 14, 0) +@@ -97,21 +41,9 @@ + print "Ren'Py requires at least python 2.6." + sys.exit(0) + +-android = ("ANDROID_PRIVATE" in os.environ) +- +-# Android requires us to add code to the main module, and to command some +-# renderers. +-if android: +- __main__ = sys.modules["__main__"] +- __main__.path_to_renpy_base = path_to_renpy_base +- __main__.path_to_common = path_to_common +- __main__.path_to_saves = path_to_saves +- os.environ["RENPY_RENDERER"] = "gl" +- os.environ["RENPY_GL_ENVIRON"] = "limited" +- + def main(): + +- renpy_base = path_to_renpy_base() ++ renpy_base = common.path_to_renpy_base() + + # Add paths. + if os.path.exists(renpy_base + "/module"): +@@ -133,14 +65,9 @@ + print >>sys.stderr, "Could not import renpy.bootstrap. Please ensure you decompressed Ren'Py" + print >>sys.stderr, "correctly, preserving the directory structure." + raise +- +- if android: +- renpy.linux = False +- renpy.android = True + + renpy.bootstrap.bootstrap(renpy_base) + +-if __name__ == "__main__": +- main() + +- ++if __name__ == "__main__": ++ main() +--- renpy-6.14.1-source/renpy/main.py ++++ renpy-6.14.1-source/renpy/main.py +@@ -27,7 +27,7 @@ + import zipfile + import subprocess + from cPickle import loads, dumps +-import __main__ ++import renpy.common as common + + + def save_persistent(): +@@ -172,7 +172,7 @@ + renpy.config.searchpath = [ renpy.config.gamedir ] + + # Find the common directory. +- commondir = __main__.path_to_common(renpy.config.renpy_base) # E1101 @UndefinedVariable ++ commondir = common.path_to_common(renpy.config.renpy_base) # E1101 @UndefinedVariable + + if os.path.isdir(commondir): + renpy.config.searchpath.append(commondir) +@@ -227,7 +227,7 @@ + + # Find the save directory. + if renpy.config.savedir is None: +- renpy.config.savedir = __main__.path_to_saves(renpy.config.gamedir) # E1101 @UndefinedVariable ++ renpy.config.savedir = common.path_to_saves(renpy.config.gamedir) # E1101 @UndefinedVariable + + if renpy.game.args.savedir: #@UndefinedVariable + renpy.config.savedir = renpy.game.args.savedir #@UndefinedVariable diff --git a/games-engines/renpy/files/renpy-6.14.1-remove-AVFormatParameters.patch b/games-engines/renpy/files/renpy-6.14.1-remove-AVFormatParameters.patch new file mode 100644 index 000000000000..e66106c91fcd --- /dev/null +++ b/games-engines/renpy/files/renpy-6.14.1-remove-AVFormatParameters.patch @@ -0,0 +1,19 @@ +--- module/ffdecode.c ++++ module/ffdecode.c +@@ -1152,7 +1152,6 @@ + AVFormatContext *ic; + int err, i, ret, video_index, audio_index; + AVPacket pkt1, *pkt = &pkt1; +- AVFormatParameters params, *ap = ¶ms; + int codecs_locked = 0; + + // url_set_interrupt_cb(decode_interrupt_cb); +@@ -1162,8 +1161,6 @@ + is->video_stream = -1; + is->audio_stream = -1; + +- memset(ap, 0, sizeof(*ap)); +- + is->io_context = rwops_open(is->rwops); + + codecs_locked = 1; diff --git a/games-engines/renpy/metadata.xml b/games-engines/renpy/metadata.xml new file mode 100644 index 000000000000..92bf8de12766 --- /dev/null +++ b/games-engines/renpy/metadata.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>games</herd> + <maintainer> + <email>hasufell@gentoo.org</email> + <name>Julian Ospald</name> + </maintainer> + <longdescription> + Ren'Py is a free and cross-platform visual novel engine that helps you use words, + pictures, and sounds to tell stories with the computer. + It`s easy and efficient script language makes it possible for non-programmers to make visual novels, + while its Python support allows for complex simulation games. + </longdescription> + <use> + <flag name='development'>Install IDE for game developers and an empty game template</flag> + </use> + <upstream> + <maintainer status='active'> + <email>pytom@bishoujo.us</email> + <name>PyTom</name> + </maintainer> + <changelog>https://launchpad.net/renpy/+announcements</changelog> + <doc>http://renpy.org/wiki/renpy/doc</doc> + <bugs-to>https://bugs.launchpad.net/renpy</bugs-to> + </upstream> +</pkgmetadata> + diff --git a/games-engines/renpy/renpy-6.14.1.ebuild b/games-engines/renpy/renpy-6.14.1.ebuild new file mode 100644 index 000000000000..25a32d22331b --- /dev/null +++ b/games-engines/renpy/renpy-6.14.1.ebuild @@ -0,0 +1,104 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/games-engines/renpy/renpy-6.14.1.ebuild,v 1.1 2013/02/27 00:20:19 hasufell Exp $ + +EAPI=5 +PYTHON_COMPAT=( python2_6 python2_7 ) +DISTUTILS_IN_SOURCE_BUILD=1 +inherit eutils python-r1 versionator gnome2-utils games distutils-r1 + +DESCRIPTION="Visual novel engine written in python" +HOMEPAGE="http://www.renpy.org" +SRC_URI="http://www.renpy.org/dl/${PV}/${P}-source.tar.bz2" + +LICENSE="MIT" +SLOT="$(get_version_component_range 1-2)" +MYSLOT=$(delete_all_version_separators ${SLOT}) +KEYWORDS="~amd64 ~x86" +IUSE="development doc examples" +REQUIRED_USE="examples? ( development )" + +RDEPEND=" + dev-libs/fribidi + dev-python/pygame[X,${PYTHON_USEDEP}] + media-libs/glew + media-libs/libpng:0 + media-libs/libsdl[X,video] + media-libs/freetype:2 + sys-libs/zlib + virtual/ffmpeg + virtual/python-argparse[${PYTHON_USEDEP}]" +DEPEND="${RDEPEND} + virtual/pkgconfig" + +S=${WORKDIR}/${P}-source + +pkg_setup() { + games_pkg_setup + export CFLAGS="${CFLAGS} $(pkg-config --cflags fribidi)" +} + +python_prepare_all() { + # wooosh! this should fix multiple abi + epatch "${FILESDIR}"/${P}-multiple-abi.patch \ + "${FILESDIR}"/${P}-{av_close_input_stream,remove-AVFormatParameters}.patch + + einfo "Deleting precompiled python files" + find . -name '*.py[co]' -print -delete || die + + sed -i \ + -e "s/@SLOT@/${MYSLOT}/" \ + renpy.py renpy/common.py || die "setting slot failed!" + + distutils-r1_python_prepare_all +} + +python_compile() { + cd "${S}"/module || die + distutils-r1_python_compile +} + +python_install() { + cd "${S}"/module || die + distutils-r1_python_install --install-lib="$(python_get_sitedir)/renpy${MYSLOT}" + + cd "${S}" || die + python_scriptinto "${GAMES_BINDIR}" + python_newscript renpy.py ${PN}-${SLOT} + + python_moduleinto renpy${MYSLOT} + python_domodule renpy common + if use development ; then + python_domodule launcher template + fi + if use examples ; then + python_domodule the_question tutorial + fi +} + +python_install_all() { + if use development; then + newicon -s 32 launcher/game/logo32.png ${P}.png + make_desktop_entry ${PN}-${SLOT} "Ren'Py ${PV}" ${P} + fi + + if use doc; then + dohtml -r doc + fi + + prepgamesdirs +} + +pkg_preinst() { + games_pkg_preinst + use development && gnome2_icon_savelist +} + +pkg_postinst() { + games_pkg_postinst + use development && gnome2_icon_cache_update +} + +pkg_postrm() { + use development && gnome2_icon_cache_update +} |