I took a stab at updating the port for Dungeon Crawl Stone Soup
(games/stone-soup). A couple things worth mentioning about my attached attempt:

The existing patch to upstream's Makefile to replace hardocded "5.1"s with
MODLUA_DEP_VERSION didn't seem necessary; the build system tries its best to
find an installed lua 5.1 and OpenBSD's is picked up. Lua 5.2 and 5.3 are
evidently not supported so I don't think finagling the port module into
upstream's build tool buys flexibility or safety.

The build now requires python and py-yaml to generate a header from some data
files; I've added lang/python to MODULES and textproc/py-yaml to the build
deps, and taken advantage of the shebang-adjustment hook. python2.7 and
python3.6, with matching textproc/py-yaml, both run the script in question just
fine, so the port builds with either supported MODPY_VERSION.

The default (tiles) flavor and the no_x11 flavor both build on amd64, are
playable, can read one another's saves, etc. I'll have to leave it to a better
roguelike player to test that the whole game is playable.

I don't mind missing the port lock as this is my first attempt at submitting an
update, so there'll probably be developmental feedback. For instance I'm sure
I've gotten whitespace wrong somewhere.

Regards,
Evan Silberman


Index: Makefile
===================================================================
RCS file: /cvs/ports/games/stone-soup/Makefile,v
retrieving revision 1.34
diff -u -p -r1.34 Makefile
--- Makefile    27 Jun 2018 21:03:49 -0000      1.34
+++ Makefile    4 Apr 2019 06:18:38 -0000
@@ -7,11 +7,10 @@ CATEGORIES =  games
 
 HOMEPAGE =     http://crawl.develz.org/
 MASTER_SITES =         https://crawl.develz.org/release/${VERSION:R}/
-VERSION =      0.18.1
+VERSION =      0.23.2
 DISTNAME=      stone_soup-${VERSION}-nodeps
 EXTRACT_SUFX=  .tar.xz
 PKGNAME=       stone-soup-${VERSION}
-REVISION=      1
 
 WRKDIST =      ${WRKDIR}/stone_soup-${VERSION}
 WRKSRC =       ${WRKDIST}/source
@@ -29,13 +28,19 @@ MAKE_FLAGS =        CC="${CC}" GCC="${GCC}" GX
                SAVEDIR="~/.crawl" \
                NO_YACC=1 V=1
 
-MAKE_ENV +=    MODLUA_DEP_VERSION=${MODLUA_DEP_VERSION}
 COMPILER =     base-clang ports-gcc
-MODULES =      lang/lua
+MODULES =      lang/python \
+               lang/lua
 MODLUA_VERSION =       5.1
 WANTLIB =      c m ${MODLUA_WANTLIB} sqlite3 ${COMPILER_LIBCXX}
 
-BUILD_DEPENDS = graphics/pngcrush
+MODPY_RUN_DEPENDS =    No
+CONFIGURE_STYLE = none
+MODPY_ADJ_FILES = util/species-gen.py
+
+BUILD_DEPENDS = graphics/pngcrush \
+               textproc/py-yaml${MODPY_FLAVOR}
+
 LIB_DEPENDS =  databases/sqlite3
 
 # License GPLv2+
Index: distinfo
===================================================================
RCS file: /cvs/ports/games/stone-soup/distinfo,v
retrieving revision 1.5
diff -u -p -r1.5 distinfo
--- distinfo    1 Oct 2016 12:56:54 -0000       1.5
+++ distinfo    4 Apr 2019 06:18:38 -0000
@@ -1,2 +1,2 @@
-SHA256 (stone_soup-0.18.1-nodeps.tar.xz) = 
S9rXd4+IqZRwxyX/dKgUW91gAy+a5Izll/dLiueE2FA=
-SIZE (stone_soup-0.18.1-nodeps.tar.xz) = 9716104
+SHA256 (stone_soup-0.23.2-nodeps.tar.xz) = 
KgCWIZX1t6TC+9H8XvWX7rfgT6C576RxrggZCDEEgcM=
+SIZE (stone_soup-0.23.2-nodeps.tar.xz) = 11046032
Index: patches/patch-source_Makefile
===================================================================
RCS file: /cvs/ports/games/stone-soup/patches/patch-source_Makefile,v
retrieving revision 1.4
diff -u -p -r1.4 patch-source_Makefile
--- patches/patch-source_Makefile       27 May 2017 16:41:41 -0000      1.4
+++ patches/patch-source_Makefile       4 Apr 2019 06:18:38 -0000
@@ -14,10 +14,10 @@ Index: source/Makefile
        STRIP := strip -x
 @@ -325,11 +322,8 @@ endif
  #
