diff options
Diffstat (limited to 'games/ioquake3/Makefile')
-rw-r--r-- | games/ioquake3/Makefile | 158 |
1 files changed, 158 insertions, 0 deletions
diff --git a/games/ioquake3/Makefile b/games/ioquake3/Makefile new file mode 100644 index 00000000000..a89be3f852a --- /dev/null +++ b/games/ioquake3/Makefile @@ -0,0 +1,158 @@ +# New ports collection makefile for: ioquake3 +# Date created: 3 Jun 2006 +# Whom: alepulver +# +# $FreeBSD$ +# + +PORTNAME= ioquake3 +PORTVERSION= 1.33 +CATEGORIES= games +MASTER_SITES= ${MASTER_SITE_LOCAL} +MASTER_SITE_SUBDIR= alepulver + +MAINTAINER= alepulver@FreeBSD.org +COMMENT= Cleaned-up and enhaced version of Quake 3 + +USE_BZIP2= yes +USE_GCC= 3.2+ +USE_GMAKE= yes +WRKSRC= ${WRKDIR}/quake3 + +OPTIONS= CLIENT "Build client" on \ + GAMELIBS "Build game libraries (when not mandatory)" off \ + DEDICATED "Build dedicated server" on \ + OPENAL "Enable OpenAL (3D sound) support" off \ + OPENAL_DLOPEN "Enable dynamic loading of OpenAL" off \ + OPTIMIZED_CFLAGS "Enable compilation optimizations" on \ + SDL_AUDIO "Use SDL for audio" off \ + SDL_VIDEO "Use SDL for video" off \ + SMP "Build SMP (threaded) client" on \ + VORBIS "Enable Ogg Vorbis codec support" off + +MAKE_ENV+= DEFAULT_BASEDIR="${Q3DIR}" LIBDIR="${LIBDIR}" \ + PTHREAD_LIBS="${PTHREAD_LIBS}" +PLIST_SUB= LIBDIR="${LIBDIR:S/${PREFIX}\///}" + +LIBDIR= ${PREFIX}/lib/${PORTNAME} +SVN_REV= 777 +VM_ARCHS= amd64 i386 powerpc + +.include <bsd.port.pre.mk> + +.if ${OSVERSION} < 500000 +EXTRA_PATCHES+= ${FILESDIR}/extra-patch-code__unix__unix_shared.c +.endif + +.if defined(WITHOUT_CLIENT) && defined(WITHOUT_DEDICATED) && \ + defined(WITHOUT_SMP) +IGNORE= needs at least one of CLIENT, DEDICATED and SMP options +.endif + +.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 !defined(WITHOUT_CLIENT) || !defined(WITHOUT_SMP) +# OpenAL +. if defined(WITH_OPENAL) +LIB_DEPENDS+= openal.0:${PORTSDIR}/audio/openal +MAKE_ENV+= USE_OPENAL=1 +. if defined(WITH_OPENAL_DLOPEN) +MAKE_ENV+= USE_OPENAL_DLOPEN=1 +. endif +. endif +# SDL +. if defined(WITH_SDL_AUDIO) +USE_SDL= sdl +MAKE_ENV+= USE_SDL_AUDIO=1 +. endif +. if defined(WITH_SDL_VIDEO) +USE_SDL= sdl +MAKE_ENV+= USE_SDL_VIDEO=1 +. else +USE_GL= yes +. endif +# Vorbis +. if defined(WITH_VORBIS) +LIB_DEPENDS+= vorbis.3:${PORTSDIR}/audio/libvorbis +MAKE_ENV+= USE_CODEC_VORBIS=1 +. endif +.endif + +.if !defined(WITHOUT_CLIENT) +MAKE_ENV+= BUILD_CLIENT=1 +PLIST_SUB+= CLIENT="" +Q3BIN+= ioquake3 +.else +PLIST_SUB+= CLIENT="@comment " +.endif + +.if !defined(WITHOUT_DEDICATED) +MAKE_ENV+= BUILD_SERVER=1 +PLIST_SUB+= DEDICATED="" +Q3BIN+= ioq3ded +.else +PLIST_SUB+= DEDICATED="@comment " +.endif + +.if defined(WITH_GAMELIBS) || !defined(HAVE_VM_COMPILED) +MAKE_ENV+= BUILD_GAME_SO=1 +PLIST_SUB+= GAMELIBS="" +.else +PLIST_SUB+= GAMELIBS="@comment " +.endif + +.if !defined(WITHOUT_OPTIMIZED_CFLAGS) +MAKE_ENV+= USE_OPTIMIZED_CFLAGS=1 +.endif + +.if !defined(WITHOUT_SMP) +MAKE_ENV+= BUILD_CLIENT_SMP=1 +PLIST_SUB+= SMP="" +Q3BIN+= ioquake3-smp +.else +PLIST_SUB+= SMP="@comment " +.endif + +.if ${OSVERSION} < 500000 +post-patch: + @${REINPLACE_CMD} -e 's|stdint\.h|inttypes.h|' \ + ${BUILD_WRKSRC}/code/qcommon/q_shared.h +.endif + +do-install: +.for bin in ${Q3BIN} + ${INSTALL_PROGRAM} ${WRKSRC}/build/release/${bin} ${PREFIX}/bin +.endfor +.if defined(WITH_GAMELIBS) || !defined(HAVE_VM_COMPILED) +.for dir in baseq3 missionpack + ${MKDIR} ${LIBDIR}/${dir} + ${INSTALL_PROGRAM} ${WRKSRC}/build/release/${dir}/*.so ${LIBDIR}/${dir} +.endfor +.endif + +post-install: +.if defined(WITH_SDL_AUDIO) || defined(WITH_OPENAL) + @${ECHO_CMD} + @${ECHO_CMD} "WARNING: if you have sound problems try recompiling without SDL_AUDIO and OPENAL options." | ${FMT} + @${ECHO_CMD} +.endif + +maint-gen-distfile: + @if [ -f ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX} ]; then \ + ${ECHO_CMD} "ERROR: the distfile already exists."; \ + ${FALSE}; \ + fi + svn export -r${SVN_REV} svn://svn.icculus.org/quake3/trunk quake3 + ${TAR} jcf ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX} quake3 + ${RM} -rf quake3 + +.include "${.CURDIR}/../quake3-data/Makefile.include" +.include <bsd.port.post.mk> |