# Created by: Alejandro Pulver PORTNAME= q2pro PORTVERSION= ${SVN_REV} PORTREVISION= 12 CATEGORIES= games MASTER_SITES= LOCAL/alepulver MAINTAINER= danfe@FreeBSD.org COMMENT= Quake II engine modification compatible with R1Q2 LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/gnu.txt USES= dos2unix gmake tar:bzip2 WRKSRC= ${WRKDIR}/${PORTNAME} ALL_TARGET= # SVN_REV= 142 MAKE_ENV= LIBDIR="${LIBDIR}" PLIST_SUB= LIBDIR="${LIBDIR:S|${PREFIX}/||}" LIBDIR= ${PREFIX}/lib/${PORTNAME} LDFLAGS_i386= -Wl,-znotext OPTIONS_DEFINE= CLIENT DEDICATED GAME GL SOFT UI OPTIONS_DEFINE_i386= ASM OPTIONS_DEFAULT= CLIENT DEDICATED GL SOFT UI OPTIONS_DEFAULT_i386= ASM CLIENT_DESC= Build client DEDICATED_DESC= Build dedicated server GAME_DESC= Build main game (default mod) GL_DESC= Build OpenGL renderer SOFT_DESC= Build software renderer UI_DESC= Build user interface (for client menus) .include .if ${PORT_OPTIONS:MCLIENT} USES+= sdl USE_SDL+= sdl ALL_TARGET+= client PLIST_SUB+= CLIENT="" .else PLIST_SUB+= CLIENT="@comment " .endif .if ${PORT_OPTIONS:MDEDICATED} ALL_TARGET+= server PLIST_SUB+= DEDICATED="" .else PLIST_SUB+= DEDICATED="@comment " .endif .if ${PORT_OPTIONS:MGAME} ALL_TARGET+= game PLIST_SUB+= GAME="" .else PLIST_SUB+= GAME="@comment " .endif .if ${PORT_OPTIONS:MGL} LIB_DEPENDS+= libpng.so:graphics/png USES+= gl jpeg USE_GL= gl ALL_TARGET+= ref_newgl PLIST_SUB+= GL="" .else PLIST_SUB+= GL="@comment " .endif .if ${PORT_OPTIONS:MSOFT} ALL_TARGET+= ref_soft PLIST_SUB+= SOFT="" .else PLIST_SUB+= SOFT="@comment " .endif .if ${PORT_OPTIONS:MUI} ALL_TARGET+= ui PLIST_SUB+= UI="" .else PLIST_SUB+= UI="@comment " .endif .if ${PORT_OPTIONS:MASM} MAKE_ENV+= USE_X86_ASM=yes .endif post-patch: @${REINPLACE_CMD} -e 's|jpeg_mem_src|local_jpeg_mem_src|' \ -e '/png_set_gray_1_2_4_to_8/s|png_set|&_expand|' \ ${WRKSRC}/ref_shared/r_images.c @${REINPLACE_CMD} -E 's|[[:digit:]]+|${SVN_REV}|' \ ${WRKSRC}/include/version.h # Fix the build with -fno-common (for Clang 11 and GCC 10) @${REINPLACE_CMD} -e '/^unsigned[[:blank:]]*d_8to24table/,+1d' \ ${WRKSRC}/ref_soft/sw_main.c @${REINPLACE_CMD} -e '/\*cl_paused/,+1d' \ ${WRKSRC}/source/cl_null.c do-install: @${MKDIR} ${STAGEDIR}${LIBDIR}/baseq2 .if ${PORT_OPTIONS:MCLIENT} ${INSTALL_PROGRAM} ${WRKSRC}/build/release/q2pro \ ${STAGEDIR}${PREFIX}/bin .endif .if ${PORT_OPTIONS:MDEDICATED} ${INSTALL_PROGRAM} ${WRKSRC}/build/release/q2proded \ ${STAGEDIR}${PREFIX}/bin .endif .if ${PORT_OPTIONS:MGAME} ${INSTALL_PROGRAM} ${WRKSRC}/build/release/game.so \ ${STAGEDIR}${LIBDIR}/baseq2 .endif .if ${PORT_OPTIONS:MGL} ${INSTALL_PROGRAM} ${WRKSRC}/build/release/ref_newgl.so \ ${STAGEDIR}${LIBDIR} .endif .if ${PORT_OPTIONS:MSOFT} ${INSTALL_PROGRAM} ${WRKSRC}/build/release/ref_soft.so \ ${STAGEDIR}${LIBDIR} .endif .if ${PORT_OPTIONS:MUI} ${INSTALL_PROGRAM} ${WRKSRC}/build/release/ui.so \ ${STAGEDIR}${LIBDIR} .endif generate-distfile: @if [ -f ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX} ]; then \ ${ECHO_CMD} "ERROR: the distfile already exists."; \ ${FALSE}; \ fi svn export -r${SVN_REV} \ https://svn.sourceforge.net/svnroot/q2pro/q2pro q2pro ${TAR} jcf ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX} q2pro ${RM} -r q2pro .include "${.CURDIR}/../quake2-data/Makefile.include" .include