- ifndef NO_APPLE_GCC
+ ifndef NO_APPLE_PLATFORM
  ifeq ($(uname_S),Darwin)
 -ifneq ($(shell gcc -v 2>&1 | grep Apple),)
--APPLE_GCC = YesPlease
+-APPLE_PLATFORM = YesPlease
  endif
  endif
 -endif
@@ -40,39 +40,6 @@ Index: source/Makefile
  
  ifneq ($(FORCE_CC),)
  GCC := $(FORCE_CC)
-@@ -639,9 +625,9 @@ ifndef BUILD_LUA
-       BUILD_LUA = yes
-     endif
-   else
--    ifneq ($(shell $(PKGCONFIG) lua5.1 --exists || echo no),)
--      ifneq ($(shell $(PKGCONFIG) lua-5.1 --exists || echo no),)
--        ifneq ($(shell $(PKGCONFIG) lua --exists || echo no),)
-+    ifneq ($(shell $(PKGCONFIG) lua --exists || echo no),)
-+      ifneq ($(shell $(PKGCONFIG) lua${MODLUA_DEP_VERSION} --exists || echo 
no),)
-+        ifneq ($(shell $(PKGCONFIG) lua${MODLUA_DEP_VERSION} --exists || echo 
no),)
-           BUILD_LUA = yes
-         else
-           ifeq ($(shell $(PKGCONFIG) lua --modversion | head -c 3),5.1)
-@@ -651,16 +637,16 @@ ifndef BUILD_LUA
-           endif
-         endif
-       else
--        LUA_PACKAGE = lua-5.1
-+        LUA_PACKAGE = lua${MODLUA_DEP_VERSION}
-       endif
-     else
--      LUA_PACKAGE = lua5.1
-+      LUA_PACKAGE = lua${MODLUA_DEP_VERSION}
-     endif
-   endif
- endif
- ifndef BUILD_LUA
-   ifndef LUA_PACKAGE
--    LUA_PACKAGE = lua5.1
-+    LUA_PACKAGE = lua${MODLUA_DEP_VERSION}
-   endif
-   INCLUDES_L += $(shell $(PKGCONFIG) $(LUA_PACKAGE) --cflags-only-I | sed -e 
's/-I/-isystem /')
-   CFLAGS_L  += $(shell $(PKGCONFIG) $(LUA_PACKAGE) --cflags-only-other)
 @@ -673,7 +659,7 @@ endif
  
  ifndef BUILD_SQLITE
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/games/stone-soup/pkg/PLIST,v
retrieving revision 1.6
diff -u -p -r1.6 PLIST
--- pkg/PLIST   1 Oct 2016 12:56:54 -0000       1.6
+++ pkg/PLIST   4 Apr 2019 06:18:38 -0000
@@ -6,8 +6,8 @@ share/crawl/dat/
 share/crawl/dat/clua/
 share/crawl/dat/clua/autofight.lua
 share/crawl/dat/clua/automagic.lua
+share/crawl/dat/clua/delays.lua
 share/crawl/dat/clua/kills.lua
-share/crawl/dat/clua/runrest.lua
 share/crawl/dat/clua/stash.lua
 share/crawl/dat/database/
 share/crawl/dat/database/FAQ.txt
@@ -86,9 +86,11 @@ share/crawl/dat/des/branches/spider.des
 share/crawl/dat/des/branches/swamp.des
 share/crawl/dat/des/branches/tar.des
 share/crawl/dat/des/branches/temple.des
