freebsd-ports/games/evq3/Makefile
Niclas Zeising 39fc32e828 The FreeBSD x11@ and graphics team proudly presents
a zeising, kwm production, with help from dumbbell, bdrewery:

NEW XORG ON FREEBSD 9-STABLE AND 10-STABLE

This update switches over to use the new xorg stack by default on FreeBSD 9
and 10 stable, on osversions where vt(9) is available.
It is still possible to use the old stack by specifying WITHOUT_NEW_XORG in
/etc/make.conf .
FreeBSD 8-STABLE and released versions of FreeBSD still use
the old version.
A package repository with binary packages for new xorg will
be available soon.

This patch also contains updates of libxcb and related ports, pixman, as well
as some drivers and utilities.

Bump portrevisions for xf86-* ports, as well as virtualbox-ose-additions due
to xserver version change.

Apart from these updates, the way shared libraries are handled has been
changed for all xorg ports, as well as libxml2 and freetype, which means
ltverhack is gone and as a consequence shared libraries have been bumped.
The plan is that this change will make library bumps less likely in the
future.
All affected ports have had their portrevisions bumped as a consequence of
this.

Fix some issues where WITH_NEW_XORG weren't detected properly on CURRENT.

Update instructions, hardware support, and more notes can be found on
https://wiki.freebsd.org/Graphics

Thanks to:	all testers, bdrewery and the FreeBSD x11@ team
exp-run by:	bdrewery [1]
PR:		ports/187602 [1]
Approved by:	portmgr (bdrewery), core (jhb)
2014-04-16 18:28:47 +00:00

160 lines
4.1 KiB
Makefile

