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:
parent
00ef1073ce
commit
dd3d3d10e9
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=4178
62
games/quakeserver/Makefile
Normal file
62
games/quakeserver/Makefile
Normal 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>
|
3
games/quakeserver/distinfo
Normal file
3
games/quakeserver/distinfo
Normal file
@ -0,0 +1,3 @@
|
||||
MD5 (quake101.zip) = 61b27d2faec32c0a2269061a13e354cb
|
||||
MD5 (quake-FreeBSD.tar.gz) = 5e2b141e2e1c3d0af9eef1748bcbf0d4
|
||||
MD5 (intel_linux_quake101.tgz) = bccaf31cf8f3a81003a8b03b437af067
|
1
games/quakeserver/pkg-comment
Normal file
1
games/quakeserver/pkg-comment
Normal file
@ -0,0 +1 @@
|
||||
a server to host Quake network games under FreeBSD.
|
40
games/quakeserver/pkg-descr
Normal file
40
games/quakeserver/pkg-descr
Normal 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.
|
9
games/quakeserver/pkg-plist
Normal file
9
games/quakeserver/pkg-plist
Normal 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
12
games/quakeserver/scripts/configure
vendored
Normal 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" );
|
Loading…
Reference in New Issue
Block a user