+share/crawl/dat/des/branches/temple_compat.des
 share/crawl/dat/des/branches/tomb.des
 share/crawl/dat/des/branches/vaults.des
 share/crawl/dat/des/branches/vaults_rooms_empty.des
+share/crawl/dat/des/branches/vaults_rooms_ghost.des
 share/crawl/dat/des/branches/vaults_rooms_hard.des
 share/crawl/dat/des/branches/vaults_rooms_standard.des
 share/crawl/dat/des/branches/zot.des
@@ -121,8 +123,9 @@ share/crawl/dat/des/guide.txt
 share/crawl/dat/des/portals/
 share/crawl/dat/des/portals/bailey.des
 share/crawl/dat/des/portals/bazaar.des
+share/crawl/dat/des/portals/desolation.des
+share/crawl/dat/des/portals/gauntlet.des
 share/crawl/dat/des/portals/icecave.des
-share/crawl/dat/des/portals/lab.des
 share/crawl/dat/des/portals/ossuary.des
 share/crawl/dat/des/portals/sewer.des
 share/crawl/dat/des/portals/trove.des
@@ -141,6 +144,7 @@ share/crawl/dat/des/serial/gnoll_camp.de
 share/crawl/dat/des/serial/ice.des
 share/crawl/dat/des/serial/magic_research.des
 share/crawl/dat/des/serial/park.des
+share/crawl/dat/des/serial/rivers.des
 share/crawl/dat/des/serial/serial_guide.txt
 share/crawl/dat/des/serial/sigils.des
 share/crawl/dat/des/serial/undead.des
@@ -160,10 +164,8 @@ share/crawl/dat/des/test.des
 share/crawl/dat/des/test/suite-los.des
 share/crawl/dat/des/test/suite.des
 share/crawl/dat/des/traps/
-share/crawl/dat/des/traps/boulders.des
-share/crawl/dat/des/traps/grate.des
+share/crawl/dat/des/traps/monster_drop.des
 share/crawl/dat/des/traps/rats_trap.des
-share/crawl/dat/des/traps/spider_basket.des
 share/crawl/dat/des/tutorial/
 share/crawl/dat/des/tutorial/lesson1.des
 share/crawl/dat/des/tutorial/lesson2.des
@@ -178,6 +180,7 @@ share/crawl/dat/des/variable/compat.des
 share/crawl/dat/des/variable/d_encompass.des
 share/crawl/dat/des/variable/float.des
 share/crawl/dat/des/variable/geyser.des
+share/crawl/dat/des/variable/ghost.des
 share/crawl/dat/des/variable/grated_community.des
 share/crawl/dat/des/variable/large_abstract.des
 share/crawl/dat/des/variable/large_themed.des
@@ -185,6 +188,9 @@ share/crawl/dat/des/variable/lemuel_cast
 share/crawl/dat/des/variable/mini.des
 share/crawl/dat/des/variable/mini_features.des
 share/crawl/dat/des/variable/mini_monsters.des
+share/crawl/dat/des/variable/polyominoes.des
+share/crawl/dat/des/variable/the_bubble.des
+share/crawl/dat/des/variable/the_grid.des
 share/crawl/dat/descript/
 share/crawl/dat/descript/ability.txt
 share/crawl/dat/descript/backgrounds.txt
@@ -204,7 +210,6 @@ share/crawl/dat/descript/cs/monsters.txt
 share/crawl/dat/descript/cs/quotes.txt
 share/crawl/dat/descript/cs/species.txt
 share/crawl/dat/descript/cs/spells.txt
-share/crawl/dat/descript/status.txt
 share/crawl/dat/descript/cs/tutorial.txt
 share/crawl/dat/descript/cs/unident.txt
 share/crawl/dat/descript/cs/unrand.txt
@@ -428,6 +433,7 @@ share/crawl/dat/descript/ru/unrand.txt
 share/crawl/dat/descript/skills.txt
 share/crawl/dat/descript/species.txt
 share/crawl/dat/descript/spells.txt
