aboutsummaryrefslogtreecommitdiffstats
path: root/games
diff options
context:
space:
mode:
Diffstat (limited to 'games')
-rw-r--r--games/Makefile1
-rw-r--r--games/stonesoup/Makefile80
-rw-r--r--games/stonesoup/distinfo3
-rw-r--r--games/stonesoup/files/README.FreeBSD.in5
-rw-r--r--games/stonesoup/files/patch-AppHdr.h22
-rw-r--r--games/stonesoup/files/patch-makefile.unix119
-rw-r--r--games/stonesoup/files/patch-makefile.x11151
-rw-r--r--games/stonesoup/files/patch-rltiles_bmp2png_makefile.lin12
-rw-r--r--games/stonesoup/files/patch-rltiles_makefile.unix33
-rw-r--r--games/stonesoup/files/patch-util_lua_src_Makefile11
-rw-r--r--games/stonesoup/files/patch-util_sqlite_Makefile16
-rw-r--r--games/stonesoup/pkg-descr8
-rw-r--r--games/stonesoup/pkg-plist110
13 files changed, 571 insertions, 0 deletions
diff --git a/games/Makefile b/games/Makefile
index 39b735ae14ca..308d813c42cd 100644
--- a/games/Makefile
+++ b/games/Makefile
@@ -756,6 +756,7 @@
SUBDIR += starlanes
SUBDIR += stepbill
SUBDIR += stepmania-devel
+ SUBDIR += stonesoup
SUBDIR += stormbaancoureur
SUBDIR += stransball2
SUBDIR += stratagus
diff --git a/games/stonesoup/Makefile b/games/stonesoup/Makefile
new file mode 100644
index 000000000000..d31dae57e37a
--- /dev/null
+++ b/games/stonesoup/Makefile
@@ -0,0 +1,80 @@
+# New ports collection makefile for: dcss
+# Date created: 2008-07-11
+# Whom: Tobias Rehbein <tobias.rehbein@web.de>
+#
+# $FreeBSD$
+#
+
+PORTNAME= stonesoup
+PORTVERSION= 0.4.1
+CATEGORIES= games
+MASTER_SITES= SF
+MASTER_SITE_SUBDIR= crawl-ref
+DISTNAME= stone_soup-${PORTVERSION}-src
+EXTRACT_SUFX= .tbz2
+
+MAINTAINER= tobias.rehbein@web.de
+COMMENT= Dungeon Crawl Stone Soup - a fun, free rogue-like game
+
+USE_BISON= build
+USE_GMAKE= yes
+MAKE_ENV= CC=${CC} CXX=${CXX}
+
+SAVEDIR?= /var/games/${PORTNAME}
+WRKSRC= ${WRKDIR}/${DISTNAME}/source/
+
+SUB_FILES= README.FreeBSD
+PLIST_SUB= SAVEDIR="${SAVEDIR}"
+
+OPTIONS= X11 "X11 support" off \
+ SOUND "sound support" off \
+ LUA_BINDINGS "LUA bindings for user scripts" on
+
+.include <bsd.port.pre.mk>
+
+.if defined(WITH_X11)
+USE_XORG= x11
+LIB_DEPENDS+= png.5:${PORTSDIR}/graphics/png
+MAKEFILE= makefile.x11
+PLIST_SUB+= X11=""
+.else
+MAKEFILE= makefile.unix
+PLIST_SUB+= X11="@comment "
+.endif
+
+.if defined(WITH_SOUND)
+RUN_DEPENDS+= sox:${PORTSDIR}/audio/sox
+.endif
+
+post-patch:
+ @${REINPLACE_CMD} -e "s,%%MAKEFILE_SEL%%,${MAKEFILE_SEL}," ${WRKSRC}/makefile
+.for makefile in makefile.unix makefile.x11
+ @${REINPLACE_CMD} -e "s,%%PREFIX%%,${PREFIX}," ${WRKSRC}/${makefile}
+ @${REINPLACE_CMD} -e "s,%%DATADIR%%,${DATADIR}," ${WRKSRC}/${makefile}
+ @${REINPLACE_CMD} -e "s,%%SAVEDIR%%,${SAVEDIR}," ${WRKSRC}/${makefile}
+ @${REINPLACE_CMD} -e "s,%%LOCALBASE%%,${LOCALBASE}," ${WRKSRC}/${makefile}
+.if defined(WITHOUT_LUA_BINDINGS)
+ @${REINPLACE_CMD} -e "s,-DCLUA_BINDINGS,," ${WRKSRC}/${makefile}
+.endif
+.endfor
+ @${REINPLACE_CMD} -e "s,%%LOCALBASE%%,${LOCALBASE}," ${WRKSRC}/AppHdr.h
+.if defined(WITH_SOUND)
+ @${REINPLACE_CMD} -e "s,%%SOUND%%,," ${WRKSRC}/AppHdr.h
+.else
+ @${REINPLACE_CMD} -e "s,%%SOUND%%,// ," ${WRKSRC}/AppHdr.h
+.endif
+
+post-install:
+.if !defined(NOPORTDOCS)
+ ${MKDIR} ${DOCSDIR}
+.for doc in CREDITS README.txt licence.txt
+ ${INSTALL_DATA} ${WRKDIR}/${DISTNAME}/${doc} ${DOCSDIR}
+.endfor
+ ${INSTALL_DATA} ${WRKDIR}/README.FreeBSD ${DOCSDIR}
+.endif
+.if !defined(NOPORTEXAMPLES)
+ ${MKDIR} ${EXAMPLESDIR}
+ ${INSTALL_DATA} ${DATADIR}/settings/init.txt ${EXAMPLESDIR}/sample.crawlrc
+.endif
+
+.include <bsd.port.post.mk>
diff --git a/games/stonesoup/distinfo b/games/stonesoup/distinfo
new file mode 100644
index 000000000000..297594dcc646
--- /dev/null
+++ b/games/stonesoup/distinfo
@@ -0,0 +1,3 @@
+MD5 (stone_soup-0.4.1-src.tbz2) = 9df29d976edd96018fdb7eb0a70a7ba8
+SHA256 (stone_soup-0.4.1-src.tbz2) = 4d465990014eb9527ba4060de5c05b69ae9dd4bcb87bf5706162a660ec3c335c
+SIZE (stone_soup-0.4.1-src.tbz2) = 3241684
diff --git a/games/stonesoup/files/README.FreeBSD.in b/games/stonesoup/files/README.FreeBSD.in
new file mode 100644
index 000000000000..0e560601b584
--- /dev/null
+++ b/games/stonesoup/files/README.FreeBSD.in
@@ -0,0 +1,5 @@
+The end-user documentation for ``Dungeon Crawl Stone Soup`` can be found in
+
+ %%DATADIR%%/docs
+
+Happy crawling!
diff --git a/games/stonesoup/files/patch-AppHdr.h b/games/stonesoup/files/patch-AppHdr.h
new file mode 100644
index 000000000000..5541c983fc4f
--- /dev/null
+++ b/games/stonesoup/files/patch-AppHdr.h
@@ -0,0 +1,22 @@
+--- AppHdr.h.orig 2008-07-14 04:17:51.000000000 +0200
++++ AppHdr.h 2008-07-17 10:34:43.000000000 +0200
+@@ -146,7 +146,7 @@
+ // setuid or setgid. Filenames passed to this command *are not
+ // validated in any way*.
+ //
+- // #define SOUND_PLAY_COMMAND "/usr/bin/play -v .5 %s 2>/dev/null &"
++ %%SOUND%%#define SOUND_PLAY_COMMAND "%%LOCALBASE%%/bin/play -v .5 %s 2>/dev/null &"
+
+ // For cases when the game will be played on terms that don't support the
+ // curses "bold == lighter" 16 colour mode. -- bwr
+@@ -408,8 +408,8 @@
+ // PACKAGE_SUFFIX is used when the package file name is needed
+ //
+ // Comment these lines out if you want to leave the save files uncompressed.
+- #define SAVE_PACKAGE_CMD "/usr/bin/zip -m -q -j -1 %s.zip %s.*"
+- #define LOAD_UNPACKAGE_CMD "/usr/bin/unzip -q -o %s.zip -d %s"
++ // #define SAVE_PACKAGE_CMD "/usr/bin/zip -m -q -j -1 %s.zip %s.*"
++ // #define LOAD_UNPACKAGE_CMD "/usr/bin/unzip -q -o %s.zip -d %s"
+
+ #ifdef SAVE_PACKAGE_CMD
+ // This is used to unpack specific files from the archive.
diff --git a/games/stonesoup/files/patch-makefile.unix b/games/stonesoup/files/patch-makefile.unix
new file mode 100644
index 000000000000..965a94e5f8cd
--- /dev/null
+++ b/games/stonesoup/files/patch-makefile.unix
@@ -0,0 +1,119 @@
+--- makefile.unix.orig 2008-07-14 04:17:51.000000000 +0200
++++ makefile.unix 2008-07-18 08:49:37.000000000 +0200
+@@ -4,7 +4,7 @@
+ # Modified for Crawl Reference by $Author: ennewalker $ on $Date: 2008-07-04T22:50:41.915156Z $
+ #
+
+-GAME = crawl
++GAME = stonesoup
+
+ # this file contains a list of the libraries.
+ # it will make a variable called OBJECTS that contains all the libraries
+@@ -12,7 +12,6 @@
+
+ OBJECTS += libunix.o
+
+-CXX = g++
+ DELETE = rm -f
+ COPY = cp
+ OS_TYPE = UNIX
+@@ -37,15 +36,15 @@
+ MCHMOD_SAVEDIR := 775
+
+ # The user:group to install the game as.
+-INSTALL_UGRP ?= games:games
+-INSTALLDIR ?= /usr/games/crawl
++INSTALL_UGRP ?= root:games
++INSTALLDIR ?= %%PREFIX%%/bin
+
+ # If you're installing Crawl for multiple users, you *must* set this to a
+ # valid path before building Crawl. This is not necessary if you are building
+ # Crawl for a single user.
+
+-# SAVEDIR := /usr/games/crawl/saves/
+-# DATADIR := /usr/games/crawl/data/
++SAVEDIR := %%SAVEDIR%%/
++DATADIR := %%DATADIR%%/
+
+ LEX := flex
+ YACC := bison -y
+@@ -58,7 +57,7 @@
+ NDBM_FILE := /usr/include/ndbm.h
+
+ HAVE_DBH := $(shell [ -f $(DBH_FILE) ] && echo y)
+-HAVE_NDBM := $(shell [ -f $(NDBM_FILE) -a "`uname`" = "Darwin" ] && echo y)
++HAVE_NDBM := $(shell [ -f $(NDBM_FILE) -a \( "`uname`" = "Darwin" -o "`uname`" = "FreeBSD" \) ] && echo y)
+
+ ifeq ($(strip $(HAVE_DBH)),y)
+ ifneq ($(shell grep dbm_open $(DBH_FILE)),)
+@@ -70,9 +69,11 @@
+ ifeq ($(strip $(HAVE_NDBM)),y)
+ SELDBM ?= -DDB_NDBM
+ ifeq ($(SELDBM),-DDB_NDBM)
++ifneq ($(shell echo "`uname`"),FreeBSD)
+ LIBDBM := -ldbm
+ endif
+ endif
++endif
+
+ SQLSRC := util/sqlite
+ SQLLIB := sqlite3
+@@ -89,17 +90,8 @@
+
+ INCLUDES := $(INCLUDES) -Iutil -I. -I$(LUASRC) $(EXTRA_INCLUDES)
+
+-CFWARN := -Wall -Wwrite-strings -Wshadow -pedantic
+-
+ CFOTHERS := -fsigned-char -D$(OS_TYPE) $(EXTRA_FLAGS) -DCLUA_BINDINGS
+
+-ifneq ($(HURRY),y)
+-ifneq ($(DEBUG_CRAWL),y)
+-CFWARN += -Wuninitialized
+-CFOTHERS += -O2
+-endif
+-endif
+-
+ ifneq ($(strip $(SAVEDIR)),)
+ CFOTHERS += '-DSAVE_DIR_PATH="$(strip $(SAVEDIR))"'
+ endif
+@@ -138,8 +130,8 @@
+
+ CFOTHERS += $(SELDBM)
+
+-CFLAGS := $(INCLUDES) $(CFWARN) $(CFOTHERS)
+-YCFLAGS := $(INCLUDES) $(CFOTHERS)
++LOCAL_CXXFLAGS := $(INCLUDES) $(CFWARN) $(CXXFLAGS) $(CFOTHERS)
++YCFLAGS := $(INCLUDES) $(CXXFLAGS) $(CFOTHERS)
+
+ UTIL = util/
+
+@@ -181,7 +173,7 @@
+ rm -f $(DEPENDENCY_MKF)
+ @for i in $^; do \
+ echo "Updating dependencies for $$i"; \
+- $(CXX) -MM $(CFLAGS) $$i >>$(DEPENDENCY_MKF) 2>/dev/null; \
++ $(CXX) -MM $(LOCAL_CXXFLAGS) $$i >>$(DEPENDENCY_MKF) 2>/dev/null; \
+ done
+
+ -include $(DEPENDENCY_MKF)
+@@ -277,16 +269,16 @@
+ $(DELETE) $(DEPENDENCY_MKF)
+
+ $(GAME): $(GAME_DEPENDS)
+- ${CXX} ${LDFLAGS} $(CFLAGS) $(OBJECTS) -o $(GAME) $(LIB)
++ ${CXX} ${LDFLAGS} $(LOCAL_CXXFLAGS) $(OBJECTS) -o $(GAME) $(LIB)
+
+ debug: $(GAME_DEPENDS)
+- ${CXX} ${LDFLAGS} $(CFLAGS) $(OBJECTS) -o $(GAME) $(LIB)
++ ${CXX} ${LDFLAGS} $(LOCAL_CXXFLAGS) $(OBJECTS) -o $(GAME) $(LIB)
+
+ profile: $(GAME_DEPENDS)
+- ${CXX} -g -p ${LDFLAGS} $(CFLAGS) $(OBJECTS) -o $(GAME) $(LIB)
++ ${CXX} -g -p ${LDFLAGS} $(LOCAL_CXXFLAGS) $(OBJECTS) -o $(GAME) $(LIB)
+
+ .cc.o:
+- ${CXX} ${CFLAGS} -c $<
++ ${CXX} ${LOCAL_CXXFLAGS} -c $<
+
+ # [ds] Note we don't use the standard CFLAGS here; that's intentional, most
+ # flex/bison combos I've tried don't produce code that passes the warnings
diff --git a/games/stonesoup/files/patch-makefile.x11 b/games/stonesoup/files/patch-makefile.x11
new file mode 100644
index 000000000000..d0ed6668307c
--- /dev/null
+++ b/games/stonesoup/files/patch-makefile.x11
@@ -0,0 +1,151 @@
+--- makefile.x11.orig 2008-07-14 04:17:51.000000000 +0200
++++ makefile.x11 2008-07-18 08:49:37.000000000 +0200
+@@ -4,7 +4,7 @@
+ # Modified for Crawl Reference by $Author: dshaligram $ on $Date: 2007-06-24T16:27:58.475101Z $
+ #
+
+-GAME = crawl
++GAME = stonesoup
+
+ # this file contains a list of the libraries.
+ # it will make a variable called OBJECTS that contains all the libraries
+@@ -12,7 +12,6 @@
+
+ OBJECTS += libgui.o tile1.o tile2.o libx11.o guic.o guic-x11.o
+
+-CXX = g++
+ DELETE = rm -f
+ COPY = cp
+ OS_TYPE = UNIX
+@@ -22,8 +21,13 @@
+ PNG_INCLUDE := -I/sw/include
+ PNG_LIB := -L/sw/lib
+ else
++ifneq ($(shell echo "`uname`"),FreeBSD)
+ PNG_INCLUDE :=
+ PNG_LIB :=
++else
++PNG_INCLUDE := -I%%LOCALBASE%%/include
++PNG_LIB := -L%%LOCALBASE%%/lib
++endif
+ endif
+
+ # If you have lex and yacc, set DOYACC to y (lowercase y).
+@@ -36,15 +40,15 @@
+ MCHMOD_SAVEDIR := 775
+
+ # The user:group to install the game as.
+-INSTALL_UGRP ?= games:games
+-INSTALLDIR ?= /usr/games/crawl
++INSTALL_UGRP ?= root:games
++INSTALLDIR ?= %%PREFIX%%/bin
+
+ # If you're installing Crawl for multiple users, you *must* set this to a
+ # valid path before building Crawl. This is not necessary if you are building
+ # Crawl for a single user.
+
+-# SAVEDIR := /usr/games/crawl/saves/
+-# DATADIR := /usr/games/crawl/data/
++SAVEDIR := %%SAVEDIR%%/
++DATADIR := %%DATADIR%%/
+
+ LEX := flex
+ YACC := bison -y
+@@ -57,7 +61,7 @@
+ NDBM_FILE := /usr/include/ndbm.h
+
+ HAVE_DBH := $(shell [ -f $(DBH_FILE) ] && echo y)
+-HAVE_NDBM := $(shell [ -f $(NDBM_FILE) -a "`uname`" = "Darwin" ] && echo y)
++HAVE_NDBM := $(shell [ -f $(NDBM_FILE) -a \( "`uname`" = "Darwin" -o "`uname`" = "FreeBSD" \) ] && echo y)
+
+ ifeq ($(strip $(HAVE_DBH)),y)
+ ifneq ($(shell grep dbm_open $(DBH_FILE)),)
+@@ -69,9 +73,11 @@
+ ifeq ($(strip $(HAVE_NDBM)),y)
+ SELDBM ?= -DDB_NDBM
+ ifeq ($(SELDBM),-DDB_NDBM)
++ifneq ($(shell echo "`uname`"),FreeBSD)
+ LIBDBM := -ldbm
+ endif
+ endif
++endif
+
+ SQLSRC := util/sqlite
+ SQLLIB := sqlite3
+@@ -88,17 +94,8 @@
+
+ INCLUDES := $(INCLUDES) -Iutil -I. -I$(LUASRC) $(EXTRA_INCLUDES) $(PNG_INCLUDE)
+
+-CFWARN := -Wall -Wwrite-strings -Wshadow -pedantic
+-
+ CFOTHERS := -fsigned-char -D$(OS_TYPE) $(EXTRA_FLAGS) -DCLUA_BINDINGS
+
+-ifneq ($(HURRY),y)
+-ifneq ($(DEBUG_CRAWL),y)
+-CFWARN += -Wuninitialized
+-CFOTHERS += -O2
+-endif
+-endif
+-
+ ifneq ($(strip $(SAVEDIR)),)
+ CFOTHERS += '-DSAVE_DIR_PATH="$(strip $(SAVEDIR))"'
+ endif
+@@ -109,8 +106,8 @@
+
+ CFOTHERS += $(SELDBM)
+
+-CFLAGS := $(INCLUDES) $(CFWARN) $(CFOTHERS)
+-YCFLAGS := $(INCLUDES) $(CFOTHERS)
++LOCAL_CXXFLAGS := $(INCLUDES) $(CFWARN) $(CXXFLAGS) $(CFOTHERS)
++YCFLAGS := $(INCLUDES) $(CXXFLAGS) $(CFOTHERS)
+
+ UTIL = util/
+
+@@ -170,7 +167,7 @@
+ rm -f $(DEPENDENCY_MKF)
+ @for i in $^; do \
+ echo "Updating dependencies for $$i"; \
+- $(CXX) -MM $(CFLAGS) $$i >>$(DEPENDENCY_MKF) 2>/dev/null; \
++ $(CXX) -MM $(LOCAL_CXXFLAGS) $$i >>$(DEPENDENCY_MKF) 2>/dev/null; \
+ done
+
+ -include $(DEPENDENCY_MKF)
+@@ -215,7 +212,7 @@
+ $(ORIGTILEHEADERS): makerltiles
+
+ makerltiles:
+- cd $(RLTILES) && make -f makefile.unix all CFLAGS="$(PNG_INCLUDE)" LDFLAGS="$(PNG_LIB)" && cd ..
++ cd $(RLTILES) && gmake -f makefile.unix all CFLAGS="$(CFLAGS) $(PNG_INCLUDE)" LDFLAGS="$(PNG_LIB)" && cd ..
+
+ $(TILEHEADERS): $(ORIGTILEHEADERS)
+ cp $(RLTILES)$@ .
+@@ -227,7 +224,7 @@
+ $(COPY) $< $@
+
+ clean-rltiles:
+- cd $(RLTILES) && make -f makefile.unix distclean && cd ..
++ cd $(RLTILES) && gmake -f makefile.unix distclean && cd ..
+ $(DELETE) $(TILEHEADERS)
+
+ ##########################################################################
+@@ -293,16 +290,16 @@
+ $(DELETE) $(DEPENDENCY_MKF)
+
+ $(GAME): $(GAME_DEPENDS)
+- ${CXX} ${LDFLAGS} $(CFLAGS) $(OBJECTS) -o $(GAME) $(LIB)
++ ${CXX} ${LDFLAGS} $(LOCAL_CXXFLAGS) $(OBJECTS) -o $(GAME) $(LIB)
+
+ debug: $(GAME_DEPENDS)
+- ${CXX} ${LDFLAGS} $(CFLAGS) $(OBJECTS) -o $(GAME) $(LIB)
++ ${CXX} ${LDFLAGS} $(LOCAL_CXXFLAGS) $(OBJECTS) -o $(GAME) $(LIB)
+
+ profile: $(GAME_DEPENDS)
+- ${CXX} -g -p ${LDFLAGS} $(CFLAGS) $(OBJECTS) -o $(GAME) $(LIB)
++ ${CXX} -g -p ${LDFLAGS} $(LOCAL_CXXFLAGS) $(OBJECTS) -o $(GAME) $(LIB)
+
+ .cc.o:
+- ${CXX} ${CFLAGS} -c $<
++ ${CXX} ${LOCAL_CXXFLAGS} -c $<
+
+ # [ds] Note we don't use the standard CFLAGS here; that's intentional, most
+ # flex/bison combos I've tried don't produce code that passes the warnings
diff --git a/games/stonesoup/files/patch-rltiles_bmp2png_makefile.lin b/games/stonesoup/files/patch-rltiles_bmp2png_makefile.lin
new file mode 100644
index 000000000000..29658ecec3c0
--- /dev/null
+++ b/games/stonesoup/files/patch-rltiles_bmp2png_makefile.lin
@@ -0,0 +1,12 @@
+--- rltiles/bmp2png/makefile.lin.orig 2008-07-18 08:50:02.000000000 +0200
++++ rltiles/bmp2png/makefile.lin 2008-07-18 08:50:58.000000000 +0200
+@@ -8,8 +8,7 @@
+ BINDIR = /usr/local/bin
+ endif
+
+-CC = gcc
+-LD = gcc
++LD = $(CC)
+ ifndef INSTALL
+ INSTALL = install -s -m 755
+ endif
diff --git a/games/stonesoup/files/patch-rltiles_makefile.unix b/games/stonesoup/files/patch-rltiles_makefile.unix
new file mode 100644
index 000000000000..30a76d8a8bf5
--- /dev/null
+++ b/games/stonesoup/files/patch-rltiles_makefile.unix
@@ -0,0 +1,33 @@
+--- rltiles/makefile.unix.orig 2008-07-14 04:17:52.000000000 +0200
++++ rltiles/makefile.unix 2008-07-18 08:50:43.000000000 +0200
+@@ -12,7 +12,6 @@
+ B2P = bmp2png
+ B2PTOOL = $(B2PSRC)$(B2P)
+
+-CC = cc
+ DELETE = rm -f
+
+ OBJECTS = \
+@@ -104,11 +103,11 @@
+ #
+
+ $(B2PTOOL):
+- cd $(B2PSRC) && make -f makefile.lin $(B2P) && cd ..
++ cd $(B2PSRC) && gmake -f makefile.lin $(B2P) && cd ..
+
+ %.png: %.bmp $(B2PTOOL)
+ $(DELETE) $@
+- $(B2PTOOL) -Q $<
++ $(B2PTOOL) -X -Q $<
+
+ ##########################################################################
+ # Cleaning...
+@@ -117,7 +116,7 @@
+ clean:
+ $(DELETE) $(OBJECTS)
+ $(DELETE) $(ALLTOOLS)
+- cd $(B2PSRC) && make -f makefile.lin clean && cd ..
++ cd $(B2PSRC) && gmake -f makefile.lin clean && cd ..
+
+ distclean: clean
+ $(DELETE) $(GENERATEDBMP)
diff --git a/games/stonesoup/files/patch-util_lua_src_Makefile b/games/stonesoup/files/patch-util_lua_src_Makefile
new file mode 100644
index 000000000000..d67eaf9c266e
--- /dev/null
+++ b/games/stonesoup/files/patch-util_lua_src_Makefile
@@ -0,0 +1,11 @@
+--- util/lua/src/Makefile.orig 2008-07-14 04:17:51.000000000 +0200
++++ util/lua/src/Makefile 2008-07-18 08:49:37.000000000 +0200
+@@ -9,8 +9,6 @@
+ # Your platform. See PLATS for possible values.
+ PLAT= none
+
+-CC= gcc
+-CFLAGS= -O2 -Wall $(MYCFLAGS)
+ AR= ar rcu
+ RANLIB= ranlib
+ RM= rm -f
diff --git a/games/stonesoup/files/patch-util_sqlite_Makefile b/games/stonesoup/files/patch-util_sqlite_Makefile
new file mode 100644
index 000000000000..c43a36ec5403
--- /dev/null
+++ b/games/stonesoup/files/patch-util_sqlite_Makefile
@@ -0,0 +1,16 @@
+--- util/sqlite/Makefile.orig 2008-07-14 04:17:51.000000000 +0200
++++ util/sqlite/Makefile 2008-07-18 08:50:23.000000000 +0200
+@@ -4,12 +4,11 @@
+
+ LIBSQL = libsqlite3.a
+ AR = ar rcu
+-CC = gcc
+ RANLIB = ranlib
+ RM_F = rm -f
+
+ # Omit SQLite features we don't need.
+-CFLAGS = -DSQLITE_OMIT_AUTHORIZATION \
++CFLAGS += -DSQLITE_OMIT_AUTHORIZATION \
+ -DSQLITE_OMIT_AUTOVACUUM \
+ -DSQLITE_OMIT_COMPLETE \
+ -DSQLITE_OMIT_BLOB_LITERAL \
diff --git a/games/stonesoup/pkg-descr b/games/stonesoup/pkg-descr
new file mode 100644
index 000000000000..379fd1ad88e4
--- /dev/null
+++ b/games/stonesoup/pkg-descr
@@ -0,0 +1,8 @@
+Dungeon Crawl Stone Soup is a fun, free rogue-like 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 is a variant of Linley's Dungeon Crawl that's openly
+developed and invites participation from the Crawl community.
+
+WWW: http://crawl-ref.sourceforge.net/
diff --git a/games/stonesoup/pkg-plist b/games/stonesoup/pkg-plist
new file mode 100644
index 000000000000..08fc3aafb020
--- /dev/null
+++ b/games/stonesoup/pkg-plist
@@ -0,0 +1,110 @@
+bin/stonesoup
+%%DATADIR%%/dat/lua/chnkdata.lua
+%%DATADIR%%/dat/lua/trapwalk.lua
+%%DATADIR%%/dat/lua/stash.lua
+%%DATADIR%%/dat/lua/safechnk.lua
+%%DATADIR%%/dat/lua/runrest.lua
+%%DATADIR%%/dat/lua/pickup.lua
+%%DATADIR%%/dat/lua/kills.lua
+%%DATADIR%%/dat/lua/gearset.lua
+%%DATADIR%%/dat/lua/eat.lua
+%%DATADIR%%/dat/lua/wield.lua
+%%DATADIR%%/dat/clua/dungeon.lua
+%%DATADIR%%/dat/clua/macro.lua
+%%DATADIR%%/dat/clua/luamark.lua
+%%DATADIR%%/dat/clua/loadmaps.lua
+%%DATADIR%%/dat/clua/lm_tmsg.lua
+%%DATADIR%%/dat/clua/lm_timed.lua
+%%DATADIR%%/dat/clua/lm_props.lua
+%%DATADIR%%/dat/clua/lm_pdesc.lua
+%%DATADIR%%/dat/clua/lm_fog.lua
+%%DATADIR%%/dat/clua/lm_flags.lua
+%%DATADIR%%/dat/clua/lm_1way.lua
+%%DATADIR%%/dat/clua/userbase.lua
+%%DATADIR%%/dat/descript/ability.txt
+%%DATADIR%%/dat/descript/spells.txt
+%%DATADIR%%/dat/descript/skills.txt
+%%DATADIR%%/dat/descript/monsters.txt
+%%DATADIR%%/dat/descript/items.txt
+%%DATADIR%%/dat/descript/gods.txt
+%%DATADIR%%/dat/descript/features.txt
+%%DATADIR%%/dat/descript/branches.txt
+%%DATADIR%%/dat/descript/unident.txt
+%%DATADIR%%/dat/database/godspeak.txt
+%%DATADIR%%/dat/database/shout.txt
+%%DATADIR%%/dat/database/randname.txt
+%%DATADIR%%/dat/database/rand_wpn.txt
+%%DATADIR%%/dat/database/rand_arm.txt
+%%DATADIR%%/dat/database/rand_all.txt
+%%DATADIR%%/dat/database/monspeak.txt
+%%DATADIR%%/dat/database/monname.txt
+%%DATADIR%%/dat/database/miscname.txt
+%%DATADIR%%/dat/database/insult.txt
+%%DATADIR%%/dat/database/help.txt
+%%DATADIR%%/dat/database/wpnnoise.txt
+%%DATADIR%%/dat/altar.des
+%%DATADIR%%/dat/vaults.des
+%%DATADIR%%/dat/temple.des
+%%DATADIR%%/dat/portal.des
+%%DATADIR%%/dat/pan.des
+%%DATADIR%%/dat/orc.des
+%%DATADIR%%/dat/mini.des
+%%DATADIR%%/dat/layout.des
+%%DATADIR%%/dat/large.des
+%%DATADIR%%/dat/lair.des
+%%DATADIR%%/dat/lab.des
+%%DATADIR%%/dat/hive.des
+%%DATADIR%%/dat/hells.des
+%%DATADIR%%/dat/float.des
+%%DATADIR%%/dat/entry.des
+%%DATADIR%%/dat/elf.des
+%%DATADIR%%/dat/crypt.des
+%%DATADIR%%/dat/bazaar.des
+%%DATADIR%%/dat/zot.des
+%%X11%%%%DATADIR%%/dat/tiles/wall2d.png
+%%X11%%%%DATADIR%%/dat/tiles/title.png
+%%X11%%%%DATADIR%%/dat/tiles/tile.png
+%%X11%%%%DATADIR%%/dat/tiles/player.png
+%%DATADIR%%/settings/034_command_keys.txt
+%%DATADIR%%/settings/tiles_options.txt
+%%DATADIR%%/settings/standard_colours.txt
+%%DATADIR%%/settings/messages.txt
+%%DATADIR%%/settings/menu_colours.txt
+%%DATADIR%%/settings/init.txt
+%%DATADIR%%/settings/food_colouring.txt
+%%DATADIR%%/settings/autopickup_exceptions.txt
+%%DATADIR%%/settings/034_monster_glyphs.txt
+%%DATADIR%%/settings/travel_stoppers.txt
+%%DATADIR%%/docs/034_changes.txt
+%%DATADIR%%/docs/ssh_guide.txt
+%%DATADIR%%/docs/quickstart.txt
+%%DATADIR%%/docs/pcre_license.txt
+%%DATADIR%%/docs/options_guide.txt
+%%DATADIR%%/docs/mt19937.txt
+%%DATADIR%%/docs/monster_speech.txt
+%%DATADIR%%/docs/macros_guide.txt
+%%DATADIR%%/docs/lualicense.txt
+%%DATADIR%%/docs/level_design.txt
+%%DATADIR%%/docs/crawl_manual.txt
+%%DATADIR%%/docs/coding_conventions.txt
+%%DATADIR%%/docs/aptitudes.txt
+%%DATADIR%%/docs/tiles_help.txt
+@exec chown -R root:games %D/%%DATADIR%%
+@exec install -d -o root -g games -m 775 %%SAVEDIR%%
+%%PORTDOCS%%%%DOCSDIR%%/CREDITS
+%%PORTDOCS%%%%DOCSDIR%%/README.txt
+%%PORTDOCS%%%%DOCSDIR%%/licence.txt
+%%PORTDOCS%%%%DOCSDIR%%/README.FreeBSD
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/sample.crawlrc
+@dirrm %%DATADIR%%/dat/lua
+@dirrm %%DATADIR%%/dat/clua
+@dirrm %%DATADIR%%/dat/descript
+@dirrm %%DATADIR%%/dat/database
+%%X11%%@dirrm %%DATADIR%%/dat/tiles/
+@dirrm %%DATADIR%%/dat
+@dirrm %%DATADIR%%/settings
+@dirrm %%DATADIR%%/docs
+@dirrm %%DATADIR%%/
+@unexec rmdir %%SAVEDIR%% >/dev/null 2>&1 || echo 'stonesoup save-game directory (%%SAVEDIR%%) not removed due to existing save games. If you are permanently removing this port, you should do a ``rm -rf %%SAVEDIR%%``.' | fmt
+%%PORTDOCS%%@dirrm %%DOCSDIR%%
+%%PORTEXAMPLES%%@dirrm %%EXAMPLESDIR%%