aboutsummaryrefslogtreecommitdiffstats
path: root/games
diff options
context:
space:
mode:
authorjfitz <jfitz@FreeBSD.org>1996-10-28 18:49:53 +0800
committerjfitz <jfitz@FreeBSD.org>1996-10-28 18:49:53 +0800
commit3db8b98e2383e59b2929c05ef1f7881ac2bdcfa9 (patch)
treee1eda12b7eb2974b878db32237100b94e191e868 /games
parent3238fef43f6412be0f19a4947aa630920e5b5069 (diff)
downloadfreebsd-ports-gnome-3db8b98e2383e59b2929c05ef1f7881ac2bdcfa9.tar.gz
freebsd-ports-gnome-3db8b98e2383e59b2929c05ef1f7881ac2bdcfa9.tar.zst
freebsd-ports-gnome-3db8b98e2383e59b2929c05ef1f7881ac2bdcfa9.zip
Import of port to host Quake netgames under FreeBSD.
(what good was the QuakeC compiler without a server to run the games on?)
Diffstat (limited to 'games')
-rw-r--r--games/quakeserver/Makefile62
-rw-r--r--games/quakeserver/distinfo3
-rw-r--r--games/quakeserver/pkg-comment1
-rw-r--r--games/quakeserver/pkg-descr40
-rw-r--r--games/quakeserver/pkg-plist9
-rw-r--r--games/quakeserver/scripts/configure12
6 files changed, 127 insertions, 0 deletions
diff --git a/games/quakeserver/Makefile b/games/quakeserver/Makefile
new file mode 100644
index 000000000000..d5eeaf24df01
--- /dev/null
+++ b/games/quakeserver/Makefile
@@ -0,0 +1,62 @@
+# New ports collection makefile for: quakeserver
+# Version required: 1.01
+# Date created: October 26th 1996
+# Whom: jfitz@FreeBSD.ORG
+#
+# $Id$
+#
+
+PKGNAME= quakeserver-1.01
+CATEGORIES+= games
+MASTER_SITES= ftp://ftp.stomped.com/pub/idstuff/quake/ \
+ ftp://ftp.stomped.com/pub/quake/x_linux/ \
+ ftp://ftp1.idsoftware.com/idstuff/quake/ \
+ ftp://ftp2.idsoftware.com/idsutff/quake/ \
+ ftp://ftp.cdrom.com/pub/idgames/idstuff/quake/ \
+ ftp://quake.best.com/pub/idsoftware/quake/ \
+ ftp://ftp.nuqneH.org/pub/quake/idsoftware/ \
+ ftp://PC/games/DOOM/idstuff/quake/ \
+ ftp://ftp.sun.ac.za/pub/msdos/idgames/idstuff/quake/ \
+ ftp://iconz.co.nz/pub/quake/
+
+DISTFILES= quake101.zip \
+ quake-FreeBSD.tar.gz \
+ intel_linux_quake101.tgz
+
+MAINTAINER= jfitz@freebsd.org
+
+FETCH_DEPENDS= unzip:${PORTSDIR}/archivers/unzip \
+ lha:${PORTSDIR}/archivers/lha
+
+RUN_DEPENDS= expect:${PORTSDIR}/lang/expect \
+ /compat/linux/lib/libc.so.5.0.9:${PORTSDIR}/emulators/linux_lib
+
+# Uncomment the next line to include the QuakeC compiler port as well
+#RUN_DEPENDS+= qcc:${PORTSDIR}/games/qcc
+
+NO_WRKSUBDIR= YES
+NO_BUILD= YES
+
+do-extract:
+ @ ${MKDIR} -p work/quake
+ @ ${MKDIR} -p work/server
+ unzip -o ${DISTDIR}/quake101.zip -d ${WRKDIR}/quake QSW101.?
+ @ cat ${WRKDIR}/quake/QSW101.[1-7] > ${WRKDIR}/quake/resource.exe
+ cd ${WRKDIR}/quake; lha xf resource.exe id1/pak0.pak
+ @ cd ${WRKDIR}/server; tar zxf ${DISTDIR}/quake-FreeBSD.tar.gz
+ @ cd ${WRKDIR}/server/quake; tar zxf ${DISTDIR}/intel_linux_quake101.tgz
+
+do-install:
+ @ ${MKDIR} -p ${PREFIX}/quakeserver
+ @ ${MKDIR} -p ${PREFIX}/quakeserver/id1
+ for file in ${WRKDIR}/quake/id1/*; do \
+ ${INSTALL_DATA} $$file ${PREFIX}/quakeserver/id1; \
+ done
+ ${INSTALL} ${COPY} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} ${WRKDIR}/server/quake/xquake ${PREFIX}/quakeserver
+ ${INSTALL_PROGRAM} ${WRKDIR}/server/quake/qstat ${PREFIX}/quakeserver; \
+ ${INSTALL_DATA} ${WRKDIR}/server/quake/README.FreeBSD ${PREFIX}/quakeserver
+ for file in qsrv qsrv.expect qslog; do \
+ ${INSTALL_SCRIPT} ${WRKDIR}/server/quake/$$file ${PREFIX}/quakeserver; \
+ done
+
+.include <bsd.port.mk>
diff --git a/games/quakeserver/distinfo b/games/quakeserver/distinfo
new file mode 100644
index 000000000000..db7f5e567f17
--- /dev/null
+++ b/games/quakeserver/distinfo
@@ -0,0 +1,3 @@
+MD5 (quake101.zip) = 61b27d2faec32c0a2269061a13e354cb
+MD5 (quake-FreeBSD.tar.gz) = 5e2b141e2e1c3d0af9eef1748bcbf0d4
+MD5 (intel_linux_quake101.tgz) = bccaf31cf8f3a81003a8b03b437af067
diff --git a/games/quakeserver/pkg-comment b/games/quakeserver/pkg-comment
new file mode 100644
index 000000000000..3d5e325bf220
--- /dev/null
+++ b/games/quakeserver/pkg-comment
@@ -0,0 +1 @@
+a server to host Quake network games under FreeBSD.
diff --git a/games/quakeserver/pkg-descr b/games/quakeserver/pkg-descr
new file mode 100644
index 000000000000..c7b07b167a9f
--- /dev/null
+++ b/games/quakeserver/pkg-descr
@@ -0,0 +1,40 @@
+Quake Server README
+===================
+
+Ok, this one definately falls into the "I had some time one Sunday
+afternoon..." category.
+
+This port allows you to host Quake network games on your FreeBSD machine.
+It uses the Intel/Linux version of Quake, so it depends upon the linux
+compatibility libraries, and requires that you are running a fairly recent
+2.2-current with Linux emulation turned on. For more details about getting
+Linux emulation running in the kernel/OS, refer to chapter 21 of the FreeBSD
+Handbook.
+
+This installs the v1.01 shareware version of Quake, and the required files
+to automate a server. If you have purchased the registered version of Quake
+and wish to host a registered server, take the files from the ID1/
+subdirectory of your installed version of Quake, and put them into the id1/
+subdirectory of /usr/local/quakeserver. Be sure to make the filenames
+lowercase.
+
+NOTE: I'm not sure how this will work with the v1.06 version of registered
+quake. Currently, I can't get the intel loader to work with the 1.06 game
+files, so I'm not optimistic. YMMV.
+
+Credits to iD for creating a great game, and to Dan Nelson
+<dnelson@emsphone.com> for creating the expect script that wraps around the
+server in case it crashes.
+
+Note that this port can technically be used to play Quake under X, but I
+don't recommend it. It's slow, small, and prone to crashing. If you want
+to host a very fast and responsive Quake game, use this. If you want to
+play it, run DOS.
+
+Shameless plug: I've also ported qcc, the QuakeC compiler to let server ops
+make their own quake games. You do need registered Quake to do this, but
+it's well worth it. Look for qcc in the games collection of FreeBSD's ports
+repository.
+
+--
+j. \ No newline at end of file
diff --git a/games/quakeserver/pkg-plist b/games/quakeserver/pkg-plist
new file mode 100644
index 000000000000..e1bfff245439
--- /dev/null
+++ b/games/quakeserver/pkg-plist
@@ -0,0 +1,9 @@
+quakeserver/id1/pak0.pak
+quakeserver/xquake
+quakeserver/README.FreeBSD
+quakeserver/qsrv
+quakeserver/qsrv.expect
+quakeserver/qstat
+quakeserver/qslog
+@dirrm quakeserver/id1
+@dirrm quakeserver
diff --git a/games/quakeserver/scripts/configure b/games/quakeserver/scripts/configure
new file mode 100644
index 000000000000..dfd31e72b5a0
--- /dev/null
+++ b/games/quakeserver/scripts/configure
@@ -0,0 +1,12 @@
+#!/usr/bin/perl
+#
+
+eval '(exit $?0)' && eval 'exec /usr/bin/perl -S $0 ${1+"$@"}'
+& eval 'exec /usr/bin/perl -S $0 $argv:q'
+if 0;
+
+chop( $hostname = `hostname` );
+$files = ( "$ENV{'WRKDIR'}/server/quake/qslog $ENV{'WRKDIR'}/server/quake/qsrv.expect" );
+
+system( "/usr/bin/perl -pi -e 's|%%PREFIX%%|$ENV{'PREFIX'}|g' $files" );
+system( "/usr/bin/perl -pi -e 's|%%HOSTNAME%%|$hostname|g' $files" );