1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-27 05:10:36 +00:00
freebsd-ports/games/q2pro/Makefile
2021-04-06 16:31:07 +02:00

142 lines
3.3 KiB
Makefile

# Created by: Alejandro Pulver <alepulver@FreeBSD.org>
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 <bsd.port.options.mk>
.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 <bsd.port.mk>