diff options
author | Chris Reffett <creffett@gentoo.org> | 2015-04-19 01:40:24 +0000 |
---|---|---|
committer | Chris Reffett <creffett@gentoo.org> | 2015-04-19 01:40:24 +0000 |
commit | 084fb59f3222f01b2a8eb3b99257bbea3cf386e3 (patch) | |
tree | 5688f2d770311d08ba3a0a0dba4dfa0cc71e6590 /games-roguelike | |
parent | Mask multilib package games-roguelike/dwarf-fortress on no-multilib profile (diff) | |
download | gentoo-2-084fb59f3222f01b2a8eb3b99257bbea3cf386e3.tar.gz gentoo-2-084fb59f3222f01b2a8eb3b99257bbea3cf386e3.tar.bz2 gentoo-2-084fb59f3222f01b2a8eb3b99257bbea3cf386e3.zip |
Commit new proxy-maintained ebuild wrt bug 290294
(Portage version: 2.2.18/cvs/Linux x86_64, signed Manifest commit with key 0xD1BAB6B528DB029C)
Diffstat (limited to 'games-roguelike')
-rw-r--r-- | games-roguelike/dwarf-fortress/ChangeLog | 10 | ||||
-rw-r--r-- | games-roguelike/dwarf-fortress/dwarf-fortress-0.40.24.ebuild | 93 | ||||
-rw-r--r-- | games-roguelike/dwarf-fortress/files/Makefile | 32 | ||||
-rw-r--r-- | games-roguelike/dwarf-fortress/files/dwarf-fortress | 24 | ||||
-rw-r--r-- | games-roguelike/dwarf-fortress/metadata.xml | 15 |
5 files changed, 174 insertions, 0 deletions
diff --git a/games-roguelike/dwarf-fortress/ChangeLog b/games-roguelike/dwarf-fortress/ChangeLog new file mode 100644 index 000000000000..9afab1b261dc --- /dev/null +++ b/games-roguelike/dwarf-fortress/ChangeLog @@ -0,0 +1,10 @@ +# ChangeLog for games-roguelike/dwarf-fortress +# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/games-roguelike/dwarf-fortress/ChangeLog,v 1.1 2015/04/19 01:40:24 creffett Exp $ + +*dwarf-fortress-0.40.24 (19 Apr 2015) + + 19 Apr 2015; Chris Reffett <creffett@gentoo.org> + +dwarf-fortress-0.40.24.ebuild, +files/Makefile, +files/dwarf-fortress, + +metadata.xml: + Commit new proxy-maintained ebuild wrt bug 290294 diff --git a/games-roguelike/dwarf-fortress/dwarf-fortress-0.40.24.ebuild b/games-roguelike/dwarf-fortress/dwarf-fortress-0.40.24.ebuild new file mode 100644 index 000000000000..d096adab2b37 --- /dev/null +++ b/games-roguelike/dwarf-fortress/dwarf-fortress-0.40.24.ebuild @@ -0,0 +1,93 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/games-roguelike/dwarf-fortress/dwarf-fortress-0.40.24.ebuild,v 1.1 2015/04/19 01:40:24 creffett Exp $ + +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" + +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-roguelike/dwarf-fortress/files/Makefile b/games-roguelike/dwarf-fortress/files/Makefile new file mode 100644 index 000000000000..a0453a50f7c4 --- /dev/null +++ b/games-roguelike/dwarf-fortress/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 +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-roguelike/dwarf-fortress/files/dwarf-fortress b/games-roguelike/dwarf-fortress/files/dwarf-fortress new file mode 100644 index 000000000000..8594e0bcefaf --- /dev/null +++ b/games-roguelike/dwarf-fortress/files/dwarf-fortress @@ -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 "$@" diff --git a/games-roguelike/dwarf-fortress/metadata.xml b/games-roguelike/dwarf-fortress/metadata.xml new file mode 100644 index 000000000000..c9a8db431846 --- /dev/null +++ b/games-roguelike/dwarf-fortress/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>proxy-maintainers</herd> +<maintainer> + <email>alex_y_xu@yahoo.ca</email> + <name>Alex Xu</name> + <description>proxied maintainer, please assign bugs to</description> +</maintainer> +<maintainer> + <email>creffett@gentoo.org</email> + <name>Chris Reffett</name> + <description>maintainer, please CC on bugs</description> +</maintainer> +</pkgmetadata> |