diff options
author | wiz <wiz@pkgsrc.org> | 2012-01-08 15:52:12 +0000 |
---|---|---|
committer | wiz <wiz@pkgsrc.org> | 2012-01-08 15:52:12 +0000 |
commit | 34d36fafba689c1aedd133db9e73f3310d716af3 (patch) | |
tree | c32f594f80aedb5a5e5f202ff5eb73a09d12aa5b | |
parent | 980efb12f407d9d82345a08b33652aa472ce6575 (diff) | |
download | pkgsrc-34d36fafba689c1aedd133db9e73f3310d716af3.tar.gz |
Initial import of xu4-1.0beta3:
XU4 is a remake of the computer game Ultima IV. The goal is to make
it easy and convenient to play this classic on modern operating
systems. XU4 is primarily inspired by the much more ambitious project
Exult.
XU4 isn't a new game based on the Ultima IV story -- it is a faithful
recreation of the old game, right up to the crappy graphics. If you
are looking for a game with modern gameplay and graphics, this is not
it -- yet. New features that improve the gameplay and keep with the
spirit of the original game will be added.
XU4 also tries to maintain strict compatibility with the original for
its savegame files. You can use a game saved in XU4 with the original
and vice versa, at least in theory.
28 files changed, 680 insertions, 0 deletions
diff --git a/games/xu4/DESCR b/games/xu4/DESCR new file mode 100644 index 00000000000..72ed3a8a5f6 --- /dev/null +++ b/games/xu4/DESCR @@ -0,0 +1,14 @@ +XU4 is a remake of the computer game Ultima IV. The goal is to make +it easy and convenient to play this classic on modern operating +systems. XU4 is primarily inspired by the much more ambitious project +Exult. + +XU4 isn't a new game based on the Ultima IV story -- it is a faithful +recreation of the old game, right up to the crappy graphics. If you +are looking for a game with modern gameplay and graphics, this is not +it -- yet. New features that improve the gameplay and keep with the +spirit of the original game will be added. + +XU4 also tries to maintain strict compatibility with the original for +its savegame files. You can use a game saved in XU4 with the original +and vice versa, at least in theory. diff --git a/games/xu4/MESSAGE b/games/xu4/MESSAGE new file mode 100644 index 00000000000..b2b27e8561d --- /dev/null +++ b/games/xu4/MESSAGE @@ -0,0 +1,8 @@ +=========================================================================== +$NetBSD: MESSAGE,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +xu4 needs the original Ultima IV data files. +The package ultima4-data provides them, but is not a dependency +due to licensing reasons. + +=========================================================================== diff --git a/games/xu4/Makefile b/games/xu4/Makefile new file mode 100644 index 00000000000..29ccaca1485 --- /dev/null +++ b/games/xu4/Makefile @@ -0,0 +1,38 @@ +# $NetBSD: Makefile,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ +# + +DISTNAME= xu4-1.0beta3 +CATEGORIES= games +MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=xu4/} + +MAINTAINER= pkgsrc-users@NetBSD.org +HOMEPAGE= http://xu4.sourceforge.net/ +COMMENT= Remake of Ultima IV +LICENSE= gnu-gpl-v2 + +DEPENDS+= timidity-[0-9]*:../../audio/timidity + +PKG_DESTDIR_SUPPORT= user-destdir + +WRKSRC= ${WRKDIR}/u4 +CONFIGURE_DIRS= src +USE_LANGUAGES= c c++ +USE_TOOLS+= gmake + +INSTALLATION_DIRS= share/doc/xu4 + +SUBST_CLASSES+= prefix +SUBST_SED.prefix= -e "s,/usr/local,${PREFIX}," +SUBST_FILES.prefix= src/u4file.cpp README +SUBST_STAGE.prefix= pre-build +SUBST_MESSAGE.prefix= Fixing path to installed files. + +post-install: + ${INSTALL_DATA} ${WRKSRC}/README ${DESTDIR}${PREFIX}/share/doc/xu4 + +.include "../../audio/SDL_mixer/buildlink3.mk" +.include "../../devel/SDL/buildlink3.mk" +.include "../../graphics/png/buildlink3.mk" +.include "../../sysutils/desktop-file-utils/desktopdb.mk" +.include "../../textproc/libxml2/buildlink3.mk" +.include "../../mk/bsd.pkg.mk" diff --git a/games/xu4/PLIST b/games/xu4/PLIST new file mode 100644 index 00000000000..77d1c6e7173 --- /dev/null +++ b/games/xu4/PLIST @@ -0,0 +1,78 @@ +@comment $NetBSD: PLIST,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ +bin/u4 +lib/u4/armors.xml +lib/u4/config.xml +lib/u4/creatures.xml +lib/u4/dtd/armors.dtd +lib/u4/dtd/color.dtd +lib/u4/dtd/common.dtd +lib/u4/dtd/config.dtd +lib/u4/dtd/constraint.dtd +lib/u4/dtd/creatures.dtd +lib/u4/dtd/egaPalette.dtd +lib/u4/dtd/graphics.dtd +lib/u4/dtd/maps.dtd +lib/u4/dtd/tileRules.dtd +lib/u4/dtd/tilemap.dtd +lib/u4/dtd/tileset.dtd +lib/u4/dtd/tilesets.dtd +lib/u4/dtd/weapons.dtd +lib/u4/dumpsavegame +lib/u4/egaPalette.xml +lib/u4/graphics.xml +lib/u4/graphics/ega/dung0ma.png +lib/u4/graphics/ega/dung0ma_door.png +lib/u4/graphics/ega/dung1ma_door.png +lib/u4/graphics/ega/dung2ma_door.png +lib/u4/graphics/ega/dung3ma_door.png +lib/u4/graphics/ega/dungeonhall.png +lib/u4/graphics/ega/dungeonhall_door.png +lib/u4/graphics/ega/gem.png +lib/u4/graphics/ega/ladderdown0.png +lib/u4/graphics/ega/ladderdown1.png +lib/u4/graphics/ega/ladderdown2.png +lib/u4/graphics/ega/ladderdown3.png +lib/u4/graphics/ega/ladderup0.png +lib/u4/graphics/ega/ladderup1.png +lib/u4/graphics/ega/ladderup2.png +lib/u4/graphics/ega/ladderup3.png +lib/u4/graphics/ega/ladderupdown0.png +lib/u4/graphics/ega/ladderupdown1.png +lib/u4/graphics/ega/ladderupdown2.png +lib/u4/graphics/ega/ladderupdown3.png +lib/u4/graphics/vga/dungeonhall.png +lib/u4/graphics/vga/dungeonhall_door.png +lib/u4/graphics/vga/gem.png +lib/u4/graphics/vga/tile_guard.png +lib/u4/maps.xml +lib/u4/music.xml +lib/u4/music/Castles.mid +lib/u4/music/Combat.mid +lib/u4/music/Dungeon.mid +lib/u4/music/Fanfare_Of_Lord_British.mid +lib/u4/music/Rule_Britannia.mid +lib/u4/music/Shopping.mid +lib/u4/music/Shrines.mid +lib/u4/music/Towns.mid +lib/u4/music/Wanderer.mid +lib/u4/sound.xml +lib/u4/sound/blocked.wav +lib/u4/sound/flee.wav +lib/u4/sound/magic.ogg +lib/u4/sound/moongate.ogg +lib/u4/sound/walk.wav +lib/u4/tileRules.xml +lib/u4/tilemap-base.xml +lib/u4/tilemap-dungeon.xml +lib/u4/tileset-base.xml +lib/u4/tileset-dungeon.xml +lib/u4/tilesets.xml +lib/u4/tlkconv +lib/u4/u4dec +lib/u4/u4enc +lib/u4/vendorScript.xml +lib/u4/weapons.xml +share/applications/u4.desktop +share/doc/xu4/README +share/pixmaps/u4.bmp +share/pixmaps/u4.png diff --git a/games/xu4/distinfo b/games/xu4/distinfo new file mode 100644 index 00000000000..f90445cea50 --- /dev/null +++ b/games/xu4/distinfo @@ -0,0 +1,28 @@ +$NetBSD: distinfo,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +SHA1 (xu4-1.0beta3.tar.gz) = baf1bbdc18088096ae11ea31aa497532b7e7124c +RMD160 (xu4-1.0beta3.tar.gz) = f758fea4bc3034b19122651cfb725a88e0684960 +Size (xu4-1.0beta3.tar.gz) = 418477 bytes +SHA1 (patch-src_Makefile) = ac80c253affd3b150a377cd0072db9557c26407b +SHA1 (patch-src_armor.cpp) = 1cc4ad07efaa70c5764b910d055939e22b4287d5 +SHA1 (patch-src_codex.cpp) = 706aa3a6854b72ae6ada927cc1bd1c71f7c4959e +SHA1 (patch-src_conversation.cpp) = 15ea5eed4abe11e7afb58359b6cd732b1e84b458 +SHA1 (patch-src_creature.cpp) = 9479f075c95b481bae073011c72672b383a5f7e4 +SHA1 (patch-src_dialogueloader.cpp) = 10b46af20241f6571a7656b577f42dfca39f74cc +SHA1 (patch-src_dialogueloader__tlk.cpp) = e4f69fc103836a15800b9f76ae742555a686ad34 +SHA1 (patch-src_direction.cpp) = 412950b32b43dbfd7081733c94b4365ee85a3fdd +SHA1 (patch-src_imageloader.cpp) = 88ed63cb53b5de9d14d940e045752f01a3a5f4b6 +SHA1 (patch-src_imageloader__png.cpp) = e790fac8468d74ff605868c29d8cc8759cb16871 +SHA1 (patch-src_imagemgr.h) = 36b1bd2d750e17b9c403cded9d8787aa6a8a61cd +SHA1 (patch-src_intro.cpp) = 5330d1bedb8e79750468d9463a016b041b7aa496 +SHA1 (patch-src_item.cpp) = 667498d2c8fcf4c2c35da0d9189d68c9b6a9baf5 +SHA1 (patch-src_lzw_u6decode.cpp) = 1dbf1cb0f24ad9d083f4a7fe666f1503c9647ab6 +SHA1 (patch-src_person.cpp) = b93703514429257ae4665ab7242c5dc1ead18c3c +SHA1 (patch-src_savegame.cpp) = 6a0b43d29bd26fd2265953588ae82c950d14e6ba +SHA1 (patch-src_screen.cpp) = bffaf51b9ac63112733d89c0b5e30370a695d45d +SHA1 (patch-src_settings.cpp) = 6eacdf00c5d85cb848b089933ce9a70817714453 +SHA1 (patch-src_spell.cpp) = 4412c24a2265f41f30b6fdbc4a21ac0a1df8e329 +SHA1 (patch-src_stats.cpp) = da37132d4c710e5dda29b222d27aed84fcd250d1 +SHA1 (patch-src_textview.cpp) = 18da8c99836c4a277c1f674b03f7c77da58f020e +SHA1 (patch-src_u4file.cpp) = 70d8d1650d0888d56c2d9f720b1d4b715b8502dd +SHA1 (patch-src_weapon.cpp) = d87690c8ed0b63be171437b2331955284859be97 diff --git a/games/xu4/patches/patch-src_Makefile b/games/xu4/patches/patch-src_Makefile new file mode 100644 index 00000000000..124b6eb4c06 --- /dev/null +++ b/games/xu4/patches/patch-src_Makefile @@ -0,0 +1,72 @@ +$NetBSD: patch-src_Makefile,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Add DESTDIR support. +Remove unportable BACKTRACE default setting. +Pre-create directories instead of using unportable install -D. + +--- src/Makefile.orig 2005-01-14 09:15:17.000000000 +0000 ++++ src/Makefile +@@ -3,5 +3,5 @@ + # + +-prefix=/usr/local ++prefix=${PREFIX} + bindir=$(prefix)/bin + libdir=$(prefix)/lib +@@ -12,5 +12,5 @@ UILIBS=$(shell sdl-config --libs) -lSDL_ + UIFLAGS=$(shell sdl-config --cflags) + +-FEATURES=-DHAVE_BACKTRACE=1 -DHAVE_VARIADIC_MACROS=1 ++FEATURES=-DHAVE_VARIADIC_MACROS=1 + DEBUGCXXFLAGS=-ggdb1 -rdynamic + CXXFLAGS=$(FEATURES) -Wall -I. $(UIFLAGS) $(shell xml2-config --cflags) -DICON_FILE=\"$(datadir)/pixmaps/u4.bmp\" -DVERSION=\"$(VERSION)\" $(DEBUGCXXFLAGS) +@@ -26,25 +26,28 @@ include Makefile.common + + install:: +- $(INSTALL) -D $(MAIN) $(bindir)/$(MAIN) +- $(INSTALL) -D ../icons/u4.bmp $(datadir)/pixmaps/u4.bmp +- $(INSTALL) -D ../icons/u4.png $(datadir)/pixmaps/u4.png +- mkdir -p $(libdir)/u4/music +- $(INSTALL) ../mid/*.mid $(libdir)/u4/music +- mkdir -p $(libdir)/u4/sound +- $(INSTALL) ../sound/*.ogg $(libdir)/u4/sound +- $(INSTALL) ../sound/*.wav $(libdir)/u4/sound +- $(INSTALL) -D dumpsavegame $(libdir)/u4/dumpsavegame +- $(INSTALL) -D u4enc $(libdir)/u4/u4enc +- $(INSTALL) -D u4dec $(libdir)/u4/u4dec +- $(INSTALL) -D tlkconv $(libdir)/u4/tlkconv +- $(INSTALL) ../conf/*.xml $(libdir)/u4 +- mkdir -p $(libdir)/u4/dtd +- $(INSTALL) ../conf/dtd/*.dtd $(libdir)/u4/dtd +- mkdir -p $(libdir)/u4/graphics +- mkdir -p $(libdir)/u4/graphics/ega +- mkdir -p $(libdir)/u4/graphics/vga +- $(INSTALL) ../graphics/ega/*.png $(libdir)/u4/graphics/ega +- $(INSTALL) ../graphics/vga/*.png $(libdir)/u4/graphics/vga +- $(INSTALL) -D ../u4.desktop $(datadir)/applications/u4.desktop ++ mkdir -p $(DESTDIR)$(bindir) ++ $(INSTALL) $(MAIN) $(DESTDIR)$(bindir)/$(MAIN) ++ mkdir -p $(DESTDIR)$(datadir)/pixmaps ++ $(INSTALL) ../icons/u4.bmp $(DESTDIR)$(datadir)/pixmaps/u4.bmp ++ $(INSTALL) ../icons/u4.png $(DESTDIR)$(datadir)/pixmaps/u4.png ++ mkdir -p $(DESTDIR)$(libdir)/u4/music ++ $(INSTALL) ../mid/*.mid $(DESTDIR)$(libdir)/u4/music ++ mkdir -p $(DESTDIR)$(libdir)/u4/sound ++ $(INSTALL) ../sound/*.ogg $(DESTDIR)$(libdir)/u4/sound ++ $(INSTALL) ../sound/*.wav $(DESTDIR)$(libdir)/u4/sound ++ $(INSTALL) dumpsavegame $(DESTDIR)$(libdir)/u4/dumpsavegame ++ $(INSTALL) u4enc $(DESTDIR)$(libdir)/u4/u4enc ++ $(INSTALL) u4dec $(DESTDIR)$(libdir)/u4/u4dec ++ $(INSTALL) tlkconv $(DESTDIR)$(libdir)/u4/tlkconv ++ $(INSTALL) ../conf/*.xml $(DESTDIR)$(libdir)/u4 ++ mkdir -p $(DESTDIR)$(libdir)/u4/dtd ++ $(INSTALL) ../conf/dtd/*.dtd $(DESTDIR)$(libdir)/u4/dtd ++ mkdir -p $(DESTDIR)$(libdir)/u4/graphics ++ mkdir -p $(DESTDIR)$(libdir)/u4/graphics/ega ++ mkdir -p $(DESTDIR)$(libdir)/u4/graphics/vga ++ $(INSTALL) ../graphics/ega/*.png $(DESTDIR)$(libdir)/u4/graphics/ega ++ $(INSTALL) ../graphics/vga/*.png $(DESTDIR)$(libdir)/u4/graphics/vga ++ mkdir -p $(DESTDIR)$(datadir)/applications ++ $(INSTALL) ../u4.desktop $(DESTDIR)$(datadir)/applications/u4.desktop + + # use GCC's automatic dependency generation diff --git a/games/xu4/patches/patch-src_armor.cpp b/games/xu4/patches/patch-src_armor.cpp new file mode 100644 index 00000000000..72889ed0abe --- /dev/null +++ b/games/xu4/patches/patch-src_armor.cpp @@ -0,0 +1,14 @@ +$NetBSD: patch-src_armor.cpp,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Add missing header. + +--- src/armor.cpp.orig 2004-05-26 03:32:52.000000000 +0000 ++++ src/armor.cpp +@@ -12,6 +12,7 @@ + #include "error.h" + #include "names.h" + #include "tile.h" ++#include <string.h> + + using std::vector; + using std::string; diff --git a/games/xu4/patches/patch-src_codex.cpp b/games/xu4/patches/patch-src_codex.cpp new file mode 100644 index 00000000000..0a929241e22 --- /dev/null +++ b/games/xu4/patches/patch-src_codex.cpp @@ -0,0 +1,14 @@ +$NetBSD: patch-src_codex.cpp,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Add missing header. + +--- src/codex.cpp.orig 2005-09-06 06:21:15.000000000 +0000 ++++ src/codex.cpp +@@ -21,6 +21,7 @@ + #include "u4.h" + #include "u4file.h" + #include "utils.h" ++#include <string.h> + + using namespace std; + diff --git a/games/xu4/patches/patch-src_conversation.cpp b/games/xu4/patches/patch-src_conversation.cpp new file mode 100644 index 00000000000..bb4b49a8988 --- /dev/null +++ b/games/xu4/patches/patch-src_conversation.cpp @@ -0,0 +1,14 @@ +$NetBSD: patch-src_conversation.cpp,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Add missing header. + +--- src/conversation.cpp.orig 2005-09-21 06:39:59.000000000 +0000 ++++ src/conversation.cpp +@@ -8,6 +8,7 @@ + #include "debug.h" + #include "person.h" + #include "script.h" ++#include <string.h> + + /* Static variable initialization */ + const unsigned int Conversation::BUFFERLEN = 16; diff --git a/games/xu4/patches/patch-src_creature.cpp b/games/xu4/patches/patch-src_creature.cpp new file mode 100644 index 00000000000..a11e0d28b08 --- /dev/null +++ b/games/xu4/patches/patch-src_creature.cpp @@ -0,0 +1,14 @@ +$NetBSD: patch-src_creature.cpp,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Add missing header. + +--- src/creature.cpp.orig 2005-10-03 06:01:03.000000000 +0000 ++++ src/creature.cpp +@@ -21,6 +21,7 @@ + #include "spell.h" /* FIXME: remove dependence on this */ + #include "tileset.h" + #include "utils.h" ++#include <string.h> + + CreatureMgr *CreatureMgr::instance = NULL; + diff --git a/games/xu4/patches/patch-src_dialogueloader.cpp b/games/xu4/patches/patch-src_dialogueloader.cpp new file mode 100644 index 00000000000..9160af8bc31 --- /dev/null +++ b/games/xu4/patches/patch-src_dialogueloader.cpp @@ -0,0 +1,14 @@ +$NetBSD: patch-src_dialogueloader.cpp,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Add missing header. + +--- src/dialogueloader.cpp.orig 2005-01-21 08:02:52.000000000 +0000 ++++ src/dialogueloader.cpp +@@ -7,6 +7,7 @@ + #include "debug.h" + #include "conversation.h" + #include "dialogueloader.h" ++#include <stdlib.h> + + std::map<std::string, DialogueLoader *> *DialogueLoader::loaderMap = NULL; + diff --git a/games/xu4/patches/patch-src_dialogueloader__tlk.cpp b/games/xu4/patches/patch-src_dialogueloader__tlk.cpp new file mode 100644 index 00000000000..b411ec72cac --- /dev/null +++ b/games/xu4/patches/patch-src_dialogueloader__tlk.cpp @@ -0,0 +1,14 @@ +$NetBSD: patch-src_dialogueloader__tlk.cpp,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Add missing header. + +--- src/dialogueloader_tlk.cpp.orig 2005-01-21 08:02:52.000000000 +0000 ++++ src/dialogueloader_tlk.cpp +@@ -7,6 +7,7 @@ + #include "conversation.h" + #include "dialogueloader_tlk.h" + #include "u4file.h" ++#include <string.h> + + DialogueLoader* U4TlkDialogueLoader::instance = DialogueLoader::registerLoader(new U4TlkDialogueLoader, "application/x-u4tlk"); + diff --git a/games/xu4/patches/patch-src_direction.cpp b/games/xu4/patches/patch-src_direction.cpp new file mode 100644 index 00000000000..2f55eb89649 --- /dev/null +++ b/games/xu4/patches/patch-src_direction.cpp @@ -0,0 +1,14 @@ +$NetBSD: patch-src_direction.cpp,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Add missing header. + +--- src/direction.cpp.orig 2004-05-22 21:03:25.000000000 +0000 ++++ src/direction.cpp +@@ -9,6 +9,7 @@ + #include "debug.h" + #include "event.h" + #include "utils.h" ++#include <stdlib.h> + + /** + * Returns the opposite direction. diff --git a/games/xu4/patches/patch-src_imageloader.cpp b/games/xu4/patches/patch-src_imageloader.cpp new file mode 100644 index 00000000000..443306821e3 --- /dev/null +++ b/games/xu4/patches/patch-src_imageloader.cpp @@ -0,0 +1,14 @@ +$NetBSD: patch-src_imageloader.cpp,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Add missing header. + +--- src/imageloader.cpp.orig 2004-08-19 08:03:52.000000000 +0000 ++++ src/imageloader.cpp +@@ -7,6 +7,7 @@ + #include "debug.h" + #include "image.h" + #include "imageloader.h" ++#include <stdlib.h> + + std::map<std::string, ImageLoader *> *ImageLoader::loaderMap = NULL; + diff --git a/games/xu4/patches/patch-src_imageloader__png.cpp b/games/xu4/patches/patch-src_imageloader__png.cpp new file mode 100644 index 00000000000..203f8ac5620 --- /dev/null +++ b/games/xu4/patches/patch-src_imageloader__png.cpp @@ -0,0 +1,15 @@ +$NetBSD: patch-src_imageloader__png.cpp,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Fix build with png-1.5. + +--- src/imageloader_png.cpp.orig 2004-09-26 19:24:31.000000000 +0000 ++++ src/imageloader_png.cpp +@@ -19,7 +19,7 @@ static void png_read_xu4(png_structp png + png_size_t check; + U4FILE *file; + +- file = (U4FILE *) png_ptr->io_ptr; ++ file = (U4FILE *) png_get_io_ptr(png_ptr); + check = file->read(data, (png_size_t)1, length); + + if (check != length) diff --git a/games/xu4/patches/patch-src_imagemgr.h b/games/xu4/patches/patch-src_imagemgr.h new file mode 100644 index 00000000000..244e1b06762 --- /dev/null +++ b/games/xu4/patches/patch-src_imagemgr.h @@ -0,0 +1,15 @@ +$NetBSD: patch-src_imagemgr.h,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Fix build with gcc-4.5. + +--- src/imagemgr.h.orig 2004-12-05 03:01:27.000000000 +0000 ++++ src/imagemgr.h +@@ -102,7 +102,7 @@ public: + static void destroy(); + + ImageInfo *get(const std::string &name); +- SubImage *ImageMgr::getSubImage(const std::string &name); ++ SubImage *getSubImage(const std::string &name); + void freeIntroBackgrounds(); + const std::vector<std::string> &getSetNames(); + diff --git a/games/xu4/patches/patch-src_intro.cpp b/games/xu4/patches/patch-src_intro.cpp new file mode 100644 index 00000000000..4f8159d3ee0 --- /dev/null +++ b/games/xu4/patches/patch-src_intro.cpp @@ -0,0 +1,14 @@ +$NetBSD: patch-src_intro.cpp,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Add missing header. + +--- src/intro.cpp.orig 2005-10-03 05:57:31.000000000 +0000 ++++ src/intro.cpp +@@ -24,6 +24,7 @@ + #include "tilemap.h" + #include "u4file.h" + #include "utils.h" ++#include <string.h> + + using namespace std; + diff --git a/games/xu4/patches/patch-src_item.cpp b/games/xu4/patches/patch-src_item.cpp new file mode 100644 index 00000000000..1cff8f7450b --- /dev/null +++ b/games/xu4/patches/patch-src_item.cpp @@ -0,0 +1,146 @@ +$NetBSD: patch-src_item.cpp,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Fix build on 64-bit with gcc-4.5. + +--- src/item.cpp.orig 2005-10-03 05:57:31.000000000 +0000 ++++ src/item.cpp +@@ -135,13 +135,13 @@ static const ItemLocation items[] = { + #define N_ITEMS (sizeof(items) / sizeof(items[0])) + + bool isRuneInInventory(void *virt) { +- return c->saveGame->runes & (int)virt; ++ return c->saveGame->runes & (int64_t)virt; + } + + void putRuneInInventory(void *virt) { + c->party->member(0)->awardXp(100); + c->party->adjustKarma(KA_FOUND_ITEM); +- c->saveGame->runes |= (int)virt; ++ c->saveGame->runes |= (int64_t)virt; + c->saveGame->lastreagent = c->saveGame->moves & 0xF0; + } + +@@ -150,18 +150,18 @@ bool isStoneInInventory(void *virt) { + if (virt == NULL) + return (c->saveGame->stones > 0); + /* specific test: does the party have a specific stone? */ +- else return c->saveGame->stones & (int)virt; ++ else return c->saveGame->stones & (int64_t)virt; + } + + void putStoneInInventory(void *virt) { + c->party->member(0)->awardXp(200); + c->party->adjustKarma(KA_FOUND_ITEM); +- c->saveGame->stones |= (int)virt; ++ c->saveGame->stones |= (int64_t)virt; + c->saveGame->lastreagent = c->saveGame->moves & 0xF0; + } + + bool isItemInInventory(void *item) { +- return c->saveGame->items & (int)item; ++ return c->saveGame->items & (int64_t)item; + } + + bool isSkullInInventory(void *) { +@@ -171,7 +171,7 @@ bool isSkullInInventory(void *) { + void putItemInInventory(void *item) { + c->party->member(0)->awardXp(400); + c->party->adjustKarma(KA_FOUND_ITEM); +- c->saveGame->items |= (int)item; ++ c->saveGame->items |= (int64_t)item; + c->saveGame->lastreagent = c->saveGame->moves & 0xF0; + } + +@@ -183,17 +183,17 @@ void useBBC(void *item) { + /* on top of the Abyss entrance */ + if (c->location->coords == abyssEntrance) { + /* must use bell first */ +- if ((int)item == ITEM_BELL) { ++ if ((int64_t)item == ITEM_BELL) { + screenMessage("\nThe Bell rings on and on!\n"); + c->saveGame->items |= ITEM_BELL_USED; + } + /* then the book */ +- else if (((int)item == ITEM_BOOK) && (c->saveGame->items & ITEM_BELL_USED)) { ++ else if (((int64_t)item == ITEM_BOOK) && (c->saveGame->items & ITEM_BELL_USED)) { + screenMessage("\nThe words resonate with the ringing!\n"); + c->saveGame->items |= ITEM_BOOK_USED; + } + /* then the candle */ +- else if (((int)item == ITEM_CANDLE) && (c->saveGame->items & ITEM_BOOK_USED)) { ++ else if (((int64_t)item == ITEM_CANDLE) && (c->saveGame->items & ITEM_BOOK_USED)) { + screenMessage("\nAs you light the Candle the Earth Trembles!\n"); + c->saveGame->items |= ITEM_CANDLE_USED; + } +@@ -255,7 +255,7 @@ void useSkull(void *item) { + */ + void useStone(void *item) { + MapCoords coords; +- unsigned char stone = (unsigned char)((int)item); ++ unsigned char stone = (unsigned char)((int64_t)item); + + unsigned char truth = STONE_WHITE | STONE_PURPLE | STONE_GREEN | STONE_BLUE; + unsigned char love = STONE_WHITE | STONE_YELLOW | STONE_GREEN | STONE_ORANGE; +@@ -393,9 +393,9 @@ bool isMysticInInventory(void *mystic) { + This would be a good candidate for an xu4 "extended" savegame + format. + */ +- if (((int)mystic) == WEAP_MYSTICSWORD) ++ if (((int64_t)mystic) == WEAP_MYSTICSWORD) + return c->saveGame->weapons[WEAP_MYSTICSWORD] > 0; +- else if (((int)mystic) == ARMR_MYSTICROBES) ++ else if (((int64_t)mystic) == ARMR_MYSTICROBES) + return c->saveGame->armor[ARMR_MYSTICROBES] > 0; + else + ASSERT(0, "Invalid mystic item was tested in isMysticInInventory()"); +@@ -405,9 +405,9 @@ bool isMysticInInventory(void *mystic) { + void putMysticInInventory(void *mystic) { + c->party->member(0)->awardXp(400); + c->party->adjustKarma(KA_FOUND_ITEM); +- if (((int)mystic) == WEAP_MYSTICSWORD) ++ if (((int64_t)mystic) == WEAP_MYSTICSWORD) + c->saveGame->weapons[WEAP_MYSTICSWORD] += 8; +- else if (((int)mystic) == ARMR_MYSTICROBES) ++ else if (((int64_t)mystic) == ARMR_MYSTICROBES) + c->saveGame->armor[ARMR_MYSTICROBES] += 8; + else + ASSERT(0, "Invalid mystic item was added in putMysticInInventory()"); +@@ -415,12 +415,12 @@ void putMysticInInventory(void *mystic) + } + + bool isWeaponInInventory(void *weapon) { +- if (c->saveGame->weapons[(int)weapon]) ++ if (c->saveGame->weapons[(int64_t)weapon]) + return true; + else { + int i; + for (i = 0; i < c->party->size(); i++) { +- if (c->party->member(i)->getWeapon() == (int)weapon) ++ if (c->party->member(i)->getWeapon() == (int64_t)weapon) + return true; + } + } +@@ -428,7 +428,7 @@ bool isWeaponInInventory(void *weapon) { + } + + void putWeaponInInventory(void *weapon) { +- c->saveGame->weapons[(int)weapon]++; ++ c->saveGame->weapons[(int64_t)weapon]++; + } + + void useTelescope(void *notused) { +@@ -447,11 +447,11 @@ bool isReagentInInventory(void *reag) { + + void putReagentInInventory(void *reag) { + c->party->adjustKarma(KA_FOUND_ITEM); +- c->saveGame->reagents[(int)reag] += xu4_random(8) + 2; ++ c->saveGame->reagents[(int64_t)reag] += xu4_random(8) + 2; + c->saveGame->lastreagent = c->saveGame->moves & 0xF0; + +- if (c->saveGame->reagents[(int)reag] > 99) { +- c->saveGame->reagents[(int)reag] = 99; ++ if (c->saveGame->reagents[(int64_t)reag] > 99) { ++ c->saveGame->reagents[(int64_t)reag] = 99; + screenMessage("Dropped some!\n"); + } + } diff --git a/games/xu4/patches/patch-src_lzw_u6decode.cpp b/games/xu4/patches/patch-src_lzw_u6decode.cpp new file mode 100644 index 00000000000..c0b147a4af9 --- /dev/null +++ b/games/xu4/patches/patch-src_lzw_u6decode.cpp @@ -0,0 +1,14 @@ +$NetBSD: patch-src_lzw_u6decode.cpp,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Add missing header. + +--- src/lzw/u6decode.cpp.orig 2005-10-03 06:30:09.000000000 +0000 ++++ src/lzw/u6decode.cpp +@@ -28,6 +28,7 @@ + */ + + #include <stdio.h> ++#include <stdlib.h> + + #include "u6decode.h" + #include "u6stack.h" diff --git a/games/xu4/patches/patch-src_person.cpp b/games/xu4/patches/patch-src_person.cpp new file mode 100644 index 00000000000..e91c952f5ed --- /dev/null +++ b/games/xu4/patches/patch-src_person.cpp @@ -0,0 +1,14 @@ +$NetBSD: patch-src_person.cpp,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Add missing header. + +--- src/person.cpp.orig 2005-09-21 06:42:01.000000000 +0000 ++++ src/person.cpp +@@ -28,6 +28,7 @@ + #include "u4file.h" + #include "utils.h" + #include "script.h" ++#include <string.h> + + using std::string; + using std::vector; diff --git a/games/xu4/patches/patch-src_savegame.cpp b/games/xu4/patches/patch-src_savegame.cpp new file mode 100644 index 00000000000..6800421a929 --- /dev/null +++ b/games/xu4/patches/patch-src_savegame.cpp @@ -0,0 +1,14 @@ +$NetBSD: patch-src_savegame.cpp,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Add missing header. + +--- src/savegame.cpp.orig 2005-01-14 08:24:55.000000000 +0000 ++++ src/savegame.cpp +@@ -5,6 +5,7 @@ + #include "vc6.h" // Fixes things if you're using VC6, does nothing if otherwise + + #include "savegame.h" ++#include <string.h> + + #include "io.h" + #include "object.h" diff --git a/games/xu4/patches/patch-src_screen.cpp b/games/xu4/patches/patch-src_screen.cpp new file mode 100644 index 00000000000..f315de8911d --- /dev/null +++ b/games/xu4/patches/patch-src_screen.cpp @@ -0,0 +1,14 @@ +$NetBSD: patch-src_screen.cpp,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Add missing header. + +--- src/screen.cpp.orig 2005-10-03 05:57:31.000000000 +0000 ++++ src/screen.cpp +@@ -8,6 +8,7 @@ + #include <cstdarg> + #include <cfloat> + #include "u4.h" ++#include <string.h> + + #include "screen.h" + diff --git a/games/xu4/patches/patch-src_settings.cpp b/games/xu4/patches/patch-src_settings.cpp new file mode 100644 index 00000000000..980bf85fc71 --- /dev/null +++ b/games/xu4/patches/patch-src_settings.cpp @@ -0,0 +1,14 @@ +$NetBSD: patch-src_settings.cpp,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Add missing header. + +--- src/settings.cpp.orig 2005-08-22 05:53:38.000000000 +0000 ++++ src/settings.cpp +@@ -11,6 +11,7 @@ + #include "event.h" + #include "filesystem.h" + #include "utils.h" ++#include <string.h> + + #if defined(_WIN32) || defined(__CYGWIN__) + #include <windows.h> diff --git a/games/xu4/patches/patch-src_spell.cpp b/games/xu4/patches/patch-src_spell.cpp new file mode 100644 index 00000000000..228a79aba51 --- /dev/null +++ b/games/xu4/patches/patch-src_spell.cpp @@ -0,0 +1,14 @@ +$NetBSD: patch-src_spell.cpp,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Add missing header. + +--- src/spell.cpp.orig 2005-10-03 05:57:31.000000000 +0000 ++++ src/spell.cpp +@@ -5,6 +5,7 @@ + #include "vc6.h" // Fixes things if you're using VC6, does nothing if otherwise + + #include "u4.h" ++#include <string.h> + + #include "spell.h" + diff --git a/games/xu4/patches/patch-src_stats.cpp b/games/xu4/patches/patch-src_stats.cpp new file mode 100644 index 00000000000..624a37c20ad --- /dev/null +++ b/games/xu4/patches/patch-src_stats.cpp @@ -0,0 +1,14 @@ +$NetBSD: patch-src_stats.cpp,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Add missing header. + +--- src/stats.cpp.orig 2005-08-24 05:55:35.000000000 +0000 ++++ src/stats.cpp +@@ -18,6 +18,7 @@ + #include "spell.h" + #include "tile.h" + #include "weapon.h" ++#include <string.h> + + extern bool verbose; + diff --git a/games/xu4/patches/patch-src_textview.cpp b/games/xu4/patches/patch-src_textview.cpp new file mode 100644 index 00000000000..303d07f5990 --- /dev/null +++ b/games/xu4/patches/patch-src_textview.cpp @@ -0,0 +1,14 @@ +$NetBSD: patch-src_textview.cpp,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Add missing header. + +--- src/textview.cpp.orig 2005-08-17 06:32:15.000000000 +0000 ++++ src/textview.cpp +@@ -5,6 +5,7 @@ + #include "vc6.h" // Fixes things if you're using VC6, does nothing if otherwise + + #include <stdarg.h> ++#include <string.h> + + #include "debug.h" + #include "event.h" diff --git a/games/xu4/patches/patch-src_u4file.cpp b/games/xu4/patches/patch-src_u4file.cpp new file mode 100644 index 00000000000..79ec0ffd945 --- /dev/null +++ b/games/xu4/patches/patch-src_u4file.cpp @@ -0,0 +1,14 @@ +$NetBSD: patch-src_u4file.cpp,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Add missing header. + +--- src/u4file.cpp.orig 2004-11-29 05:38:26.000000000 +0000 ++++ src/u4file.cpp +@@ -3,6 +3,7 @@ + */ + + #include <cctype> ++#include <stdlib.h> + + #include "u4file.h" + #include "unzip.h" diff --git a/games/xu4/patches/patch-src_weapon.cpp b/games/xu4/patches/patch-src_weapon.cpp new file mode 100644 index 00000000000..91dbb4d7098 --- /dev/null +++ b/games/xu4/patches/patch-src_weapon.cpp @@ -0,0 +1,14 @@ +$NetBSD: patch-src_weapon.cpp,v 1.1.1.1 2012/01/08 15:52:12 wiz Exp $ + +Add missing header. + +--- src/weapon.cpp.orig 2005-10-03 05:42:21.000000000 +0000 ++++ src/weapon.cpp +@@ -5,6 +5,7 @@ + #include "vc6.h" // Fixes things if you're using VC6, does nothing if otherwise + + #include <string> ++#include <string.h> + + #include "weapon.h" + |