games-roguelike/dungeon-crawl-stone-soup: cleanup

This commit is contained in:
Julian Ospald 2016-03-15 23:29:28 +01:00
parent aa974f860f
commit b98b205bf1
No known key found for this signature in database
GPG Key ID: 511B62C09D50CD28
4 changed files with 0 additions and 269 deletions

View File

@ -1,138 +0,0 @@
# Copyright 2011 Elias Pipping <pipping@exherbo.org>
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require gtk-icon-cache game
MY_PN=stone_soup
MY_PNV=${MY_PN}-${PV}
SUMMARY="Single-player, role-playing roguelike game"
DESCRIPTION="
Dungeon Crawl Stone Soup is a free roguelike game of exploration
and treasure-hunting in dungeons filled with dangerous and
unfriendly monsters in a quest for the mystifyingly fabulous Orb
of Zot.
Dungeon Crawl Stone Soup has diverse species and many different
character backgrounds to choose from, deep tactical game-play,
sophisticated magic, religion and skill systems, and a grand
variety of monsters to fight and run from, making each game
unique and challenging.
Dungeon Crawl Stone Soup can be played offline, or online on a
public telnet/ssh server thanks to the good folks at
crawl.akrasiac.org (CAO) and crawl.develz.org (CDO). These public
servers allow you to meet other players ghosts, watch other people
playing, and, in general, have a blast!
"
HOMEPAGE="https://crawl.develz.org/wordpress/"
DOWNLOADS="https://crawl.develz.org/release/${MY_PNV}-nodeps.tar.xz"
LICENCES="
GPL-2
BSD-3 [[ note = [ mt19937ar.cc, MSVC/stdint.h ] ]]
BSD-2 [[ note = [ all contributions by Steve Noonan and Jesse Luehrs ] ]]
public-domain [[ note = [ most of tiles ] ]]
CC0 [[ note = [ most of tiles ] ]]
MIT [[ note = [ json.cc/json.h, some .js files in
webserver/static/scripts/contrib/ ] ]]
"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS="
tiles [[ description = [ Do graphical (tiled) build instead of
ncurses build ] ]]
"
RESTRICT="test" # lots of sydbox access violations
DEPENDENCIES="
build:
dev-lang/perl:*
sys-devel/bison
sys-devel/flex
virtual/pkg-config
tiles? ( sys-libs/ncurses )
build+run:
dev-db/sqlite:3
dev-lang/lua:5.1
sys-libs/zlib
!tiles? ( sys-libs/ncurses )
tiles? (
fonts/dejavu
media-libs/freetype:2
media-libs/libpng:=
media-libs/SDL:2[X]
media-libs/SDL_image:2
x11-dri/glu
x11-dri/mesa
)
"
WORK=${WORKBASE}/${MY_PNV}/source
MY_SAVEDIR=/var/lib/games/${MY_PN}
# merged upstream: https://github.com/crawl/crawl/pull/237
DEFAULT_SRC_PREPARE_PATCHES=(
-p3 "${FILES}"/0001-${PV}-MAKE-use-PKGCONFIG-to-get-ncurses-flags-if-available.patch
-p3 "${FILES}"/0002-${PV}-MAKE-always-use-PKGCONFIG-instead-of-pkg-config.patch
-p3 "${FILES}"/0003-${PV}-MAKE-allow-to-skip-automagic-gold-linker-detection.patch
)
DEFAULT_SRC_COMPILE_PARAMS=(
DATADIR="/usr/share/${PN}"
SAVEDIR=${MY_SAVEDIR}
DESTDIR="${IMAGE}"
bin_prefix="${IMAGE}/usr/$(exhost --target)/bin"
prefix_fp=""
prefix="/usr"
USE_LUAJIT=
BUILD_ALL=
NO_TRY_GOLD=y
V=1
INSTALL_UGRP=wizard:games
MCHMOD=ug+s
EXTERNAL_FLAGS="${CXXFLAGS}"
EXTERNAL_LDFLAGS="${LDFLAGS}"
AR="${AR}"
RANLIB="${RANLIB}"
CC="${CC}"
CXX="${CXX}"
PKGCONFIG="${PKG_CONFIG}"
STRIP=echo
)
src_compile() {
export HOSTCXX=${CXX} GXX=${CXX}
emake "${DEFAULT_SRC_COMPILE_PARAMS[@]}" \
$(option tiles "TILES=y" "")
}
src_install() {
emake "${DEFAULT_SRC_COMPILE_PARAMS[@]}" \
$(option tiles "TILES=y" "") \
install
keepdir ${MY_SAVEDIR}/morgue
keepdir ${MY_SAVEDIR}/saves/db
preserve_scores "${IMAGE}"${MY_SAVEDIR}
dovarlibgames -R
}
pkg_preinst() {
game_pkg_preinst
gtk-icon-cache_pkg_preinst
}
pkg_postinst() {
game_pkg_postinst
gtk-icon-cache_pkg_postinst
}