# Created by: alepulver
# $FreeBSD$
PORTNAME= evq3
PORTVERSION= 1.3.20080810
PORTREVISION= 9
CATEGORIES= games
MASTER_SITES= ${MASTER_SITE_LOCAL:S|$|alepulver/|}
DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \
pak-evq3.pk3 \
pak-5evq3.pk3
EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}
MAINTAINER= ports@FreeBSD.org
COMMENT= Marriage of XreaL and Icculus.org Q3 w/ Improvements
LIB_DEPENDS= libfreetype.so:${PORTSDIR}/print/freetype2
USES= gmake dos2unix
USE_BZIP2= yes
ALL_TARGET= release
WRKSRC= ${WRKDIR}/${PORTNAME}
CFLAGS+= -DMAP_ANONYMOUS=MAP_ANON
OPTIONS_DEFINE= CURL CURL_DLOPEN GAMELIBS OPENAL OPENAL_DLOPEN VOIP VORBIS OPTIMIZED_CFLAGS
OPTIONS_DEFAULT= CLIENT CURL CURL_DLOPEN DEDICATED OPTIMIZED_CFLAGS SMP VORBIS
OPTIONS_MULTI= TYPE
OPTIONS_MULTI_TYPE= CLIENT DEDICATED SMP
CLIENT_DESC= Build client
CURL_DLOPEN_DESC= Enable dynamic loading of curl
GAMELIBS_DESC= Build game libraries (when not mandatory)
DEDICATED_DESC= Build dedicated server
OPENAL_DESC= Enable OpenAL (3D sound) support
OPENAL_DLOPEN_DESC= Enable dynamic loading of OpenAL
SMP_DESC= Build SMP (threaded) client
VOIP_DESC= Enable Voice Over IP
# USES must be before bsd.port.pre.mk
OPENAL_USES= openal:al
MAKE_ENV= DEFAULT_BASEDIR="${Q3DIR}" LIBDIR="${LIBDIR}" \
PTHREAD_LIBS="${PTHREAD_LIBS}"
PLIST_SUB= LIBDIR="${LIBDIR:S/${PREFIX}\///}"
LIBDIR= ${PREFIX}/lib/${PORTNAME}
VM_ARCHS= amd64 i386
.include "${.CURDIR}/../quake3-data/Makefile.include"
.include <bsd.port.pre.mk>
.for i in ${ARCH}
. if ${VM_ARCHS:M${i}} != ""
HAVE_VM_COMPILED= yes
. endif
.endfor
.if defined(HAVE_VM_COMPILED)
MAKE_ENV+= HAVE_VM_COMPILED=true
.endif
.if ${PORT_OPTIONS:MCLIENT} || !empty(PORT_OPTIONS:MSMP)
# curl
. if ${PORT_OPTIONS:MCURL}
LIB_DEPENDS+= libcurl.so:${PORTSDIR}/ftp/curl
MAKE_ENV+= USE_CURL=1
. if ${PORT_OPTIONS:MCURL_DLOPEN}
MAKE_ENV+= USE_CURL_DLOPEN=1
. endif
. endif
# OpenAL
. if ${PORT_OPTIONS:MOPENAL}
MAKE_ENV+= USE_OPENAL=1
. if ${PORT_OPTIONS:MOPENAL_DLOPEN}
MAKE_ENV+= USE_OPENAL_DLOPEN=1
. endif
. endif
# SDL
USE_SDL= sdl
# VOIP
. if ${PORT_OPTIONS:MVOIP}
LIB_DEPENDS+= libspeex.so:${PORTSDIR}/audio/speex
MAKE_ENV+= USE_VOIP=1
. endif
# Vorbis
. if ${PORT_OPTIONS:MVORBIS}
LIB_DEPENDS+= libvorbis.so:${PORTSDIR}/audio/libvorbis
MAKE_ENV+= USE_CODEC_VORBIS=1
. endif
.endif
.if ${PORT_OPTIONS:MCLIENT}
MAKE_ENV+= BUILD_CLIENT=1
PLIST_SUB+= CLIENT=""
Q3BIN+= evq3
.else
PLIST_SUB+= CLIENT="@comment "
.endif
.if ${PORT_OPTIONS:MDEDICATED}
MAKE_ENV+= BUILD_SERVER=1
PLIST_SUB+= DEDICATED=""
Q3BIN+= evq3ded
.else
PLIST_SUB+= DEDICATED="@comment "
.endif
.if ${PORT_OPTIONS:MGAMELIBS} || !defined(HAVE_VM_COMPILED)
MAKE_ENV+= BUILD_GAME_SO=1
PLIST_SUB+= GAMELIBS=""
.else
PLIST_SUB+= GAMELIBS="@comment "
.endif
.if ${PORT_OPTIONS:MOPTIMIZED_CFLAGS}
MAKE_ENV+= USE_OPTIMIZED_CFLAGS=1
.endif
.if ${PORT_OPTIONS:MSMP}
MAKE_ENV+= BUILD_CLIENT_SMP=1
PLIST_SUB+= SMP=""
Q3BIN+= evq3-smp
.else
PLIST_SUB+= SMP="@comment "
.endif
post-patch:
# Do not log debug output of bots (can be enabled with "homedir"/"gamedir").
@${REINPLACE_CMD} -e 's|"botlib\.log"|"/dev/null"|' \
${WRKSRC}/code/botlib/be_interface.c
# Enable mmap on i386.
@${REINPLACE_CMD} -e 's|__linux__|__unix__|' \
${WRKSRC}/code/qcommon/vm_x86.c
do-install:
@${MKDIR} ${STAGEDIR}${LIBDIR}/baseq3
${INSTALL_DATA} ${DISTDIR}/pak-evq3.pk3 ${DISTDIR}/pak-5evq3.pk3 \
${STAGEDIR}${LIBDIR}/baseq3
.for bin in ${Q3BIN}
${INSTALL_PROGRAM} ${WRKSRC}/build/release/${bin} ${STAGEDIR}${PREFIX}/bin
.endfor
.if ${PORT_OPTIONS:MGAMELIBS} || !defined(HAVE_VM_COMPILED)
. for dir in baseq3 missionpack
@${MKDIR} ${STAGEDIR}${LIBDIR}/${dir}
${INSTALL_PROGRAM} ${WRKSRC}/build/release/${dir}/*.so ${STAGEDIR}${LIBDIR}/${dir}
. endfor
.endif
@${MKDIR} ${STAGEDIR}${DOCSDIR}
${INSTALL_DATA} ${WRKSRC}/README ${STAGEDIR}${DOCSDIR}
maint-gen-distfile:
@if [ -f ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX} ]; then \
${ECHO_CMD} "ERROR: the distfile already exists."; \
${FALSE}; \
fi
svn export svn://70.86.44.154/evolution/trunk/evq3 ${PORTNAME}
tar cjf ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX} ${PORTNAME}
${RM} -rf ${PORTNAME}
.include <bsd.port.post.mk>