summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoreroen <eroen@occam.eroen.eu>2016-01-21 10:08:35 +0100
committereroen <eroen@occam.eroen.eu>2016-01-21 22:55:37 +0100
commita7b1a6b95ade8754206b72d9812301b9b67edbff (patch)
treed9f2c9324a98bc4a2bf76756aba79f92e0dae852 /games-simulation
parentdfhack - use.mask stonesense (diff)
downloaderoen-a7b1a6b95ade8754206b72d9812301b9b67edbff.tar.gz
eroen-a7b1a6b95ade8754206b72d9812301b9b67edbff.tar.bz2
eroen-a7b1a6b95ade8754206b72d9812301b9b67edbff.zip
dwarffortress-0.42.04 from gentoo
Diffstat (limited to 'games-simulation')
-rw-r--r--games-simulation/dwarffortress/Manifest1
-rw-r--r--games-simulation/dwarffortress/dwarffortress-0.42.04.ebuild94
-rw-r--r--games-simulation/dwarffortress/files/Makefile32
-rw-r--r--games-simulation/dwarffortress/files/dwarffortress2.sh24
4 files changed, 151 insertions, 0 deletions
diff --git a/games-simulation/dwarffortress/Manifest b/games-simulation/dwarffortress/Manifest
index 5c8d615..fcc81a8 100644
--- a/games-simulation/dwarffortress/Manifest
+++ b/games-simulation/dwarffortress/Manifest
@@ -16,3 +16,4 @@ DIST df_40_21_linux.tar.bz2 12914932 SHA256 211cd8ce6f9cd56c892bc5c4fe72da29dd8e
DIST df_40_22_linux.tar.bz2 12917753 SHA256 9ba6e9c978e0e076662f5d312a669e5d949366aca9c2c216f1c53c7a74f1b0f1 SHA512 dd226e7f9d8a1358bc0a09c6eb6747b8f6ef166b4c29db30ffaba2cc771499ffafd8f56fa6b1cf06409fc0d35258c1bc485a44ce76aa9f622a122e5fa252de0f WHIRLPOOL f1923a130b42602d1ea5fb640537ac483ba578a5e9f76534ae7525a6a507ccaa37659b498a6bca5cfad27e4c40da523fef2388f8a605824886355dea54a5d528
DIST df_40_23_linux.tar.bz2 12918538 SHA256 94dd3b91e3c4e2de1fdf1a99dcc13f7067dc250e40a7f9fef9fa35a65358f289 SHA512 c74f28805802812c55df9f10cf2fff60b3803382391df7f9253e80418ad971bc6d1ab7d5e248803fbd4b59492836e578a4ee83050755288263631ce5cb3fc408 WHIRLPOOL b509ed1b474686f6696b6a949509972001d3d5ec80bf349af483d7e5c84e86d6e80152bba832fe1655933595852abb380740c10d75942af47b5fb799e829f2ba
DIST df_40_24_linux.tar.bz2 12921246 SHA256 da37c6263a679123e6ac57fe0dd6def11f1d61efee3c5913de09495c88ce9234 SHA512 2242e471b7dbc996e819e2f74b2bbfda30a9a301755bc025ddcccdffdd3afe2e48bbedca31a332283ef829d023069398e57d6a87e26c582ddbce4a67ff7fd755 WHIRLPOOL 03cb652a2564d2b0c809be8252f7754d893f69ac1b95124ea108ed0fde9ac742c498d9e369339775695861e430a2ded0741b018f85551d48731730f98303dc69
+DIST df_42_04_linux.tar.bz2 13776171 SHA256 f281f7e8b477abe37cc1423258be2ea56b5c1d12b0843ed3a66994ce0e7924ce SHA512 d0b3bf0311e70c6f823d216e002d2acc62ebdeb540cfd79c5cf91d53612f6acee802321c65b3926db688b055f5b865aa1256f29a82ef769c5fab65bd42c383b5 WHIRLPOOL 859a2fddf9a72ac2c05d64cff01fdd3c9658ce57eecb34991fbd9cbd51ae007c56bc61e9aac76ec837734593c89d822868c15c641416a82f142af40425ef666b
diff --git a/games-simulation/dwarffortress/dwarffortress-0.42.04.ebuild b/games-simulation/dwarffortress/dwarffortress-0.42.04.ebuild
new file mode 100644
index 0000000..b0b9b37
--- /dev/null
+++ b/games-simulation/dwarffortress/dwarffortress-0.42.04.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils games multilib versionator
+
+MY_PV=$(replace_all_version_separators _ "$(get_version_component_range 2-)")
+MY_PN=df
+MY_P=${MY_PN}_${MY_PV}
+
+DESCRIPTION="A single-player fantasy game"
+HOMEPAGE="http://www.bay12games.com/dwarves"
+SRC_URI="http://www.bay12games.com/dwarves/${MY_P}_linux.tar.bz2"
+
+LICENSE="free-noncomm BSD BitstreamVera"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 -*"
+IUSE="debug"
+
+RDEPEND="media-libs/glew[abi_x86_32(-)]
+ media-libs/libsdl[abi_x86_32(-),opengl,video,X]
+ media-libs/libsndfile[abi_x86_32(-),alsa]
+ media-libs/sdl-image[abi_x86_32(-),jpeg,png,tiff]
+ media-libs/sdl-ttf[abi_x86_32(-)]
+ sys-libs/zlib[abi_x86_32(-)]
+ virtual/glu[abi_x86_32(-)]
+ x11-libs/gtk+:2[abi_x86_32(-)]"
+# Yup, openal and ncurses are only needed at compile-time; the code dlopens it at runtime
+# if requested.
+DEPEND="${RDEPEND}
+ media-libs/openal[abi_x86_32(-)]
+ sys-libs/ncurses[abi_x86_32(-),unicode]
+ virtual/pkgconfig
+ x11-proto/kbproto[abi_x86_32(-)]
+ x11-proto/xproto[abi_x86_32(-)]"
+
+S=${WORKDIR}/${MY_PN}_linux
+
+gamesdir="${GAMES_PREFIX_OPT}/${PN}"
+QA_PRESTRIPPED="${gamesdir}/libs/Dwarf_Fortress"
+RESTRICT="strip"
+
+pkg_setup() {
+ games_pkg_setup
+
+ multilib_toolchain_setup x86
+}
+
+src_prepare() {
+ rm libs/*.so*
+ cp "${FILESDIR}"/{dwarf-fortress,Makefile} .
+ epatch_user
+}
+
+src_configure() {
+ tc-export CXX PKG_CONFIG
+ CXXFLAGS+=" -D$(use debug || echo N)DEBUG"
+}
+
+src_compile() {
+ default
+ sed -i -e "s:^gamesdir=.*:gamesdir=${gamesdir}:" ${PN} || die
+}
+
+src_install() {
+ # install data-files and libs
+ insinto "${gamesdir}"
+ doins -r raw data libs
+
+ # install our wrapper
+ dogamesbin ${PN}
+
+ # install docs
+ dodoc README.linux *.txt
+
+ prepgamesdirs
+
+ fperms 750 "${gamesdir}"/libs/Dwarf_Fortress
+}
+
+pkg_postinst() {
+ elog "System-wide Dwarf Fortress has been installed to ${gamesdir}. This is"
+ elog "symlinked to ~/.dwarf-fortress when dwarf-fortress is run."
+ elog "For more information on what exactly is replaced, see ${GAMES_BINDIR}/${PN}."
+ elog "Note: This means that the primary entry point is ${GAMES_BINDIR}/${PN}."
+ elog "Do not run ${gamesdir}/libs/Dwarf_Fortress."
+ elog
+ elog "Optional runtime dependencies: install sys-libs/ncurses[$(use amd64 && echo "abi_x86_32,")unicode]"
+ elog "for [PRINT_MODE:TEXT]. Install media-libs/openal$(use amd64 && echo "[abi_x86_32]") for audio output."
+ elog
+ games_pkg_postinst
+}
diff --git a/games-simulation/dwarffortress/files/Makefile b/games-simulation/dwarffortress/files/Makefile
new file mode 100644
index 0000000..66e6401
--- /dev/null
+++ b/games-simulation/dwarffortress/files/Makefile
@@ -0,0 +1,32 @@
+# Copyright 2014-2015 Alex Xu (Hello71)
+# Distributed under the terms of the GNU General Public License v2
+
+PKG_CONFIG ?= pkg-config
+PKG_CONFIG_PATH ?= /usr/lib32/pkgconfig:/usr/lib/pkgconfig
+PKG_CONFIG := PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) $(PKG_CONFIG)
+
+SRCS := g_src/basics.cpp g_src/command_line.cpp g_src/enabler.cpp \
+ g_src/files.cpp g_src/find_files_posix.cpp g_src/graphics.cpp \
+ g_src/init.cpp g_src/interface.cpp g_src/keybindings.cpp \
+ g_src/music_and_sound_openal.cpp g_src/random.cpp g_src/textlines.cpp \
+ g_src/enabler_input.cpp g_src/KeybindingScreen.cpp \
+ g_src/win32_compat.cpp g_src/textures.cpp g_src/resize++.cpp \
+ g_src/renderer_offscreen.cpp g_src/ttf_manager.cpp
+OBJS := $(SRCS:.cpp=.o)
+
+BLIBS := ncursesw openal sndfile
+LIBS := glew glu gtk+-2.0 sdl SDL_image SDL_ttf zlib
+CXXFLAGS ?= -O2 -pipe -Wall -Wextra
+CXXFLAGS += -m32 $(shell $(PKG_CONFIG) --cflags $(BLIBS) $(LIBS)) -Dunix -Dlinux -fPIC -std=c++11 -D_GLIBCXX_USE_CXX11_ABI=0
+LDLIBS := $(shell $(PKG_CONFIG) --libs $(LIBS))
+
+LG := libs/libgraphics.so
+
+all: $(LG)
+$(LG): $(OBJS)
+ $(LINK.cpp) -shared $^ $(LDLIBS) -o $@
+
+clean:
+ $(RM) $(LG) $(OBJS)
+
+.PHONY: clean
diff --git a/games-simulation/dwarffortress/files/dwarffortress2.sh b/games-simulation/dwarffortress/files/dwarffortress2.sh
new file mode 100644
index 0000000..8594e0b
--- /dev/null
+++ b/games-simulation/dwarffortress/files/dwarffortress2.sh
@@ -0,0 +1,24 @@
+#!/bin/sh
+
+gamesdir=/opt/dwarf-fortress
+install="$HOME/.dwarf-fortress"
+
+do_install() {
+ cp -rn "$gamesdir"/data "$install"/
+ # DF gets unhappy when this is out of sync
+ cp -f "$gamesdir"/data/index "$install"/data/
+ cp -rsn "$gamesdir"/* "$install"/
+}
+
+if [[ -d "$install" ]]; then
+ # delete dangling symlinks
+ find -L "$install/" -type l -delete
+ # ignore "are the same file" errors
+ do_install 2>/dev/null
+else
+ mkdir "$install" || exit
+ do_install || exit
+fi
+
+cd "$install" || exit
+exec ./libs/Dwarf_Fortress "$@"