commit: f614d06cffc32da0b8e76570ad2a1e1035a80e60 Author: Alexander Turenko <totktonada.ru <AT> gmail <DOT> com> AuthorDate: Thu Dec 29 23:19:16 2016 +0000 Commit: Alexander Turenko <totktonada.ru <AT> gmail <DOT> com> CommitDate: Thu Dec 29 23:28:37 2016 +0000 URL: https://gitweb.gentoo.org/proj/gamerlay.git/commit/?id=f614d06c
games-action/dxx-rebirth: version bump: 0.59.100 This is the first release shipped d1x-rebirth and d2x-rebirth as the single package (but with two executables), so rather then update two ebuilds separately I merged it into this one. For more information see the release announcement: * http://www.dxx-rebirth.com/news/dxx-rebirth-v0-60-beta-1-released/ Changes ------- Merged {d1x,d2x}-rebirth ebuilds into one named dxx-rebirth (this follows up upstream's code bases merging). Added "descent1" and "descent2" USE flags for controlling which game(s) install. Updated from EAPI 5 to 6. Dropped "games" eclass using. * https://bugs.gentoo.org/show_bug.cgi?id=574082 Migrate from LINGUAS to L10N: * https://github.com/gentoo/gentoo/commit/05275527fc624b00a9aa42cc2f6d4b480af463f4 Replaced games herd in metadata.xml with me as the maintainer: * https://github.com/gentoo/gentoo/commit/cfd93d768e79a349f1e762b92773190295c36980 * https://github.com/gentoo/gentoo/commit/8849b098c085c07e4ac1257e5b39df35d98c3c58 Updated `SConstruct` file patch to get rid of hardcoded CXXFLAGS="-g -O2". Added `SConstruct` file patch and prefix='/usr' scons argument to looking games' data in `/usr/share/games/{d1x,d2x}` instead of default `/usr/local/share/games/{d1x,d2x}-rebirth` (not sure how to achieve this on the recent version w/o patching). Moved documentation installing to the appropriate stage (from prepare to install). Changed dependency type for game data ebuilds from PDEPEND to RDEPEND as devmanual suggests. Added `doc` USE flag (disabled by default). Added the message about necessary of libsdl alsa/oss/pulseaudio USE flag. .../dxx-rebirth/dxx-rebirth-0.59.100.ebuild | 127 +++++++++++++++++++++ .../files/dxx-rebirth-0.59.100-flags.patch | 10 ++ .../files/dxx-rebirth-0.59.100-sharepath.patch | 11 ++ games-action/dxx-rebirth/metadata.xml | 35 ++++++ 4 files changed, 183 insertions(+) diff --git a/games-action/dxx-rebirth/dxx-rebirth-0.59.100.ebuild b/games-action/dxx-rebirth/dxx-rebirth-0.59.100.ebuild new file mode 100644 index 0000000..be99ee8 --- /dev/null +++ b/games-action/dxx-rebirth/dxx-rebirth-0.59.100.ebuild @@ -0,0 +1,127 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=6 + +inherit eutils scons-utils + +MY_P=${PN}_v${PV}-src +DESCRIPTION="Descent Rebirth - enhanced Descent 1 & 2 engine" +HOMEPAGE="http://www.dxx-rebirth.com/" +SRC_URI="http://www.dxx-rebirth.com/download/dxx/${MY_P}.tar.gz + opl3-musicpack? ( + descent1? ( http://www.dxx-rebirth.com/download/dxx/res/d1xr-opl3-music.dxa ) + descent2? ( http://www.dxx-rebirth.com/download/dxx/res/d2xr-opl3-music.dxa ) ) + sc55-musicpack? ( + descent1? ( http://www.dxx-rebirth.com/download/dxx/res/d1xr-sc55-music.dxa ) + descent2? ( http://www.dxx-rebirth.com/download/dxx/res/d2xr-sc55-music.dxa ) ) + l10n_de? ( + descent1? ( http://www.dxx-rebirth.com/download/dxx/res/d1xr-briefings-ger.dxa ) + descent2? ( http://www.dxx-rebirth.com/download/dxx/res/d2xr-briefings-ger.dxa ) ) + textures? ( http://www.dxx-rebirth.com/download/dxx/res/d1xr-hires.dxa )" + +RESTRICT=mirror + +LICENSE="D1X GPL-2 public-domain" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="+data debug +descent1 +descent2 doc ipv6 l10n_de +music +opengl opl3-musicpack sc55-musicpack +textures" + +REQUIRED_USE="|| ( descent1 descent2 ) + ?? ( opl3-musicpack sc55-musicpack ) + opl3-musicpack? ( music ) + sc55-musicpack? ( music ) + textures ( descent1 )" + +DEPEND="dev-games/physfs[hog,mvl,zip] + media-libs/libsdl:0[X,sound,joystick,opengl?,video] + music? ( + media-libs/sdl-mixer:0[midi,timidity,vorbis] + ) + opengl? ( + virtual/opengl + virtual/glu + )" +RDEPEND="data? ( + descent1? ( || ( games-action/descent1-data games-action/descent1-demodata ) ) + descent2? ( || ( games-action/descent2-data games-action/descent2-demodata ) ) )" + +S="${WORKDIR}/${MY_P}" + +src_unpack() { + unpack ${MY_P}.tar.gz +} + +src_prepare() { + # * flags patch -- remove hardcoded '-g -O2' + # * sharepath patch -- change location of games' data from + # /usr/share/games/{d1x,d2x}-rebirth to /usr/share/games/{d1x,d2x} + PATCHES=("${FILESDIR}"/${P}-{flags,sharepath}.patch) + default +} + +src_compile() { + escons \ + verbosebuild=1 \ + prefix='/usr' \ + debug=$(usex debug 1 0) \ + ipv6=$(usex ipv6 1 0) \ + sdlmixer=$(usex music 1 0) \ + opengl=$(usex opengl 1 0) +} + +src_install() { + if use doc; then + docs=({CHANGELOG,INSTALL,README,RELEASE-NOTES}.txt) + dodoc COPYING.txt + fi + + for DV in 1 2; do + if ! use descent${DV}; then + continue + fi + + PROGRAM=d${DV}x-rebirth + + if use doc; then + docinto $PROGRAM + for d in ${docs[@]}; do + edos2unix $PROGRAM/${d} + dodoc $PROGRAM/${d} + done + fi + + insinto "/usr/share/games/d${DV}x" + use opl3-musicpack && doins "${DISTDIR}"/d${DV}xr-opl3-music.dxa + use sc55-musicpack && doins "${DISTDIR}"/d${DV}xr-sc55-music.dxa + use l10n_de && doins "${DISTDIR}"/d${DV}xr-briefings-ger.dxa + + dobin $PROGRAM/$PROGRAM + make_desktop_entry $PROGRAM "Descent ${DV} Rebirth" $PROGRAM + doicon $PROGRAM/$PROGRAM.xpm + done + + insinto "/usr/share/games/d1x" + use textures && doins "${DISTDIR}"/d1xr-hires.dxa +} + +pkg_postinst() { + if ! use data; then + elog + elog "To play the game enable USE=\"data\" or manually " + elog "copy the files to /usr/share/{d1x,d2x}." + elog "See /usr/share/doc/${PF}/INSTALL.txt.bz2 for details." + elog + fi + if use music; then + elog + elog "You need to enable one of alsa/oss/pulseaudio USE flags for" + elog "media-libs/libsdl package according to your sound system choice," + elog "if this USE flag isn't set globally." + elog + elog "For example:" + elog "echo 'media-libs/libsdl alsa' >> /etc/portage/package.use/alsa" + elog + fi +} diff --git a/games-action/dxx-rebirth/files/dxx-rebirth-0.59.100-flags.patch b/games-action/dxx-rebirth/files/dxx-rebirth-0.59.100-flags.patch new file mode 100644 index 0000000..75c3a64 --- /dev/null +++ b/games-action/dxx-rebirth/files/dxx-rebirth-0.59.100-flags.patch @@ -0,0 +1,10 @@ +--- dxx-rebirth_v0.59.100-src/SConstruct 2016-12-12 02:47:40.000000000 +0300 ++++ dxx-rebirth_v0.59.100-src/SConstruct 2016-12-28 02:11:16.657874914 +0300 +@@ -3488,7 +3488,6 @@ + env = self.env + user_settings = self.user_settings + +- env.Prepend(CXXFLAGS = ['-g', '-O2']) + # Raspberry Pi? + if user_settings.raspberrypi: + rpi_vc_path = user_settings.rpi_vc_path diff --git a/games-action/dxx-rebirth/files/dxx-rebirth-0.59.100-sharepath.patch b/games-action/dxx-rebirth/files/dxx-rebirth-0.59.100-sharepath.patch new file mode 100644 index 0000000..ee1b6bb --- /dev/null +++ b/games-action/dxx-rebirth/files/dxx-rebirth-0.59.100-sharepath.patch @@ -0,0 +1,11 @@ +--- dxx-rebirth_v0.59.100-src/SConstruct 2016-12-12 02:47:40.000000000 +0300 ++++ dxx-rebirth_v0.59.100-src/SConstruct 2016-12-29 19:26:58.987760410 +0300 +@@ -2875,7 +2875,7 @@ + return 'GLESv2' + return self.default_OGLES_LIB + def __default_DATA_DIR(self): +- return '%s/share/games/%s' % (self.prefix, self._program.target) ++ return '%s/share/games/%s' % (self.prefix, self._program.shortname) + def _generic_variable(key,help,default): + return (key, help, default) + def __get_configure_tests(tests,_filter=lambda s: s.name[0] != '_'): diff --git a/games-action/dxx-rebirth/metadata.xml b/games-action/dxx-rebirth/metadata.xml new file mode 100644 index 0000000..8d5766f --- /dev/null +++ b/games-action/dxx-rebirth/metadata.xml @@ -0,0 +1,35 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>totktonada...@gmail.com</email> + <name>Alexander Turenko</name> + </maintainer> + <longdescription> + Descent 1 is a classic first-person shooter released in 1995 by Interplay + and Parallax. Descent 2 released for the PC in 1996. It, along with its + predecessor, was one of the first games with true 3-dimensional graphics, + 6 degrees of freedom in movement, light sourcing, and the capability to + join multiplayer games on-the-fly. D1X-Rebirth and DXX-Rebirth are + modifications of the original Descent 1 and 2 sources that was released + by Parallax (and are based on the D1X and D2X sources). It offering + OpenGL graphics, advanced multiplayer, new features, and cross-platform + compatibility. Now code bases of D1X-Rebirth and DXX-Rebirth merged and + released as DXX-Rebirth. + </longdescription> + <use> + <flag name="descent1">Install Descent 1 resources and executable</flag> + <flag name="descent2">Install Descent 2 resources and executable</flag> + <flag name="l10n_de">Provides German translations for the game's + briefings, robot descriptions, and outro of the original campaign</flag> + <flag name="opl3-musicpack">Include alternate version of the game's + music, recorded with the Yamaha YMF262 OPL3 soundchip</flag> + <flag name="sc55-musicpack">Include alternate version of the game's + music, recorded with the Roland Sound Canvas SC-55 MIDI module</flag> + <flag name="textures">Include high resolution (640x480) backgrounds, + briefing images and fonts (Descent 1)</flag> + <flag name="music">Adds music support</flag> + <flag name="data">Install data files</flag> + <flag name="doc">Install documentation files (README.txt, INSTALL.txt, etc)</flag> + </use> +</pkgmetadata>