View File

@ -1,49 +0,0 @@
From fd26eed89bbe3f980b76df379eb0d44c02e48918 Mon Sep 17 00:00:00 2001
From: Julian Ospald <hasufell@posteo.de>
Date: Fri, 19 Feb 2016 16:02:11 +0100
Subject: [PATCH] MAKE: use PKGCONFIG to get ncurses flags, if available
This fixes build failures on some distributions:
https://bugs.gentoo.org/show_bug.cgi?id=527034
---
crawl-ref/source/Makefile | 22 ++++++++++++++++------
1 file changed, 16 insertions(+), 6 deletions(-)
diff --git a/crawl-ref/source/Makefile b/crawl-ref/source/Makefile
index e9c54db..88ad7f8 100644
--- a/crawl-ref/source/Makefile
+++ b/crawl-ref/source/Makefile
@@ -1013,17 +1013,27 @@ endif
# Your ncurses library may include Unicode support, and you may not have a
# separate libncursesw; this is the case on Mac OS/Darwin.
ifdef LIBNCURSES_IS_UNICODE
-NC_LIB = ncurses
-NC_INCLUDE = $(NC_PREFIX)/include/ncurses
+ ifndef NO_PKGCONFIG
+ NC_LIBS = $(shell $(PKGCONFIG) --libs ncurses 2>/dev/null || echo "-L$(NC_PREFIX)/lib -lncurses")
+ NC_CFLAGS = $(shell $(PKGCONFIG) --cflags ncurses 2>/dev/null || echo "-isystem $(NC_PREFIX)/include/ncurses")
+ else
+ NC_LIBS = -L$(NC_PREFIX)/lib -lncurses
+ NC_CFLAGS = -isystem $(NC_PREFIX)/include/ncurses
+ endif
else
-NC_LIB = ncursesw
-NC_INCLUDE = $(NC_PREFIX)/include/ncursesw
+ ifndef NO_PKGCONFIG
+ NC_LIBS = $(shell $(PKGCONFIG) --libs ncursesw || echo "-L$(NC_PREFIX)/lib -lncursesw")
+ NC_CFLAGS = $(shell $(PKGCONFIG) --cflags ncursesw 2>/dev/null || echo "-isystem $(NC_PREFIX)/include/ncursesw")
+ else
+ NC_LIBS = -L$(NC_PREFIX)/lib -lncursesw
+ NC_CFLAGS = -isystem $(NC_PREFIX)/include/ncursesw
+ endif
endif
-INCLUDES_L += -isystem $(NC_INCLUDE)
+CFOTHERS_L += $(NC_CFLAGS)
ifndef TILES
-LIBS += -L$(NC_PREFIX)/lib -l$(NC_LIB)
+LIBS += $(NC_LIBS)
endif
endif

View File

