mirror of
https://github.com/Ponce/slackbuilds
synced 2024-11-21 19:42:24 +01:00
games/koules: Added to 12.2 repository
This commit is contained in:
parent
ded2ffc51a
commit
4336529878
12 changed files with 338 additions and 0 deletions
21
games/koules/README
Normal file
21
games/koules/README
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
Koules is a fast action arcade-style game for UNIX and OS/2. This version
|
||||||
|
supports X window system, SVGAlib for Linux and OS/2. It works in fine
|
||||||
|
(up to 900x620) resolution with cool 256 color graphics, multiplayer mode
|
||||||
|
up to 5 players, full sound and, of course, network support. Koules is
|
||||||
|
an original idea. First version of Koules was developed from scratch
|
||||||
|
by Jan Hubicka in July 1995.
|
||||||
|
|
||||||
|
Yes, koules used to packaged on disk y1 of Slackware 3.3. It needed
|
||||||
|
quite a bit of patching to work well on a modern system...
|
||||||
|
|
||||||
|
If you're building this for use on a slow system, try setting MITSHM=yes
|
||||||
|
in the environment; it may speed things up (or not).
|
||||||
|
|
||||||
|
If you have Tcl/Tk installed, and you're running KDE, you'll get a nice
|
||||||
|
GUI launcher dialog when you run Koules from the K menu. If you're not
|
||||||
|
running KDE, try running "koules-launcher".
|
||||||
|
|
||||||
|
Note: When playing as player #2 in multiplayer, the default keys are WASD,
|
||||||
|
not the arrows (this is confusing). Players 3 and above don't seem to
|
||||||
|
have default key maps, so be sure to configure the keys before starting
|
||||||
|
the game (or set the control type to mouse or joystick instead).
|
3
games/koules/doinst.sh
Normal file
3
games/koules/doinst.sh
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
if [ -x /usr/bin/update-desktop-database ]; then
|
||||||
|
/usr/bin/update-desktop-database -q usr/share/applications &> /dev/null
|
||||||
|
fi
|
122
games/koules/koules.SlackBuild
Normal file
122
games/koules/koules.SlackBuild
Normal file
|
@ -0,0 +1,122 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# Slackware build script for koules
|
||||||
|
|
||||||
|
# Written by B. Watson (yalhcru@gmail.com)
|
||||||
|
|
||||||
|
# This game used to be distributed on disk Y1 of Slackware 3.3.
|
||||||
|
# This script doesn't share any code with whatever build script
|
||||||
|
# existed back then (partly because I couldn't find a copy)
|
||||||
|
|
||||||
|
PRGNAM=koules
|
||||||
|
VERSION=${VERSION:-1.4}
|
||||||
|
ARCH=${ARCH:-i486}
|
||||||
|
BUILD=${BUILD:-1}
|
||||||
|
TAG=${TAG:-_SBo}
|
||||||
|
|
||||||
|
CWD=$(pwd)
|
||||||
|
TMP=${TMP:-/tmp/SBo}
|
||||||
|
PKG=$TMP/package-$PRGNAM
|
||||||
|
OUTPUT=${OUTPUT:-/tmp}
|
||||||
|
|
||||||
|
# Use MIT shared memory?
|
||||||
|
|
||||||
|
# On some systems, MITSHM speeds things up. On others, it slows them
|
||||||
|
# down or (on 64-bit systems) causes the game to crash on startup.
|
||||||
|
# If you set MITSHM=yes and have problems, try running koules with
|
||||||
|
# the -M flag. If the problems go away, rebuild with MITSHM=no to avoid
|
||||||
|
# having to give the -M flag all the time...
|
||||||
|
# I'm defaulting this to no, because modern systems should be fast enough
|
||||||
|
# to play this simple game without it.
|
||||||
|
|
||||||
|
MITSHM=${MITSHM:-no}
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
rm -rf $PKG
|
||||||
|
mkdir -p $TMP $PKG $OUTPUT
|
||||||
|
cd $TMP
|
||||||
|
rm -rf $PRGNAM$VERSION
|
||||||
|
tar xvf $CWD/$PRGNAM$VERSION-src.tar.gz
|
||||||
|
cd $PRGNAM$VERSION
|
||||||
|
chown -R root:root .
|
||||||
|
chmod -R a-s,u+w,go+r-w .
|
||||||
|
|
||||||
|
# sound server in /usr/libexec, game data in /usr/share/koules
|
||||||
|
# also, enable sound and joystick support.
|
||||||
|
patch -p1 < $CWD/patches/slackware.diff
|
||||||
|
|
||||||
|
# Grrr. Need this to compile with MITSHM disabled.
|
||||||
|
patch -p1 < $CWD/patches/compile_fix.diff
|
||||||
|
|
||||||
|
# Modern gcc seems to hate the inline assembly. Anyway I bet gcc's code
|
||||||
|
# with -O2 is the same or faster...
|
||||||
|
patch -p1 < $CWD/patches/no_inline_asm.diff
|
||||||
|
|
||||||
|
# The author forgot to mention the -E option in the help and man page
|
||||||
|
patch -p1 < $CWD/patches/document_E_option.diff
|
||||||
|
|
||||||
|
# Some people might like the launcher...
|
||||||
|
patch -p1 < $CWD/patches/tcl_launcher_paths.diff
|
||||||
|
|
||||||
|
# I hate Imake even worse than autoconf...
|
||||||
|
if [ "$MITSHM" = "no" ]; then
|
||||||
|
sed -i -e '/#define MITSHM/d' Iconfig
|
||||||
|
fi
|
||||||
|
|
||||||
|
xmkmf -a
|
||||||
|
|
||||||
|
# Did I mention I hate Imake?
|
||||||
|
find . -name Makefile | \
|
||||||
|
xargs sed -i -e "s/-O2.*/$SLKCFLAGS/"
|
||||||
|
touch xkoules.man
|
||||||
|
|
||||||
|
make
|
||||||
|
|
||||||
|
# Don't trust 'make install', it doesn't fully support DESTDIR, and
|
||||||
|
# installs things with weird permissions. Again, Imake sucks.
|
||||||
|
# Also, we want to call the binary and manpage "koules", not "xkoules",
|
||||||
|
# so there'd be some manual stuff going on anyway.
|
||||||
|
|
||||||
|
mkdir -p $PKG/usr/games
|
||||||
|
strip x$PRGNAM
|
||||||
|
install -m0755 x$PRGNAM -o root -g root $PKG/usr/games/$PRGNAM
|
||||||
|
install -m0755 $PRGNAM.tcl -o root -g root $PKG/usr/games/$PRGNAM-launcher
|
||||||
|
|
||||||
|
mkdir -p $PKG/usr/libexec
|
||||||
|
strip $PRGNAM.sndsrv.linux
|
||||||
|
install -m0755 $PRGNAM.sndsrv.linux -o root -g root $PKG/usr/libexec/
|
||||||
|
install -m0755 $CWD/koules.kde -o root -g root $PKG/usr/libexec/
|
||||||
|
|
||||||
|
mkdir -p $PKG/usr/share/$PRGNAM
|
||||||
|
cp sounds/*.raw $PKG/usr/share/$PRGNAM
|
||||||
|
|
||||||
|
mkdir -p $PKG/usr/man/man6
|
||||||
|
gzip -9c x$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
|
||||||
|
|
||||||
|
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
|
||||||
|
cp README TODO ANNOUNCE BUGS COPYING Card Koules.FAQ \
|
||||||
|
$PKG/usr/doc/$PRGNAM-$VERSION
|
||||||
|
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
|
||||||
|
cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README.SBo
|
||||||
|
|
||||||
|
mkdir -p $PKG/usr/share/pixmaps
|
||||||
|
cp Koules.xpm $PKG/usr/share/pixmaps/$PRGNAM.xpm
|
||||||
|
|
||||||
|
mkdir -p $PKG/usr/share/applications
|
||||||
|
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
|
||||||
|
|
||||||
|
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 $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz
|
8
games/koules/koules.desktop
Normal file
8
games/koules/koules.desktop
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
[Desktop Entry]
|
||||||
|
Encoding=UTF-8
|
||||||
|
Name=Koules
|
||||||
|
Exec=/usr/libexec/koules.kde
|
||||||
|
Type=Application
|
||||||
|
Icon=koules
|
||||||
|
GenericName=Koules
|
||||||
|
Categories=Game;Arcade;
|
8
games/koules/koules.info
Normal file
8
games/koules/koules.info
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
PRGNAM="koules"
|
||||||
|
VERSION="1.4"
|
||||||
|
HOMEPAGE="http://www.ucw.cz/~hubicka/koules/English/koules.html"
|
||||||
|
DOWNLOAD="http://www.ucw.cz/~hubicka/koules/packages/koules1.4-src.tar.gz"
|
||||||
|
MD5SUM="0a5ac9e57c8b72e9fc200bc98273235c"
|
||||||
|
MAINTAINER="B. Watson"
|
||||||
|
EMAIL="yalhcru@gmail.com"
|
||||||
|
APPROVED="dsomero"
|
13
games/koules/koules.kde
Normal file
13
games/koules/koules.kde
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# koules.kde
|
||||||
|
# Wrapper script to launch koules from a KDE shortcut
|
||||||
|
# Author: B. Watson (yalhcru@gmail.com)
|
||||||
|
|
||||||
|
# If the GUI launcher can't run (probably because Tcl/Tk isn't
|
||||||
|
# installed), just start the game with default options.
|
||||||
|
|
||||||
|
# Wrap with artsdsp, since koules only knows how to use OSS /dev/dsp
|
||||||
|
# style audio (if it used ALSA, dmix would take care of us).
|
||||||
|
|
||||||
|
artsdsp -n Koules koules-launcher || artsdsp -n Koules koules
|
16
games/koules/patches/compile_fix.diff
Normal file
16
games/koules/patches/compile_fix.diff
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
diff -Naur koules1.4/xlib/init.c koules1.4.patched/xlib/init.c
|
||||||
|
--- koules1.4/xlib/init.c 1998-03-05 12:03:01.000000000 -0500
|
||||||
|
+++ koules1.4.patched/xlib/init.c 2009-04-15 06:12:07.000000000 -0400
|
||||||
|
@@ -88,11 +88,11 @@
|
||||||
|
return (pixmap);
|
||||||
|
}
|
||||||
|
|
||||||
|
+static int bpp;
|
||||||
|
#ifdef MITSHM
|
||||||
|
extern int XShmQueryExtension (Display * dpy);
|
||||||
|
static int haderror;
|
||||||
|
static int (*origerrorhandler) (Display *, XErrorEvent *);
|
||||||
|
-static int bpp;
|
||||||
|
|
||||||
|
|
||||||
|
static int
|
24
games/koules/patches/document_E_option.diff
Normal file
24
games/koules/patches/document_E_option.diff
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
diff -Naur koules1.4/xkoules.6 koules1.4.patched/xkoules.6
|
||||||
|
--- koules1.4/xkoules.6 1998-03-04 13:59:19.000000000 -0500
|
||||||
|
+++ koules1.4.patched/xkoules.6 2009-04-15 06:30:32.000000000 -0400
|
||||||
|
@@ -69,6 +69,9 @@
|
||||||
|
for large display(640x480)
|
||||||
|
default size
|
||||||
|
.TP
|
||||||
|
+.B \-E
|
||||||
|
+for extra large display(900x600)
|
||||||
|
+.TP
|
||||||
|
.B \-m
|
||||||
|
for monochrome displays
|
||||||
|
.TP
|
||||||
|
diff -Naur koules1.4/xlib/init.c koules1.4.patched/xlib/init.c
|
||||||
|
--- koules1.4/xlib/init.c 1998-03-05 12:03:01.000000000 -0500
|
||||||
|
+++ koules1.4.patched/xlib/init.c 2009-04-15 06:29:13.000000000 -0400
|
||||||
|
@@ -775,6 +775,7 @@
|
||||||
|
" -m for monochrome displays\n"
|
||||||
|
" -s for small display(320x250)\n"
|
||||||
|
" -l for large display(640x480)\n"
|
||||||
|
+ " -E for extra large display(900x600)\n"
|
||||||
|
" -p use private colormap\n"
|
||||||
|
" -y Synchronize with X(for debugging)\n"
|
||||||
|
" -f nofade(for debugging)\n"
|
48
games/koules/patches/no_inline_asm.diff
Normal file
48
games/koules/patches/no_inline_asm.diff
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
diff -Naur koules1.4/xlib/shmbitmap.c koules1.4.patched/xlib/shmbitmap.c
|
||||||
|
--- koules1.4/xlib/shmbitmap.c 1998-03-04 13:59:19.000000000 -0500
|
||||||
|
+++ koules1.4.patched/xlib/shmbitmap.c 2009-04-15 06:44:35.000000000 -0400
|
||||||
|
@@ -237,7 +237,7 @@
|
||||||
|
#define __clipy1 0
|
||||||
|
#undef __clipy2
|
||||||
|
#define __clipy2 (MAPHEIGHT+19)
|
||||||
|
-#ifdef __i386__
|
||||||
|
+#if 0
|
||||||
|
static INLINE int
|
||||||
|
muldiv64 (int CONST m1, int CONST m2, int CONST d)
|
||||||
|
{
|
||||||
|
@@ -333,7 +333,7 @@
|
||||||
|
}
|
||||||
|
if (r1 & 1)
|
||||||
|
{ /* left */
|
||||||
|
-#ifdef __i386__
|
||||||
|
+#if 0
|
||||||
|
y1 += muldiv64 (__clipx1 - x1, y2 - y1, x2 - x1);
|
||||||
|
#else
|
||||||
|
y1 += (long) (__clipx1 - x1) * (long) (y2 - y1) / (long) (x2 - x1);
|
||||||
|
@@ -342,7 +342,7 @@
|
||||||
|
}
|
||||||
|
else if (r1 & 2)
|
||||||
|
{ /* right */
|
||||||
|
-#ifdef __i386__
|
||||||
|
+#if 0
|
||||||
|
y1 += muldiv64 (__clipx2 - x1, y2 - y1, x2 - x1);
|
||||||
|
#else
|
||||||
|
y1 += (long) (__clipx2 - x1) * (long) (y2 - y1) / (long) (x2 - x1);
|
||||||
|
@@ -351,7 +351,7 @@
|
||||||
|
}
|
||||||
|
else if (r1 & 4)
|
||||||
|
{ /* top */
|
||||||
|
-#ifdef __i386__
|
||||||
|
+#if 0
|
||||||
|
x1 += muldiv64 (__clipy1 - y1, x2 - x1, y2 - y1);
|
||||||
|
#else
|
||||||
|
x1 += (long) (__clipy1 - y1) * (long) (x2 - x1) / (long) (y2 - y1);
|
||||||
|
@@ -360,7 +360,7 @@
|
||||||
|
}
|
||||||
|
else if (r1 & 8)
|
||||||
|
{ /* bottom */
|
||||||
|
-#ifdef __i386__
|
||||||
|
+#if 0
|
||||||
|
x1 += muldiv64 (__clipy2 - y1, x2 - x1, y2 - y1);
|
||||||
|
#else
|
||||||
|
x1 += (long) (__clipy2 - y1) * (long) (x2 - x1) / (long) (y2 - y1);
|
40
games/koules/patches/slackware.diff
Normal file
40
games/koules/patches/slackware.diff
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
diff -Naur koules1.4/Iconfig koules1.4.patched/Iconfig
|
||||||
|
--- koules1.4/Iconfig 1998-03-04 15:29:05.000000000 -0500
|
||||||
|
+++ koules1.4.patched/Iconfig 2009-04-15 05:54:44.000000000 -0400
|
||||||
|
@@ -29,13 +29,14 @@
|
||||||
|
/* linux joystick support
|
||||||
|
Now compiles w/o joystick toolkit. For using joystick support is
|
||||||
|
joystick toolikit required...of course */
|
||||||
|
-/*#define JOYSTICK*/
|
||||||
|
+#define JOYSTICK
|
||||||
|
/*for fast 386 based assembler routines
|
||||||
|
recomended for linux*/
|
||||||
|
/*#define I386ASSEMBLY*/
|
||||||
|
+#define LinuxArchitecture
|
||||||
|
/* directories*/
|
||||||
|
KOULESDIR =/usr/bin/X11
|
||||||
|
-SOUNDDIR =/usr/local/lib/koules
|
||||||
|
+SOUNDDIR =/usr/share/koules
|
||||||
|
MANDIR =/usr/local/man/man6
|
||||||
|
|
||||||
|
/*You need some extra libraryes for BSD sockets compatibility?*/
|
||||||
|
@@ -51,7 +52,6 @@
|
||||||
|
SUBDIRS = xlib
|
||||||
|
|
||||||
|
#if defined(LinuxArchitecture)
|
||||||
|
- SYSDEFS = -Wall -fomit-frame-pointer -O6 -ffast-math
|
||||||
|
#if !defined(NAS_SOUND)&&!defined(RSOUND)
|
||||||
|
#define SOUND
|
||||||
|
SOUNDSERVER = koules.sndsrv.linux
|
||||||
|
diff -Naur koules1.4/Imakefile koules1.4.patched/Imakefile
|
||||||
|
--- koules1.4/Imakefile 1998-03-04 13:59:19.000000000 -0500
|
||||||
|
+++ koules1.4.patched/Imakefile 2009-04-15 05:35:39.000000000 -0400
|
||||||
|
@@ -56,7 +56,7 @@
|
||||||
|
|
||||||
|
DEFINES = -DONLYANSI -DSOUND $(JOYSTICK1) $(NET) $(MITSHM1) $(HAVEUSLEEP1) $(SYSDEFS) $(JOYSTICK) -Ixlib\
|
||||||
|
$(NAMEDEF) $(ASMDEF)\
|
||||||
|
- -DSOUNDSERVER=\"$(SOUNDDIR)/$(SOUNDSERVER)\" \
|
||||||
|
+ -DSOUNDSERVER=\"/usr/libexec/$(SOUNDSERVER)\" \
|
||||||
|
-DSOUNDDIR=\"$(SOUNDDIR)\" \
|
||||||
|
-DSOUNDDEV=\"$(SOUNDDEV)\"
|
||||||
|
#endif
|
16
games/koules/patches/tcl_launcher_paths.diff
Normal file
16
games/koules/patches/tcl_launcher_paths.diff
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
diff -Naur koules1.4/koules.tcl koules1.4.patched/koules.tcl
|
||||||
|
--- koules1.4/koules.tcl 1998-03-04 13:59:19.000000000 -0500
|
||||||
|
+++ koules1.4.patched/koules.tcl 2009-04-15 08:00:38.000000000 -0400
|
||||||
|
@@ -3,9 +3,9 @@
|
||||||
|
# This is simple user (anti)friendly dialog for starting koules
|
||||||
|
# Only reason why I did it is that I wanted to try tcl/tk
|
||||||
|
#files - configure here if paths are differ
|
||||||
|
-set xkoules "/usr/bin/X11/xkoules"
|
||||||
|
-set koulessvga "/usr/local/bin/koules.svga"
|
||||||
|
-set koulessound "/usr/local/lib/koules/creator1.raw"
|
||||||
|
+set xkoules "/usr/games/koules"
|
||||||
|
+set koulessvga "@@@NOSUCHFILE@@@"
|
||||||
|
+set koulessound "/usr/share/koules/creator1.raw"
|
||||||
|
set config "~/.xkoules.opt"
|
||||||
|
set revision 1.1
|
||||||
|
# Set default
|
19
games/koules/slack-desc
Normal file
19
games/koules/slack-desc
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
# HOW TO EDIT THIS FILE:
|
||||||
|
# The "handy ruler" below makes it easier to edit a package description. Line
|
||||||
|
# up the first '|' above the ':' following the base package name, and the '|'
|
||||||
|
# on the right side marks the last column you can put a character in. You must
|
||||||
|
# make exactly 11 lines for the formatting to be correct. It's also
|
||||||
|
# customary to leave one space after the ':'.
|
||||||
|
|
||||||
|
|-----handy-ruler------------------------------------------------------|
|
||||||
|
koules: koules (fast action arcade-style game)
|
||||||
|
koules:
|
||||||
|
koules: Koules is a fast action arcade-style game for UNIX and OS/2. This
|
||||||
|
koules: version supports X window system, SVGAlib for Linux and OS/2. It
|
||||||
|
koules: works in fine (up to 900x620) resolution with cool 256 color graphics,
|
||||||
|
koules: multiplayer mode up to 5 players, full sound and, of course, network
|
||||||
|
koules: support. Koules is an original idea. First version of Koules was
|
||||||
|
koules: developed from scratch by Jan Hubicka in July 1995.
|
||||||
|
koules:
|
||||||
|
koules:
|
||||||
|
koules:
|
Loading…
Reference in a new issue