# Created by: alepulver # $FreeBSD$ PORTNAME= evq3 PORTVERSION= 1.3.20080810 PORTREVISION= 11 CATEGORIES= games MASTER_SITES= LOCAL/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:print/freetype2 USES= gmake dos2unix tar:bzip2 ALL_TARGET= release WRKSRC= ${WRKDIR}/${PORTNAME} CFLAGS+= -DMAP_ANONYMOUS=MAP_ANON OPTIONS_DEFINE= CURL CURL_DLOPEN GAMELIBS OPENAL OPENAL_DLOPEN VOIP VORBIS OPTIMIZED_CFLAGS DOCS 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="-lpthread" PLIST_SUB= LIBDIR="${LIBDIR:S/${PREFIX}\///}" LIBDIR= ${PREFIX}/lib/${PORTNAME} VM_ARCHS= amd64 i386 .include "${.CURDIR}/../quake3-data/Makefile.include" .include .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: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:audio/speex MAKE_ENV+= USE_VOIP=1 . endif # Vorbis . if ${PORT_OPTIONS:MVORBIS} LIB_DEPENDS+= libvorbis.so: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} -r ${PORTNAME} .include