@ -1,48 +0,0 @@
From 4c94a6bea47048a707ea86d17d36ac1161a99c76 Mon Sep 17 00:00:00 2001
From: Julian Ospald <hasufell@posteo.de>
Date: Fri, 19 Feb 2016 12:34:07 +0100
Subject: [PATCH] MAKE: always use $(PKGCONFIG) instead of pkg-config
This fixes build failures on distributions that use special
binary prefixes and PATHs.
---
crawl-ref/source/Makefile | 2 +-
crawl-ref/source/rltiles/Makefile | 5 +++--
2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/crawl-ref/source/Makefile b/crawl-ref/source/Makefile
index 88ad7f8..266c3da 100644
--- a/crawl-ref/source/Makefile
+++ b/crawl-ref/source/Makefile
@@ -605,7 +605,7 @@ endif
#
ifndef NO_PKGCONFIG
-ifeq ($(shell which pkg-config 2> /dev/null),)
+ifeq ($(shell which $(PKGCONFIG) 2> /dev/null),)
NO_PKGCONFIG = YesPlease
endif
endif
diff --git a/crawl-ref/source/rltiles/Makefile b/crawl-ref/source/rltiles/Makefile
index 98e01ec..3d97d7a 100644
--- a/crawl-ref/source/rltiles/Makefile
+++ b/crawl-ref/source/rltiles/Makefile
@@ -10,6 +10,7 @@ endif
# Also, cross-compilation with no system libraries for host rather than target
# is not supported. If host=target, contribs are enough.
+PKGCONFIG = pkg-config
CFLAGS := -O2 $(STDFLAG) -g -Wall -Wextra -Wno-parentheses -Wno-unused-parameter
ifdef ANDROID
@@ -20,8 +21,8 @@ endif
ifdef TILES
ifndef NO_PKGCONFIG
- PNG_INCLUDE := $(shell pkg-config libpng --cflags 2> /dev/null || echo "-I../contrib/install/$(ARCH)/include")
- PNG_LIB := $(shell pkg-config libpng --libs 2> /dev/null || echo "../contrib/install/$(ARCH)/lib/libpng.a ../contrib/install/$(ARCH)/lib/libz.a")
+ PNG_INCLUDE := $(shell $(PKGCONFIG) libpng --cflags 2> /dev/null || echo "-I../contrib/install/$(ARCH)/include")
+ PNG_LIB := $(shell $(PKGCONFIG) libpng --libs 2> /dev/null || echo "../contrib/install/$(ARCH)/lib/libpng.a ../contrib/install/$(ARCH)/lib/libz.a")
else
PNG_INCLUDE := -I../contrib/install/$(ARCH)/include
PNG_LIB := ../contrib/install/$(ARCH)/lib/libpng.a ../contrib/install/$(ARCH)/lib/libz.a

View File

@ -1,34 +0,0 @@
From cf5b5111a5bb69ec154f0bd3e96dc53e14d93cbd Mon Sep 17 00:00:00 2001
From: Julian Ospald <hasufell@posteo.de>
Date: Fri, 19 Feb 2016 14:03:41 +0100
Subject: [PATCH] MAKE: allow to skip automagic gold linker detection
This causes build failures on exherbo otherwise.
---
crawl-ref/source/Makefile | 3 +++
1 file changed, 3 insertions(+)
diff --git a/crawl-ref/source/Makefile b/crawl-ref/source/Makefile
index 266c3da..e7c60ac 100644
--- a/crawl-ref/source/Makefile
+++ b/crawl-ref/source/Makefile
@@ -46,6 +46,7 @@
# USE_ICC -- set to use Intel's compiler
# LTO -- set for better optimization but slower compilation,
# requires gcc4.6+
+# NO_TRY_GOLD -- if set don't try to detect a working gold linker
# NOASSERTS -- set to disable assertion checks (ignored in debug mode)
# NOWIZARD -- set to disable wizard mode. Use if you have untrusted
# remote players without DGL.
@@ -1058,9 +1059,11 @@ CFWARN := -wd383,810,869,981,1418 -we14,193,304
CFWARN_L :=
endif
+ifndef NO_TRY_GOLD
ifeq (,$(shell echo 'int main(){return 1;}'|$(GXX) -x c++ - -o /dev/null -fuse-ld=gold 2>&1))
LDFLAGS += -fuse-ld=gold
endif
+endif
LDFLAGS += $(CFOPTIMIZE) $(CFOPTIMIZE_L) $(EXTERNAL_LDFLAGS)