summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'games-engines/gargoyle/gargoyle-2011.1-r1.ebuild')
-rw-r--r--games-engines/gargoyle/gargoyle-2011.1-r1.ebuild118
1 files changed, 118 insertions, 0 deletions
diff --git a/games-engines/gargoyle/gargoyle-2011.1-r1.ebuild b/games-engines/gargoyle/gargoyle-2011.1-r1.ebuild
new file mode 100644
index 00000000000..82e11b23782
--- /dev/null
+++ b/games-engines/gargoyle/gargoyle-2011.1-r1.ebuild
@@ -0,0 +1,118 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+# Regarding licenses: libgarglk is licensed under the GPLv2. Bundled
+# interpreters are licensed under GPLv2, BSD or MIT license, except:
+# - glulxe: custom license, see "terps/glulxle/README"
+# - hugo: custom license, see "licenses/HUGO License.txt"
+# Since we don't compile or install any of the bundled fonts, their licenses
+# don't apply. (Fonts are installed through dependencies instead.)
+
+EAPI=6
+inherit eutils flag-o-matic gnome2-utils multilib multiprocessing toolchain-funcs
+
+DESCRIPTION="An Interactive Fiction (IF) player supporting all major formats"
+HOMEPAGE="http://ccxvii.net/gargoyle/"
+SRC_URI="https://garglk.googlecode.com/files/${P}-sources.zip"
+
+LICENSE="BSD GPL-2 MIT Hugo Glulxe"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="
+ media-fonts/libertine
+ media-fonts/liberation-fonts
+ media-libs/freetype:2
+ media-libs/libpng:0
+ media-libs/sdl-mixer
+ media-libs/sdl-sound[modplug,mp3,vorbis]
+ sys-libs/zlib
+ virtual/jpeg:0
+ x11-libs/gtk+:2"
+DEPEND="${RDEPEND}
+ app-arch/unzip
+ dev-util/ftjam
+ virtual/pkgconfig"
+
+S=${WORKDIR}
+
+src_prepare() {
+ # Substitute custom CFLAGS/LDFLAGS.
+ sed -i -e \
+ "/^\s*OPTIM = / {
+ s/ \(-O.*\)\? ;/ ;/
+ a LINKFLAGS = ${LDFLAGS} ;
+ a SHRLINKFLAGS = ${LDFLAGS} ;
+ }" Jamrules || die
+
+ # Don't link against libraries used indirectly through SDL_sound.
+ sed -i -e "/GARGLKLIBS/s/-lsmpeg -lvorbisfile//g" Jamrules || die
+
+ # Convert garglk.ini to UNIX format.
+ edos2unix garglk/garglk.ini
+
+ epatch "${FILESDIR}"/${P}-desktopfile.patch
+ append-cflags -std=gnu89 # build with gcc5 (bug #573378)
+ append-cxxflags -std=gnu++11 # code assumes C++11 semantics (bug #642996)
+ default
+}
+
+src_compile() {
+ # build system messes up flags and toolchain completely
+ # append flags to compiler commands to have consistent behavior
+ jam \
+ -sAR="$(tc-getAR) cru" \
+ -sCC="$(tc-getCC) ${CFLAGS}" \
+ -sCCFLAGS="" \
+ -sC++="$(tc-getCXX) ${CXXFLAGS}" \
+ -sCXX="$(tc-getCXX) ${CXXFLAGS}" \
+ -sC++FLAGS="" \
+ -sGARGLKINI="/etc/garglk.ini" \
+ -sUSESDL=yes \
+ -sBUNDLEFONTS=no \
+ -dx \
+ -j$(makeopts_jobs) || die
+}
+
+src_install() {
+ DESTDIR="${D}" \
+ _BINDIR="/usr/libexec/${PN}" \
+ _APPDIR="/usr/libexec/${PN}" \
+ _LIBDIR="/usr/$(get_libdir)" \
+ EXEMODE=755 \
+ FILEMODE=755 \
+ jam install || die
+
+ # Install config file.
+ insinto "/etc"
+ newins garglk/garglk.ini garglk.ini
+
+ # Install application entry and icon.
+ domenu garglk/${PN}.desktop
+ doicon -s 32 garglk/${PN}-house.png
+
+ # Symlink binaries to avoid name clashes.
+ for terp in advsys agility alan2 alan3 frotz geas git glulxe hugo jacl \
+ level9 magnetic nitfol scare tadsr
+ do
+ dosym "../libexec/${PN}/${terp}" \
+ "/usr/bin/${PN}-${terp}"
+ done
+
+ # Also symlink the main binary since it resides in libexec.
+ dosym "../libexec/${PN}/${PN}" \
+ "/usr/bin/${PN}"
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}