diff --git a/games-roguelike/angband/angband-3.5.0.recipe b/games-roguelike/angband/angband-3.5.0.recipe new file mode 100644 index 000000000..f24e7985c --- /dev/null +++ b/games-roguelike/angband/angband-3.5.0.recipe @@ -0,0 +1,115 @@ +HOMEPAGE="http://rephial.org/" +SUMMARY="a free, single-player dungeon exploration game." +DESCRIPTION=" +Angband is a free, single-player dungeon exploration game. You play an \ +adventurer: seeking riches, fighting monsters, and preparing for a final \ +battle with Morgoth, the Lord of Darkness. +" +REVISION="1" +ARCHITECTURES="x86_gcc2" +LICENSE="GNU GPL v2" +COPYRIGHT=" +Robert Alan Koeneke (1985). +James E. Wilson (1989). +1990, Alex Cutler and Andy Astrand +1991-1992 Sean Marsh, Geoff Hill, Charles Teague +1993 Charles Swiger +1994-1999 Ben Harrison +2000-2014 Robert Ruehlmann +" + +SRC_URI="http://rephial.org/downloads/3.5/angband-v3.5.0.tar.gz" +CHECKSUM_SHA256="3d3c3a8839ef97613d5e29c116c5e88c93b913485768106ad4906c75069085ec" +SOURCE_DIR="angband-v3.5.0" + +PROVIDES=" + angband = $portVersion + cmd:angband +" + +REQUIRES=" + haiku >= $haikuVersion + lib:libSDL_1.2 + lib:libSDL_image_1.2 + lib:libSDL_mixer_1.2 + lib:libSDL_ttf_2.0 + lib:libncursesw +" + +GLOBAL_WRITABLE_FILES=" +settings/angband/edit/artifact.txt keep-old +settings/angband/edit/ego_item.txt keep-old +settings/angband/edit/flavor.txt keep-old +settings/angband/edit/hints.txt keep-old +settings/angband/edit/limits.txt keep-old +settings/angband/edit/monster.txt keep-old +settings/angband/edit/monster_base.txt keep-old +settings/angband/edit/names.txt keep-old +settings/angband/edit/object.txt keep-old +settings/angband/edit/object_base.txt keep-old +settings/angband/edit/p_class.txt keep-old +settings/angband/edit/p_hist.txt keep-old +settings/angband/edit/p_race.txt keep-old +settings/angband/edit/pain.txt keep-old +settings/angband/edit/pit.txt keep-old +settings/angband/edit/room_template.txt keep-old +settings/angband/edit/spell.txt keep-old +settings/angband/edit/store.txt keep-old +settings/angband/edit/terrain.txt keep-old +settings/angband/edit/vault.txt keep-old +settings/angband/pref/flvr-dvg.prf keep-old +settings/angband/pref/flvr-new.prf keep-old +settings/angband/pref/flvr-nmd.prf keep-old +settings/angband/pref/flvr-shb.prf keep-old +settings/angband/pref/flvr-xxx.prf keep-old +settings/angband/pref/font-gcu.prf keep-old +settings/angband/pref/font-sdl.prf keep-old +settings/angband/pref/font-win.prf keep-old +settings/angband/pref/font-x11.prf keep-old +settings/angband/pref/font-xxx.prf keep-old +settings/angband/pref/font.prf keep-old +settings/angband/pref/graf-dvg.prf keep-old +settings/angband/pref/graf-new.prf keep-old +settings/angband/pref/graf-nmd.prf keep-old +settings/angband/pref/graf-shb.prf keep-old +settings/angband/pref/graf-xxx.prf keep-old +settings/angband/pref/graf.prf keep-old +settings/angband/pref/keys-gcu.prf keep-old +settings/angband/pref/message.prf keep-old +settings/angband/pref/pref.prf keep-old +settings/angband/pref/user.prf keep-old +settings/angband/pref/xtra-dvg.prf keep-old +settings/angband/pref/xtra-new.prf keep-old +settings/angband/pref/xtra-nmd.prf keep-old +settings/angband/pref/xtra-shb.prf keep-old +settings/angband/pref/xtra-xxx.prf keep-old +" + +BUILD_REQUIRES=" + devel:libncurses + devel:libsdl + devel:libsdl_image + devel:libsdl_mixer + devel:libsdl_ttf +" + +BUILD_PREREQUIRES=" + haiku_devel >= $haikuVersion + cmd:autoconf + cmd:awk + cmd:find + cmd:gcc + cmd:make +" + +BUILD() +{ + autoconf + runConfigure ./configure --enable-sdl --enable-sdl-mixer + make $jobArgs +} + +INSTALL() +{ + make install +} diff --git a/games-roguelike/angband/patches/angband-3.5.0.patchset b/games-roguelike/angband/patches/angband-3.5.0.patchset new file mode 100644 index 000000000..c206d4828 --- /dev/null +++ b/games-roguelike/angband/patches/angband-3.5.0.patchset @@ -0,0 +1,91 @@ +From 032e06fa6424fe591c2a18185ddd7442bdfb3996 Mon Sep 17 00:00:00 2001 +From: Adrien Destugues +Date: Sat, 27 Sep 2014 16:59:49 +0200 +Subject: gcc2 fixes. + + +diff --git a/configure.ac b/configure.ac +index a51415f..d9c42ea 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -88,7 +88,7 @@ CFLAGS="$CFLAGS -DHAVE_CONFIG_H" + CPPFLAGS="$CPPFLAGS -I." + + if test "$GCC" = "yes"; then +- CFLAGS="$CFLAGS -W -Wall -Wextra -Wno-unused-parameter -pedantic" ++ CFLAGS="$CFLAGS -W -Wall" + AC_MSG_CHECKING([if gcc supports -Wno-missing-field-initializers]) + _gcc_cflags_save=$CFLAGS + CFLAGS="-Wno-missing-field-initializers" +@@ -293,9 +293,6 @@ if test "$enable_sdl_mixer" = "yes"; then + fi + + +-LIBS="${LIBS} -lm" +- +- + dnl Test checking + if test "$enable_test" = "yes"; then + AC_DEFINE(USE_TEST, 1, [Define to 1 to build the test frontend]) +diff --git a/src/Makefile b/src/Makefile +index 69ced53..da13f16 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -13,7 +13,7 @@ ifneq (${VERSION},) + CFLAGS += -DBUILD_ID=${VERSION} + endif + +-CFLAGS += -I. -std=c99 -Wdeclaration-after-statement -O0 ++CFLAGS += -I. -std=c9x -O0 + + # gcov intermediate data + GCOBJS = $(OBJECTS:.o=.gcno) $(OBJECTS:.o=.gcda) +@@ -24,15 +24,15 @@ DISTCLEAN = autoconf.h + + export CFLAGS LDFLAGS LIBS + +-$(PROG): angband.o $(MAINFILES) +- $(CC) -o $@ angband.o $(MAINFILES) $(LDFLAGS) $(LDADD) $(LIBS) ++$(PROG): angband.a $(MAINFILES) ++ $(CC) -o $@ $(MAINFILES) angband.a $(LDFLAGS) $(LDADD) $(LIBS) + @printf "%10s %-20s\n" LINK $@ + + win/angband.res: win/angband.rc + $(RC) $< -O coff -o $@ + +-angband.o: $(OBJECTS) +- $(LD) -nostdlib -Wl,-r -o $@ $(OBJECTS) ++angband.a: $(OBJECTS) ++ ar cru $@ $(OBJECTS) + @printf "%10s %-20s\n" LINK $@ + + tests: angband.o +diff --git a/src/z-form.h b/src/z-form.h +index 46c26dc..47c74cf 100644 +--- a/src/z-form.h ++++ b/src/z-form.h +@@ -16,7 +16,7 @@ + + /* MSVC doesn't have va_copy (which is C99) or an alternative, so we'll just + * copy the SRC pointer. In other cases we'll use va_copy() as we should. */ +-#ifdef _MSC_VER ++#if defined(_MSC_VER) || __GNUC__ < 3 + #define VA_COPY(DST, SRC) (DST) = (SRC) + #else + #define VA_COPY(DST, SRC) va_copy(DST, SRC) +diff --git a/src/z-rand.c b/src/z-rand.c +index 8965456..9383e99 100644 +--- a/src/z-rand.c ++++ b/src/z-rand.c +@@ -468,8 +468,6 @@ void rand_fix(u32b val) { + rand_fixval = val; + } + +-int getpid(void); +- + /** + * Another simple RNG that does not use any of the above state + * (so can be used without disturbing the game's RNG state) +-- +1.8.3.4 +