+share/crawl/dat/descript/status.txt
 share/crawl/dat/descript/sv/
 share/crawl/dat/descript/sv/ability.txt
 share/crawl/dat/descript/sv/cards.txt
@@ -469,10 +475,48 @@ share/crawl/dat/descript/zh/spells.txt
 share/crawl/dat/descript/zh/tutorial.txt
 share/crawl/dat/descript/zh/unident.txt
 share/crawl/dat/descript/zh/unrand.txt
+share/crawl/dat/dist_bones/
+share/crawl/dat/dist_bones/README
+share/crawl/dat/dist_bones/bones.store.Crypt
+share/crawl/dat/dist_bones/bones.store.D-10
+share/crawl/dat/dist_bones/bones.store.D-11
+share/crawl/dat/dist_bones/bones.store.D-12
+share/crawl/dat/dist_bones/bones.store.D-13
+share/crawl/dat/dist_bones/bones.store.D-14
+share/crawl/dat/dist_bones/bones.store.D-15
+share/crawl/dat/dist_bones/bones.store.D-3
+share/crawl/dat/dist_bones/bones.store.D-4
+share/crawl/dat/dist_bones/bones.store.D-5
+share/crawl/dat/dist_bones/bones.store.D-6
+share/crawl/dat/dist_bones/bones.store.D-7
+share/crawl/dat/dist_bones/bones.store.D-8
+share/crawl/dat/dist_bones/bones.store.D-9
+share/crawl/dat/dist_bones/bones.store.Depths
+share/crawl/dat/dist_bones/bones.store.Elf
+share/crawl/dat/dist_bones/bones.store.Hells
+share/crawl/dat/dist_bones/bones.store.Lair-1
+share/crawl/dat/dist_bones/bones.store.Lair-2
+share/crawl/dat/dist_bones/bones.store.Lair-3
+share/crawl/dat/dist_bones/bones.store.Lair-4
+share/crawl/dat/dist_bones/bones.store.Lair-5
+share/crawl/dat/dist_bones/bones.store.Lair-6
+share/crawl/dat/dist_bones/bones.store.Orc
+share/crawl/dat/dist_bones/bones.store.Pan
+share/crawl/dat/dist_bones/bones.store.Shoals
+share/crawl/dat/dist_bones/bones.store.Slime
+share/crawl/dat/dist_bones/bones.store.Snake
+share/crawl/dat/dist_bones/bones.store.Spider
+share/crawl/dat/dist_bones/bones.store.Swamp
+share/crawl/dat/dist_bones/bones.store.Tomb
+share/crawl/dat/dist_bones/bones.store.Vaults
+share/crawl/dat/dist_bones/bones.store.Zig
+share/crawl/dat/dist_bones/bones.store.Zot
 share/crawl/dat/dlua/
 share/crawl/dat/dlua/debug.lua
 share/crawl/dat/dlua/dungeon.lua
 share/crawl/dat/dlua/fnwrap.lua
+share/crawl/dat/dlua/gauntlet.lua
+share/crawl/dat/dlua/ghost.lua
 share/crawl/dat/dlua/init.lua
 share/crawl/dat/dlua/iter.lua
 share/crawl/dat/dlua/layout/
@@ -511,11 +555,13 @@ share/crawl/dat/dlua/lm_items.lua
 share/crawl/dat/dlua/lm_mon_prop.lua
 share/crawl/dat/dlua/lm_monst.lua
 share/crawl/dat/dlua/lm_mslav.lua
+share/crawl/dat/dlua/lm_named_hatch.lua
 share/crawl/dat/dlua/lm_pdesc.lua
 share/crawl/dat/dlua/lm_props.lua
 share/crawl/dat/dlua/lm_timed.lua
 share/crawl/dat/dlua/lm_tmsg.lua
 share/crawl/dat/dlua/lm_toll.lua
