Import of port to host Quake netgames under FreeBSD.

(what good was the QuakeC compiler without a server to run the games on?)
This commit is contained in:
James FitzGibbon 1996-10-28 10:49:53 +00:00
parent 00ef1073ce
commit dd3d3d10e9
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=4178
6 changed files with 127 additions and 0 deletions

View File

@ -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>

View File

@ -0,0 +1,3 @@
MD5 (quake101.zip) = 61b27d2faec32c0a2269061a13e354cb
MD5 (quake-FreeBSD.tar.gz) = 5e2b141e2e1c3d0af9eef1748bcbf0d4
MD5 (intel_linux_quake101.tgz) = bccaf31cf8f3a81003a8b03b437af067

View File

@ -0,0 +1 @@
a server to host Quake network games under FreeBSD.

View File

@ -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.

View File

@ -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

12
games/quakeserver/scripts/configure vendored Normal file
View File

@ -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" );