aboutsummaryrefslogtreecommitdiff
path: root/games/ivan
diff options
context:
space:
mode:
Diffstat (limited to 'games/ivan')
-rw-r--r--games/ivan/Makefile.in-install.patch29
-rw-r--r--games/ivan/README5
-rw-r--r--games/ivan/doinst.sh5
-rw-r--r--games/ivan/ivan-0.50-continue_game.patch.gzbin0 -> 323 bytes
-rw-r--r--games/ivan/ivan-0.50-gcc41.patch58
-rw-r--r--games/ivan/ivan.SlackBuild84
-rw-r--r--games/ivan/ivan.desktop11
-rw-r--r--games/ivan/ivan.info8
-rw-r--r--games/ivan/ivan.pngbin0 -> 455 bytes
-rw-r--r--games/ivan/slack-desc12
10 files changed, 212 insertions, 0 deletions
diff --git a/games/ivan/Makefile.in-install.patch b/games/ivan/Makefile.in-install.patch
new file mode 100644
index 0000000000000..c559e010afdd0
--- /dev/null
+++ b/games/ivan/Makefile.in-install.patch
@@ -0,0 +1,29 @@
+--- Makefile.in 2004-12-10 15:34:29.000000000 -0600
++++ Makefile.in.Slack 2006-12-18 18:23:53.000000000 -0600
+@@ -338,16 +338,16 @@
+
+
+ install-data-local:
+- -./mkinstalldirs -p $(localstatedir) $(bindir) $(datadir)/ivan/Script/ $(datadir)/ivan/Graphics/ $(localstatedir)/ivan/Bones/
+- -touch $(localstatedir)/ivan/ivan-highscore.scores
+- -chown games.games $(localstatedir)/ivan/ivan-highscore.scores
+- -chmod 664 $(localstatedir)/ivan/ivan-highscore.scores
+- -chown -R games.games $(localstatedir)/ivan/Bones/
+- -chmod -R u=rwx $(localstatedir)/ivan/Bones/
+- -chmod -R g=rwx $(localstatedir)/ivan/Bones/
+- -chmod -R o=r $(localstatedir)/ivan/Bones/
+- -chgrp games $(bindir)/ivan
+- -chmod 2111 $(bindir)/ivan
++ -./mkinstalldirs -p $(DESTDIR)/$(localstatedir) $(DESTDIR)/$(bindir) $(DESTDIR)/$(datadir)/ivan/Script/ $(DESTDIR)/$(datadir)/ivan/Graphics/ $(DESTDIR)/$(localstatedir)/ivan/Bones/
++ -touch $(DESTDIR)/$(localstatedir)/ivan/ivan-highscore.scores
++ -chown root.games $(DESTDIR)/$(localstatedir)/ivan/ivan-highscore.scores
++ -chmod 664 $(DESTDIR)/$(localstatedir)/ivan/ivan-highscore.scores
++ -chown -R root.games $(DESTDIR)/$(localstatedir)/ivan/Bones/
++ -chmod -R u=rwx $(DESTDIR)/$(localstatedir)/ivan/Bones/
++ -chmod -R g=rwx $(DESTDIR)/$(localstatedir)/ivan/Bones/
++ -chmod -R o=r $(DESTDIR)/$(localstatedir)/ivan/Bones/
++# -chgrp games $(DESTDIR)/$(bindir)/ivan
++# -chmod 2111 $(DESTDIR)/$(bindir)/ivan
+
+ # Tell versions [3.59,3.63) of GNU make to not export all variables.
+ # Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/games/ivan/README b/games/ivan/README
new file mode 100644
index 0000000000000..b1ca1c847ced7
--- /dev/null
+++ b/games/ivan/README
@@ -0,0 +1,5 @@
+Iter Vehemens ad Necem (IVAN) is a graphical roguelike game which currently
+runs in Windows, DOS, and Linux. It features advanced bodypart and material
+handling, multi-colored lighting and, above all, deep gameplay.
+
+Requires: >=sdl-1.2.0
diff --git a/games/ivan/doinst.sh b/games/ivan/doinst.sh
new file mode 100644
index 0000000000000..86a96312ed9f5
--- /dev/null
+++ b/games/ivan/doinst.sh
@@ -0,0 +1,5 @@
+
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications
+fi
+
diff --git a/games/ivan/ivan-0.50-continue_game.patch.gz b/games/ivan/ivan-0.50-continue_game.patch.gz
new file mode 100644
index 0000000000000..f443efe5e865b
--- /dev/null
+++ b/games/ivan/ivan-0.50-continue_game.patch.gz
Binary files differ
diff --git a/games/ivan/ivan-0.50-gcc41.patch b/games/ivan/ivan-0.50-gcc41.patch
new file mode 100644
index 0000000000000..4562ce144a728
--- /dev/null
+++ b/games/ivan/ivan-0.50-gcc41.patch
@@ -0,0 +1,58 @@
+--- FeLib/Include/fearray.h.old 2006-05-21 16:02:19.000000000 +0200
++++ FeLib/Include/fearray.h 2006-05-21 16:03:16.000000000 +0200
+@@ -34,7 +34,7 @@
+ };
+
+ template <class type>
+-inline fearray<type>::fearray<type>(const fearray<type>& A)
++inline fearray<type>::fearray(const fearray<type>& A)
+ : Data(A.Data), Size(A.Size)
+ {
+ if(Data)
+@@ -42,7 +42,7 @@
+ }
+
+ template <class type>
+-inline fearray<type>::fearray<type>(const type* Array, sizetype Size)
++inline fearray<type>::fearray(const type* Array, sizetype Size)
+ : Size(Size)
+ {
+ char* Ptr = new char[Size * sizeof(type) + sizeof(ulong)];
+--- Main/Source/script.cpp.old 2006-05-21 16:14:43.000000000 +0200
++++ Main/Source/script.cpp 2006-05-21 16:16:12.000000000 +0200
+@@ -471,7 +471,7 @@
+ INIT_ENTRY(Flags);
+ }
+
+-contentscript<character>::contentscript<character>()
++contentscript<character>::contentscript()
+ : INIT(Team, DEFAULT_TEAM),
+ INIT(Flags, 0)
+ { }
+@@ -498,7 +498,7 @@
+ return Instance;
+ }
+
+-contentscript<item>::contentscript<item>()
++contentscript<item>::contentscript()
+ : INIT(Category, ANY_CATEGORY),
+ INIT(MinPrice, 0),
+ INIT(MaxPrice, MAX_PRICE),
+@@ -592,7 +592,7 @@
+ INIT_ENTRY(IsInside);
+ }
+
+-contentscript<olterrain>::contentscript<olterrain>()
++contentscript<olterrain>::contentscript()
+ : INIT(VisualEffects, 0),
+ INIT(AttachedArea, DEFAULT_ATTACHED_AREA),
+ INIT(AttachedEntry, DEFAULT_ATTACHED_ENTRY)
+@@ -679,7 +679,7 @@
+ }
+ }
+
+-template <class type, class contenttype> contentmap<type, contenttype>::contentmap<type, contenttype>() : ContentMap(0) { }
++template <class type, class contenttype> contentmap<type, contenttype>::contentmap() : ContentMap(0) { }
+
+ template <class type, class contenttype> contentmap<type, contenttype>::~contentmap<type, contenttype>()
+ {
diff --git a/games/ivan/ivan.SlackBuild b/games/ivan/ivan.SlackBuild
new file mode 100644
index 0000000000000..1787b5c2707b8
--- /dev/null
+++ b/games/ivan/ivan.SlackBuild
@@ -0,0 +1,84 @@
+#!/bin/sh
+
+## Written by hollywoodb
+
+## Feel free to use, modify, redistribute this script.
+## If you make changes please modify the "Written by"
+## so that I don't recieve emails about a script I
+## did not write. Thanks.
+# Modified by Niklas 'Nille' Åkerström for slackware 12.1
+# and removed hollywoodb's email
+# Any questions about this script should be emailed to nille.kungen [at] gmail.com
+
+PRGNAM=ivan
+VERSION=0.50
+ARCH=${ARCH:-i486}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp/SBo}
+PKG=${PKG:-$TMP/package-$PRGNAM}
+OUTPUT=${OUTPUT:-/tmp}
+
+rm -rf $PKG $TMP/$PRGNAM-$VERSION
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP || exit 1
+tar zxvf $CWD/$PRGNAM-$VERSION.tar.gz || exit 1
+cd $PRGNAM-$VERSION || exit 1
+
+chown -R root:root .
+chmod -R u+w,go+r-w,a-s .
+
+if [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+fi
+
+# Fix Makefile.in so that it does mkdir, chown, and chmod within
+# DESTDIR like it is supposed to. Also fix own/perm settings on
+# /usr/games/ivan executable
+patch -p0 < $CWD/Makefile.in-install.patch || exit 1
+# gcc4.1 and 4.2 needs this gentoo patch to compile.
+patch -p0 < $CWD/ivan-0.50-gcc41.patch || exit 1
+#patch to fix crash when choosing continue in game
+# CFLAGS="$SLKCFLAGS -fno-strict-aliasing" and CXXFLAGS="$SLKCFLAGS -fno-strict-aliasing" may also work.
+zcat $CWD/ivan-0.50-continue_game.patch.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1
+# use HOME=.ivansave instead of HOME=IvanSave
+sed -i -e 's/IvanSave/.ivansave/' $TMP/$PRGNAM-$VERSION/Main/Source/game.cpp
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/usr/games \
+ --datadir=/usr/share/games \
+ --libdir=/usr/lib/games \
+ --sysconfdir=/etc \
+ --localstatedir=/var/games \
+ || exit 1
+
+make || exit 1
+make install DESTDIR=$PKG || exit 1
+
+mkdir -p $PKG/usr/share/{applications,pixmaps}
+install -m 0644 $CWD/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
+install -m 0644 $CWD/$PRGNAM.png $PKG/usr/share/pixmaps/
+
+find $PKG | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a {AUTHORS,COPYING,ChangeLog,LICENSING,INSTALL} $PKG/usr/doc/$PRGNAM-$VERSION
+chmod -x $PKG/usr/doc/$PRGNAM-$VERSION/*
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$NAME.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n -p $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz
diff --git a/games/ivan/ivan.desktop b/games/ivan/ivan.desktop
new file mode 100644
index 0000000000000..c4910cac74473
--- /dev/null
+++ b/games/ivan/ivan.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Encoding=UTF-8
+Name=IVAN
+Comment=A graphical roguelike game.
+GenericName=Graphical Roguelike
+Exec=ivan
+Icon=/usr/share/pixmaps/ivan.png
+Terminal=false
+Type=Application
+X-KDE-StartupNotify=true
+Categories=Application;Game
diff --git a/games/ivan/ivan.info b/games/ivan/ivan.info
new file mode 100644
index 0000000000000..2ba2ed7c00e02
--- /dev/null
+++ b/games/ivan/ivan.info
@@ -0,0 +1,8 @@
+PRGNAM="ivan"
+VERSION="0.50"
+HOMEPAGE="http://ivan.sourceforge.net"
+DOWNLOAD="http://downloads.sourceforge.net/sourceforge/ivan/ivan-0.50.tar.gz"
+MD5SUM="88de761ea3ed34a977cd412ff7d2a36e"
+MAINTAINER="Niklas 'Nille' Åkerström"
+EMAIL="nille.kungen[at]gmail.com"
+APPROVED="David Somero" \ No newline at end of file
diff --git a/games/ivan/ivan.png b/games/ivan/ivan.png
new file mode 100644
index 0000000000000..20f52715dab29
--- /dev/null
+++ b/games/ivan/ivan.png
Binary files differ
diff --git a/games/ivan/slack-desc b/games/ivan/slack-desc
new file mode 100644
index 0000000000000..ee7e6556cd1da
--- /dev/null
+++ b/games/ivan/slack-desc
@@ -0,0 +1,12 @@
+ |-----handy-ruler--------------------------------------------------------|
+ivan: ivan (a graphical roguelike game)
+ivan:
+ivan: Iter Vehemens ad Necem (IVAN) is a graphical roguelike game which
+ivan: currently runs in Windows, DOS, and Linux. It features advanced
+ivan: bodypart and material handling, multi-colored lighting and, above
+ivan: all, deep gameplay.
+ivan:
+ivan:
+ivan:
+ivan:
+ivan: