summaryrefslogtreecommitdiff
path: root/games/fuhquake/Makefile
blob: e081a4925d71764286965f52d4d93c3fcaa6e219 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
# New ports collection makefile for:	FuhQuake
# Date created:				01 Jun 2003
# Whom:					Alexey Dokuchaev <danfe@regency.nsu.ru>
#
# $FreeBSD$
#

PORTNAME=	fuhquake
PORTVERSION=	0.28
CATEGORIES=	games
MASTER_SITES=	http://www.fuhquake.net/files/source/:src \
		http://www.fuhquake.net/files/releases/:dat \
		http://freebsd.nsu.ru/distfiles/:pak
DISTNAME=	${PORTNAME}-source-v${PORTVERSION}
DISTFILES=	${DISTNAME}${EXTRACT_SUFX}:src \
		${PORTNAME}-linux-v${PORTVERSION}${EXTRACT_SUFX}:dat \
		pak0.pak${EXTRACT_SUFX}:pak

MAINTAINER=	danfe@regency.nsu.ru
COMMENT=	An excellent QuakeWorld client

.if exists(${LOCALBASE}/lib/libvga.so.1)
WITH_SVGA=	yes
.endif

.if exists(${X11BASE}/lib/libxmms.so.3)
WITH_XMMS=	yes
.endif

.if ${MACHINE_ARCH} == "i386" && !defined(WITHOUT_SVGA) && defined(WITH_SVGA)
LIB_DEPENDS+=	vga.1:${PORTSDIR}/graphics/svgalib
END_TARGETS+=	${PORTNAME}-svga
PLIST_SUB+=	SVGA=""
.else
PLIST_SUB+=	SVGA="@comment "
.endif

.if !defined(WITHOUT_X11)
LIB_DEPENDS+=	X11.6:${PORTSDIR}/x11/XFree86-4-libraries \
		Xext.6:${PORTSDIR}/x11/XFree86-4-libraries
END_TARGETS+=	${PORTNAME}-x11
PLIST_SUB+=	X11=""
.else
PLIST_SUB+=	X11="@comment "
.endif

.if !defined(WITHOUT_GLX)
LIB_DEPENDS+=	GL.1:${PORTSDIR}/x11/XFree86-4-libraries \
		png.5:${PORTSDIR}/graphics/png \
		jpeg.9:${PORTSDIR}/graphics/jpeg
END_TARGETS+=	${PORTNAME}-glx
PLIST_SUB+=	GLX=""
.else
PLIST_SUB+=	GLX="@comment "
.endif

.if !defined(WITHOUT_XMMS) && defined(WITH_XMMS) && !(defined(WITHOUT_X11) && defined(WITHOUT_GLX))
LIB_DEPENDS+=	xmms.3:${PORTSDIR}/multimedia/xmms
MAKE_ARGS+=	-DWITH_XMMS
.endif

pre-everything::
.if ${MACHINE_ARCH} == "i386" && !defined(WITH_SVGA)
	@${ECHO_MSG} "Define WITH_SVGA to build SVGA client"
.endif
.if !defined(WITH_XMMS)
	@${ECHO_MSG} "Define WITH_XMMS to enable \`\`MP3 Player'' feature"
.endif
.if !defined(WITHOUT_X11)
	@${ECHO_MSG} "Define WITHOUT_X11 to disable building of X11 client"
.endif
.if !defined(WITHOUT_GLX)
	@${ECHO_MSG} "Define WITHOUT_GLX to disable building of GLX client"
.endif
.if !defined(WITH_OPTIMIZED_CFLAGS)
	@${ECHO_MSG} "Define WITH_OPTIMIZED_CFLAGS to enable extra optimization options"
.endif
.if !defined(WITHOUT_X86_ASM)
	@${ECHO_MSG} "Define WITHOUT_X86_ASM to disable x86 assembly code"
.endif

MAKEFILE=	${FILESDIR}/Makefile
USE_ZIP=	yes
EXTRACT_BEFORE_ARGS+=	-qo
WRKSRC=		${WRKDIR}/source

post-extract:
	@${FIND} -E ${WRKDIR} -type f -iregex ".*\.(c|h|s|txt)" -exec ${FILESDIR}/fix^m.sh '{}' \;
	@${CP} ${FILESDIR}/*.c ${WRKSRC}

do-build:
.if !defined(WITHOUT_X11)
	@(cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} clean x11)
.endif

.if !defined(WITHOUT_GLX)
	@(cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} clean glx)
.endif

.if ${MACHINE_ARCH} == "i386" && defined(WITH_SVGA)
	@(cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} clean svga)
.endif

do-install:
.for tgt in ${END_TARGETS}
	${INSTALL_PROGRAM} ${WRKSRC}/${tgt} ${PREFIX}/bin
.endfor
	@${MKDIR} ${DATADIR}/qw
	@${MKDIR} ${DATADIR}/${PORTNAME}
	${INSTALL_DATA} ${WRKDIR}/qw/qwprogs.dat ${DATADIR}/qw
	${INSTALL_DATA} ${WRKDIR}/qw/spprogs.dat ${DATADIR}/qw
	${INSTALL_DATA} ${WRKDIR}/pak0.pak ${DATADIR}/${PORTNAME}
.if !defined(NOPORTDOCS)
	@${MKDIR} ${DOCSDIR}
. for txt in benchmark config_manager crosshairs linux logitech mp3 \
	particles pointing rulesets track
	${INSTALL_DATA} ${WRKDIR}/doc/${txt}.txt ${DOCSDIR}
. endfor
	${INSTALL_DATA} ${WRKDIR}/${PORTNAME}.txt ${DOCSDIR}
.endif

post-install:
	@${SED} -e 's#$${PREFIX}#${PREFIX}#g' ${PKGMESSAGE}

.include <bsd.port.mk>