ports/61507: New port: games/ssc An OpenGL arcade space shoot-em-up with interesting physics
Igor Pokrovsky
tiamat at comset.net
Sun Jan 18 03:30:17 UTC 2004
>Number: 61507
>Category: ports
>Synopsis: New port: games/ssc An OpenGL arcade space shoot-em-up with interesting physics
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Sat Jan 17 19:30:12 PST 2004
>Closed-Date:
>Last-Modified:
>Originator: Igor Pokrovsky
>Release: FreeBSD 4.9-STABLE i386
>Organization:
>Environment:
System: FreeBSD doom.homeunix.org 4.9-STABLE FreeBSD 4.9-STABLE #1: Sun Dec 14 13:12:44 MSK 2003 root at doom.homeunix.org:/usr/obj/usr/src/sys/KERNEL i386
>Description:
SSC is a 2D space shoot-em-up featuring interesting physics and
alife. Destroy all enemies on screen to proceed to the next level.
Inherits a lot of ideas from the game Koules.
>How-To-Repeat:
>Fix:
--- ssc.shar begins here ---
# This is a shell archive. Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file". Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
# ssc
# ssc/pkg-plist
# ssc/pkg-descr
# ssc/distinfo
# ssc/Makefile
# ssc/files
# ssc/files/patch-configure
# ssc/files/patch-src-font.cc
# ssc/files/patch-src-coord.h
# ssc/files/patch-src-Makefile.in
# ssc/files/patch-support-ode-0.039-configurator.c
# ssc/files/patch-support-Makefile.in
# ssc/files/patch-src-asteroid.cc
# ssc/files/patch-src-nnwork.cc
# ssc/files/patch-src-damage.cc
#
echo c - ssc
mkdir -p ssc > /dev/null 2>&1
echo x - ssc/pkg-plist
sed 's/^X//' >ssc/pkg-plist << 'END-of-ssc/pkg-plist'
Xbin/ssc
X%%DATADIR%%/ssc.conf
X%%DATADIR%%/ast.png
X%%DATADIR%%/astr.png
X%%DATADIR%%/Vera.ttf
X%%DATADIR%%/boom.wav
X%%DATADIR%%/exploBig.wav
X%%DATADIR%%/exploPop.wav
X%%DATADIR%%/life_lose.wav
X%%DATADIR%%/power.wav
X%%DATADIR%%/trance.wav
X at dirrm %%DATADIR%%
X%%PORTDOCS%%%%DOCSDIR%%/README
X%%PORTDOCS%%@dirrm %%DOCSDIR%%
END-of-ssc/pkg-plist
echo x - ssc/pkg-descr
sed 's/^X//' >ssc/pkg-descr << 'END-of-ssc/pkg-descr'
XSSC is a 2D space shoot-em-up featuring interesting physics and
Xalife. Destroy all enemies on screen to proceed to the next level.
XInherits a lot of ideas from the game Koules.
X
XWWW: http://sscx.sourceforge.net/
X
X- Igor Pokrovsky
Xtiamat at comset.net
END-of-ssc/pkg-descr
echo x - ssc/distinfo
sed 's/^X//' >ssc/distinfo << 'END-of-ssc/distinfo'
XMD5 (ssc-0.8.tar.bz2) = d6a5eb545adf9d93663c719ad89f23bf
END-of-ssc/distinfo
echo x - ssc/Makefile
sed 's/^X//' >ssc/Makefile << 'END-of-ssc/Makefile'
X# New ports collection makefile for: ssc
X# Date created: 17 Jan 2004
X# Whom: Igor Pokrovsky <tiamat at comset.net>
X#
X# $FreeBSD$
X#
X
XPORTNAME= ssc
XPORTVERSION= 0.8
XCATEGORIES= games
XMASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
XMASTER_SITE_SUBDIR= ${PORTNAME}x
X
XMAINTAINER= tiamat at comset.net
XCOMMENT= An OpenGL arcade space shoot-em-up with interesting physics
X
XLIB_DEPENDS= freetype.9:${PORTSDIR}/print/freetype2 \
X SDL_mixer.2:${PORTSDIR}/audio/sdl_mixer
X
XUSE_BZIP2= yes
XUSE_GMAKE= yes
XUSE_GL= yes
XUSE_SDL= yes
XGNU_CONFIGURE= yes
XCONFIGURE_TARGET= --build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
XCONFIGURE_ENV= CPPFLAGS="${CXXFLAGS} -I${X11BASE}/include" \
X LDFLAGS=-L${X11BASE}/lib
XONLY_FOR_ARCHS= i386
X
Xpost-patch:
X @${PERL} -pi -e "s|SDL\/||g; s|/usr/local|${PREFIX}|g" \
X ${WRKSRC}/src/*.h ${WRKSRC}/src/*.cc
X
X.ifndef (NOPORTDOCS)
Xpost-install:
X @${MKDIR} ${DOCSDIR}
X ${INSTALL_DATA} ${WRKSRC}/README ${DOCSDIR}
X.endif
X
X.include <bsd.port.mk>
END-of-ssc/Makefile
echo c - ssc/files
mkdir -p ssc/files > /dev/null 2>&1
echo x - ssc/files/patch-configure
sed 's/^X//' >ssc/files/patch-configure << 'END-of-ssc/files/patch-configure'
X--- configure.orig Fri Oct 10 17:07:07 2003
X+++ configure Sat Jan 17 16:57:07 2004
X@@ -4196,163 +4196,6 @@
X
X
X
X-CPU_NAME="unknown"
X-CPU_TYPE="unknown"
X-if test -e "/proc/cpuinfo" ; then
X- intel[30]="-march=i386"
X- intel[32]="-march=i386"
X- intel[34]="-march=i386"
X- intel[40]="-march=i486"
X- intel[41]="-march=i486"
X- intel[42]="-march=i486"
X- intel[43]="-march=i486"
X- intel[44]="-march=i486"
X- intel[45]="-march=i486"
X- intel[47]="-march=i486"
X- intel[48]="-march=i486"
X- intel[51]="-march=pentium"
X- intel[52]="-march=pentium"
X- intel[54]="-march=pentium-mmx"
X- intel[61]="-march=pentiumpro"
X- intel[63]="-march=pentium2"
X- intel[65]="-march=pentium2"
X- intel[66]="-march=pentium2"
X- intel[67]="-march=pentium3"
X- intel[68]="-march=pentium3"
X- intel[610]="-march=pentium3"
X- intel[611]="-march=pentium3"
X- intel[150]="-march=pentium4"
X- intel[151]="-march=pentium4"
X- intel[152]="-march=pentium4"
X- amd[50]="-march=i586"
X- amd[51]="-march=i586"
X- amd[52]="-march=i586"
X- amd[53]="-march=i586"
X- amd[56]="-march=k6"
X- amd[57]="-march=k6"
X- amd[58]="-march=k6-2"
X- amd[59]="-march=k6-3"
X- amd[61]="-march=athlon"
X- amd[62]="-march=athlon"
X- amd[63]="-march=athlon"
X- amd[64]="-march=athlon"
X- amd[66]="-march=athlon-xp"
X- amd[67]="-march=athlon"
X- amd[68]="-march=athlon"
X- CPU_TYPE="known"
X- CPU_FAMILY=`cat /proc/cpuinfo | grep "cpu family"`
X- CPU_MODEL=`cat /proc/cpuinfo | grep model[^\ ]`
X- CPU_NAME=`cat /proc/cpuinfo | grep "model name"`
X- CPU_FLAGS=`cat /proc/cpuinfo | grep "flags"`
X- CPU_VENDOR=`cat /proc/cpuinfo | grep "vendor_id"`
X- CPU_FAMILY=${CPU_FAMILY#'cpu family : '}
X- CPU_MODEL=${CPU_MODEL#'model : '}
X- CPU_NAME=${CPU_NAME#'model name : '}
X- CPU_FLAGS=${CPU_FLAGS#'flags : '}
X- CPU_VENDOR=${CPU_VENDOR#'vendor_id : '}
X- if test "x${CPU_VENDOR}" = "xGenuineIntel" ; then
X- CPU_OPTIONS=${intel[$CPU_FAMILY$CPU_MODEL]}
X- fi
X- if test "x${CPU_VENDOR}" = "xAuthenticAMD" ; then
X- CPU_OPTIONS=${amd[$CPU_FAMILY$CPU_MODEL]}
X- fi
X- if test "x${CPU_OPTIONS}" = "x" ; then
X- CPU_TYPE="unknown"
X- fi
X- CPU_EXT=""
X- for i in $CPU_FLAGS ; do
X- case $i in
X- fpu)
X- CPU_FPU="-mfpmath=387"
X- ;;
X- mmx)
X- CPU_EXT="$CPU_EXT -mmmx"
X- ;;
X- sse)
X- CPU_FPU="-mfpmath=sse -msse"
X- ;;
X- sse2)
X- CPU_FPU="-mfpmath=sse -msse2"
X- ;;
X- 3dnow)
X- CPU_EXT="$CPU_EXT -m3dnow"
X- ;;
X- esac
X- done
X- CPU_OPTIONS="$CPU_OPTIONS $CPU_FPU $CPU_EXT"
X-fi
X-if test "x${CPU_TYPE}" = "xunknown"; then
X- CPU_TYPE=`( uname -p ) 2>&1`
X- case $CPU_TYPE in
X- i386)
X- CPU_OPTIONS="-march=i386"
X- ;;
X- i486)
X- CPU_OPTIONS="-march=i486"
X- ;;
X- athlon)
X- CPU_OPTIONS="-march=athlon-xp"
X- ;;
X- Pentium2)
X- CPU_OPTIONS="-march=pentium2"
X- ;;
X- Pentiumpro)
X- CPU_OPTIONS="-march=pentiumpro"
X- ;;
X- Pentium*)
X- CPU_OPTIONS="-march=pentium"
X- ;;
X- k6)
X- CPU_OPTIONS="-march=k6"
X- ;;
X- k6-2)
X- CPU_OPTIONS="-march=k6-2"
X- ;;
X- k6-3)
X- CPU_OPTIONS="-march=k6-3"
X- ;;
X- *)
X- CPU_OPTIONS=""
X- CPU_TYPE="unknown"
X- ;;
X- esac
X- if test "x${CPU_TYPE}" = "xunknown"; then
X- CPU_TYPE=`( uname -m ) 2>&1`
X- case $CPU_TYPE in
X- i386)
X- CPU_OPTIONS="-march=i386"
X- ;;
X- i486)
X- CPU_OPTIONS="-march=i486"
X- ;;
X- i586)
X- CPU_OPTIONS="-march=i586"
X- ;;
X- i686)
X- CPU_OPTIONS="-march=i686"
X- ;;
X- Pentium2)
X- CPU_OPTIONS="-march=pentium2"
X- ;;
X- Pentiumpro)
X- CPU_OPTIONS="-march=pentiumpro"
X- ;;
X- k6)
X- CPU_OPTIONS="-march=k6"
X- ;;
X- k6-2)
X- CPU_OPTIONS="-march=k6-2"
X- ;;
X- k6-3)
X- CPU_OPTIONS="-march=k6-3"
X- ;;
X- *)
X- CPU_OPTIONS=""
X- ;;
X- esac
X- fi
X-fi
X-echo "Detected CPU:`echo $CPU_NAME | sed -e 's/.*://'`"
X COMPILER=$CXX
X for I in "$TMPDIR" "$TEMPDIR" "/tmp" ; do
X test "$I" && break
X@@ -4375,8 +4218,8 @@
X
X
X DBG_CXXFLAGS="$UNAME_DEFS -g -Wall -Werror"
X-OPT_CXXFLAGS="$UNAME_DEFS -O3 -pipe -finline-functions -falign-functions=4 -ffast-math -fno-rtti -fno-exceptions -mfancy-math-387 -fomit-frame-pointer $CPU_OPTIONS -Wall -Werror"
X-PRF_CXXFLAGS="$UNAME_DEFS -O3 -pipe -finline-functions -falign-functions=4 -mfancy-math-387 -pg $CPU_OPTIONS -Wall -Werror"
X+OPT_CXXFLAGS="$UNAME_DEFS -O3 -pipe -finline-functions -ffast-math -fno-rtti -fno-exceptions -mfancy-math-387 -fomit-frame-pointer -Wall -Werror"
X+PRF_CXXFLAGS="$UNAME_DEFS -O3 -pipe -finline-functions -mfancy-math-387 -pg -Wall -Werror"
X
X CXXFLAGS=$OPT_CXXFLAGS
X
END-of-ssc/files/patch-configure
echo x - ssc/files/patch-src-font.cc
sed 's/^X//' >ssc/files/patch-src-font.cc << 'END-of-ssc/files/patch-src-font.cc'
X--- src/font.cc.orig Sat Jan 17 17:00:00 2004
X+++ src/font.cc Sat Jan 17 17:00:22 2004
X@@ -22,6 +22,7 @@
X
X #include <iostream>
X #include <iomanip>
X+#include <math.h>
X #include "font.h"
X
X namespace OGLFT {
END-of-ssc/files/patch-src-font.cc
echo x - ssc/files/patch-src-coord.h
sed 's/^X//' >ssc/files/patch-src-coord.h << 'END-of-ssc/files/patch-src-coord.h'
X--- src/coord.h.orig Sat Jan 17 17:26:46 2004
X+++ src/coord.h Sat Jan 17 17:26:59 2004
X@@ -319,7 +319,7 @@
X };
X
X
X-inline double distance(Coord3<double> &a, Coord3<double> &b)
X+inline double dist(Coord3<double> &a, Coord3<double> &b)
X {
X Coord3<double> tmp;
X tmp = a - b;
END-of-ssc/files/patch-src-coord.h
echo x - ssc/files/patch-src-Makefile.in
sed 's/^X//' >ssc/files/patch-src-Makefile.in << 'END-of-ssc/files/patch-src-Makefile.in'
X--- src/Makefile.in.orig Sat Jan 17 16:40:15 2004
X+++ src/Makefile.in Sat Jan 17 16:41:53 2004
X@@ -68,9 +68,9 @@
X
X LIBS = \
X ../support/ode/lib/libode.a \
X- `freetype-config --libs` \
X+ `${LOCALBASE}/bin/freetype-config --libs` \
X -lGLU -lGL -lSDL_mixer \
X- `sdl-config --libs` \
X+ `${SDL_CONFIG} --libs` \
X -lpng -lz
X
X LTLIBOBJS = @LTLIBOBJS@
X@@ -118,8 +118,8 @@
X target_alias = @target_alias@
X INCLUDES = \
X -I../support/ode/include \
X- `freetype-config --cflags` \
X- `sdl-config --cflags`
X+ `${LOCALBASE}/bin/freetype-config --cflags` \
X+ `${SDL_CONFIG} --cflags`
X
X
X bin_PROGRAMS = ssc
END-of-ssc/files/patch-src-Makefile.in
echo x - ssc/files/patch-support-ode-0.039-configurator.c
sed 's/^X//' >ssc/files/patch-support-ode-0.039-configurator.c << 'END-of-ssc/files/patch-support-ode-0.039-configurator.c'
X--- support/ode-0.039/configurator.c.orig Sat Jan 17 16:34:29 2004
X+++ support/ode-0.039/configurator.c Sat Jan 17 16:35:46 2004
X@@ -249,7 +249,11 @@
X #define NUM_HEADERS 8
X char *header_files[NUM_HEADERS] = {
X "stdio.h", "stdlib.h", "math.h", "string.h",
X- "stdarg.h", "malloc.h", "alloca.h",
X+ "stdarg.h",
X+#ifndef __FreeBSD__
X+ "malloc.h",
X+#endif
X+ "alloca.h",
X "ieeefp.h" // Solaris needs this apparently
X };
X int header_used[NUM_HEADERS];
END-of-ssc/files/patch-support-ode-0.039-configurator.c
echo x - ssc/files/patch-support-Makefile.in
sed 's/^X//' >ssc/files/patch-support-Makefile.in << 'END-of-ssc/files/patch-support-Makefile.in'
X--- support/Makefile.in.orig Sat Jan 17 16:24:05 2004
X+++ support/Makefile.in Sat Jan 17 16:24:25 2004
X@@ -264,13 +264,13 @@
X # Targets
X
X all: ode
X- (cd ode && make configure ode-lib)
X+ (cd ode && ${MAKE} configure ode-lib)
X
X clean: ode
X- (cd ode && make clean)
X+ (cd ode && ${MAKE} clean)
X
X distclean: ode
X- (cd ode && make clean)
X+ (cd ode && ${MAKE} clean)
X
X dist-hook: clean
X for dir in $(ODE_CLEAN); do $(RM) -rf $(ODE_DIR)/$$dir; done
END-of-ssc/files/patch-support-Makefile.in
echo x - ssc/files/patch-src-asteroid.cc
sed 's/^X//' >ssc/files/patch-src-asteroid.cc << 'END-of-ssc/files/patch-src-asteroid.cc'
X--- src/asteroid.cc.orig Sat Jan 17 17:27:37 2004
X+++ src/asteroid.cc Sat Jan 17 17:27:56 2004
X@@ -84,8 +84,8 @@
X
X mp = (p0 + p1) / 2;
X
X- float r = (distance(p0, bc) + distance(p1, bc)) / 2; // radius
X- float l = distance(p0, p1); // edge length
X+ float r = (dist(p0, bc) + dist(p1, bc)) / 2; // radius
X+ float l = dist(p0, p1); // edge length
X l *= strength;
X srand48(seed + p0.hash() + p1.hash());
X float d = drand48() - 0.5;
END-of-ssc/files/patch-src-asteroid.cc
echo x - ssc/files/patch-src-nnwork.cc
sed 's/^X//' >ssc/files/patch-src-nnwork.cc << 'END-of-ssc/files/patch-src-nnwork.cc'
X--- src/nnwork.cc.orig Sat Jan 17 17:30:41 2004
X+++ src/nnwork.cc Sat Jan 17 17:31:00 2004
X@@ -29,6 +29,7 @@
X #include <fstream>
X #include <cassert>
X #include <cstring>
X+#include <stdio.h>
X
X // This class implements a simple three-layer backpropagation network.
X
END-of-ssc/files/patch-src-nnwork.cc
echo x - ssc/files/patch-src-damage.cc
sed 's/^X//' >ssc/files/patch-src-damage.cc << 'END-of-ssc/files/patch-src-damage.cc'
X--- src/damage.cc.orig Sat Jan 17 17:31:55 2004
X+++ src/damage.cc Sat Jan 17 17:32:04 2004
X@@ -44,7 +44,7 @@
X {
X if (obj.mFlocking)
X {
X- double d = distance(mPosition, obj.mPosition);
X+ double d = dist(mPosition, obj.mPosition);
X if (d > 0 && d < 50) interact(obj);
X }
X
END-of-ssc/files/patch-src-damage.cc
exit
--- ssc.shar ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list