+share/crawl/dat/dlua/lm_trans.lua
 share/crawl/dat/dlua/lm_trig.lua
 share/crawl/dat/dlua/lm_trove.lua
 share/crawl/dat/dlua/loadmaps.lua
@@ -540,29 +586,41 @@ share/crawl/dat/dlua/v_rooms.lua
 share/crawl/dat/dlua/v_shapes.lua
 share/crawl/dat/dlua/vault.lua
 share/crawl/dat/dlua/ziggurat.lua
+share/crawl/dat/tiles/title_Cws_Minotauros.png
+share/crawl/dat/tiles/title_froggy_goodgod_tengu_gold.png
+share/crawl/dat/tiles/title_froggy_jiyva_felid.png
+share/crawl/dat/tiles/title_froggy_natasha_and_boris.png
+share/crawl/dat/tiles/title_froggy_rune_and_run_failed_on_dis.png
+share/crawl/dat/tiles/title_froggy_thunder_fist_nikola.png
+share/crawl/dat/tiles/title_ploomutoo_ijyb.png
 share/crawl/docs/
 share/crawl/docs/CREDITS.txt
+share/crawl/docs/aptitudes-wide.txt
 share/crawl/docs/aptitudes.txt
 share/crawl/docs/arena.txt
 @comment share/crawl/docs/changelog.txt
 share/crawl/docs/crawl_manual.txt
+@comment share/crawl/docs/develop/new_dev_checklist.txt
+@comment share/crawl/docs/develop/process.txt
 @comment share/crawl/docs/develop/
 @comment share/crawl/docs/develop/IRC.txt
 @comment share/crawl/docs/develop/android.txt
+@comment share/crawl/docs/develop/background_creation.txt
 @comment share/crawl/docs/develop/coding_conventions.txt
 @comment share/crawl/docs/develop/ctags.txt
 @comment share/crawl/docs/develop/editor_tips.txt
 @comment share/crawl/docs/develop/gdb_tips.txt
+@comment share/crawl/docs/develop/god_creation.txt
 @comment share/crawl/docs/develop/keys.txt
 @comment share/crawl/docs/develop/levels/
 @comment share/crawl/docs/develop/levels/advanced.txt
 @comment share/crawl/docs/develop/levels/introduction.txt
 @comment share/crawl/docs/develop/levels/syntax.txt
 @comment share/crawl/docs/develop/levels/triggerables.txt
+@comment share/crawl/docs/develop/monster_creation.txt
 @comment share/crawl/docs/develop/monster_speech.txt
-@comment share/crawl/docs/develop/new_dev_checklist.txt
+@comment share/crawl/docs/develop/mutation_creation.txt
 @comment share/crawl/docs/develop/patch_guide.txt
-@comment share/crawl/docs/develop/process.txt
 @comment share/crawl/docs/develop/save_compatibility.txt
 @comment share/crawl/docs/develop/spells.txt
 @comment share/crawl/docs/develop/testing.txt
@@ -588,6 +646,7 @@ share/crawl/settings/0.13_monster_glyphs
 share/crawl/settings/0.14_monster_glyphs.txt
 share/crawl/settings/0.16_monster_glyphs.txt
 share/crawl/settings/0.17_monster_glyphs.txt
+share/crawl/settings/0.18_monster_glyphs.txt
 share/crawl/settings/0.9_monster_glyphs.txt
 share/crawl/settings/034_command_keys.txt
 share/crawl/settings/052_monster_glyphs.txt
@@ -600,6 +659,9 @@ share/crawl/settings/dec_glyphs.txt
 share/crawl/settings/dvorak_command_keys.txt
 share/crawl/settings/ibm_glyphs.txt
 share/crawl/settings/init.txt
+@comment share/crawl/settings/mac/
+@comment share/crawl/settings/mac/Crawl profile.terminal
+share/crawl/settings/neo_command_keys.txt
 share/crawl/settings/no_vi_command_keys.txt
 share/crawl/settings/old_unicode_glyphs.txt
 share/crawl/settings/safe_move_shift.txt

Reply via email to