freebsd-ports/games/linux-quake3/Makefile

113 lines
2.7 KiB
Makefile
Raw Normal View History

# New ports collection makefile for: Quake 3 Arena Dedicated Server
# Date created: Sun Jun 3 00:52:38 EDT 2001
# Whom: pat@databits.net
#
# $FreeBSD$
#
PORTNAME= quake3
PORTVERSION= 1.32c
CATEGORIES= games linux
MASTER_SITES= ${MASTER_SITE_IDSOFTWARE:S|$|quake3/linux/:data|} \
${MASTER_SITE_IDSOFTWARE:S|$|quake3/:patch|}
PKGNAMEPREFIX= linux-
DISTFILES= ${Q3DATAFILE}:data \
${Q3PATCHFILE}:patch
DIST_SUBDIR= ${Q3PKGNAMEPREFIX}data
MAINTAINER= alepulver@FreeBSD.org
COMMENT= Quake III Arena for Linux
USE_ZIP= yes
Mega-patch to cleanup the ports infrastructure regarding our linux bits: - USE_LINUX now implies NO_FILTER_SHLIBS=yes. It also doesn't use FreeBSD tools to strip binaries anymore, so it's not neccesary anymore to override STRIP and STRIP_CMD. - USE_LINUX_PREFIX implies NO_MTREE now. - In the USE_LINUX case, USE_XLIB now depends upon the linux X11 libraries instead upon the native FreeBSD libraries. - The variable LINUX_BASE_PORT contains a string which is suitable as an item in *_DEPENDS, so if a port BATCH_DEPENDS or FETCH_DEPENDS upon the default (or overriden) linux base, ${LINUX_BASE_PORT} should be used instead of a hardcoded reference. - Change all ports to comply to the "new world order". - The Ports Collection now allows to override the default linux_base port. Specify e.g. OVERRIDE_LINUX_BASE_PORT=rh-9 in /etc/make.conf to use ${PORTSDIR}/emulators/linux_base-rh-9 (the logic is to use ${PORTSDIR}/emulators/linux_base-${OVERRIDE_LINUX_BASE_PORT}). - If USE_LINUX or OVERRIDE_LINUX_BASE doesn't point to an existing linux_base port and if USE_LINUX isn't set to "yes" (case insensitive), the port will be marked as IGNORE. [1] - Readd USE_LINUX knobs into several ports and make several uses of a conditional dependency ("USE_LINUX?=") into an unconditional one ("USE_LINUX=") which where removed/changed by Trevor to allow the use of alternative linux_base ports. While this is a nice goal, the implementation resulted in missing dependencies. The OVERRIDE_LINUX_BASE_PORT knob in this commit is supposed to fix the problem while keeping the feature. Basicaly this includes a backout of Trevor's commit, to prevent confusion I mention it here explicitely. - Use the correct prefix (X11- instead of LOCAL- or LINUX-) for some ports. Chase dependencies for this. - Changes to make linux_devtools installable on amd64, remove some stray device nodes (they don't work on recent OS versions and aren't really needed). - Make linux_base-8 PREFIX clean and remove some stray device nodes. Additionally tell a little bit more about how to setup NIS/YP [2]. - Update the PGSQL dependency in the linux-opengroupware port to a recent version (the old one isn't available anymore), I don't know if this works (at least it isn't more broken than before). - Use PREFIX/usr/share/doc instead of PREFIX/usr/doc in the divx4linux ports, the former path exists already and gets populated by other packages too (PREFIX=LINUXPREFIX!). - Fix some obvious (non-linuxolator) bugs in some linux ports while being there. - Bump PORTREVISION where neccesary. Requested by: portmgr (linimon) [1] Submittted by: Gerrit Kuehn <gerrit_huehn@gruft.fido.de [2] Approved by: portmgr (kris, linimon), maintainers (or maintainer timeout) Tested on: ports cluster (kris) Reviewed by: silence on emulation@ Superseedes PR: 69997 Maintainer approval from: chris@chrisburkert.de cracauer@cons.org des girgen jamie@bishopston.net mezz mi nivit@users.sf.net pat simond@irrelevant.org riggs@rrr.de Udo.Schweigert@Siemens.com
2005-06-18 00:59:29 +02:00
USE_LINUX= yes
NO_WRKSUBDIR= yes
OPTIONS= CLIENT "Install client" on \
DEDICATED "Install dedicated server" on \
PUNKBUSTER "Install PunkBuster" on \
SMP "Install SMP (threaded) client" on
PLIST_SUB+= LIBDIR="${LIBDIR:S/${PREFIX}\///}"
LATEST_LINK= ${PKGNAMEPREFIX}${PORTNAME}
LIBDIR= ${PREFIX}/libexec/${PKGNAMEPREFIX}${PORTNAME}
Q3DATAFILE= linuxq3apoint-1.32b-3.x86.run
Q3PATCHFILE= quake3-${PORTVERSION}.zip
do-extract:
@${MKDIR} ${WRKDIR}
@cd ${WRKDIR} && ${TAIL} +356 ${_DISTDIR}/${Q3DATAFILE} | \
${TAR} zxf -
@${UNZIP_CMD} -qo ${_DISTDIR}/${Q3PATCHFILE} -d ${WRKDIR}
post-extract:
.for f in q3ded quake3.x86 quake3-smp.x86
@${MV} "${WRKSRC}/Quake III Arena 1.32c/linux/${f}" \
${WRKSRC}/bin/Linux/x86/${f}
.endfor
.include "${.CURDIR}/../quake3-data/Makefile.include"
.include <bsd.port.pre.mk>
.if defined(WITHOUT_CLIENT) && defined(WITHOUT_DEDICATED) && \
defined(WITHOUT_SMP)
IGNORE= needs at least one of the CLIENT, DEDICATED and SMP options
.endif
.if !defined(WITHOUT_DEDICATED)
PROGS+= q3ded
PLIST_SUB+= DEDICATED=""
.else
PLIST_SUB+= DEDICATED="@comment "
.endif
.if !defined(WITHOUT_CLIENT)
PROGS+= quake3.x86
PLIST_SUB+= CLIENT=""
.else
PLIST_SUB+= CLIENT="@comment "
.endif
.if !defined(WITHOUT_PUNKBUSTER)
PLIST_SUB+= PUNKBUSTER=""
.else
PLIST_SUB+= PUNKBUSTER="@comment "
.endif
.if !defined(WITHOUT_SMP)
PROGS+= quake3-smp.x86
PLIST_SUB+= SMP=""
.else
PLIST_SUB+= SMP="@comment "
.endif
do-build:
.for f in ${PROGS}
@(${ECHO_CMD} "#!${SH}"; \
${ECHO_CMD} "cd ${DATADIR} || exit 1"; \
${ECHO_CMD} "exec ${LIBDIR}/${f:R} \"$$@\"") > ${WRKDIR}/${f:R}
2002-10-20 21:12:03 +02:00
.endfor
do-install:
@${MKDIR} ${LIBDIR}
.for f in ${PROGS}
@${INSTALL_PROGRAM} ${WRKSRC}/bin/Linux/x86/${f} ${LIBDIR}/${f:R}
@${INSTALL_SCRIPT} ${WRKDIR}/${f:R} ${PREFIX}/bin/linux-${f:R}
2002-10-20 21:12:03 +02:00
.endfor
.if !defined(WITHOUT_PUNKBUSTER)
@${CP} -Rp ${WRKSRC}/pb ${DATADIR}
@${RM} ${DATADIR}/pb/PB_EULA.txt
.endif
.if !defined(NOPORTDOCS)
@${MKDIR} ${DOCSDIR}
@${INSTALL_DATA} ${WRKSRC}/README-linux.txt ${DOCSDIR}
@${CP} -Rp ${WRKSRC}/Docs/LinuxFAQ ${DOCSDIR}
. if !defined(WITHOUT_PUNKBUSTER)
@${CP} -Rp ${WRKSRC}/Docs/PunkBuster ${DOCSDIR}
@${INSTALL_DATA} ${WRKSRC}/pb/PB_EULA.txt ${DOCSDIR}/PunkBuster
. endif
.endif
.include <bsd.port.post.mk>