aboutsummaryrefslogtreecommitdiffstats
path: root/games/fuhquake/Makefile
blob: a5367951ea6c4c5f2ef56f202652a78ebc1f76ca (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
# New ports collection makefile for:    FuhQuake
# Date created:             01 Jun 2003
# Whom:                 Alexey Dokuchaev <danfe@regency.nsu.ru>
#
# $FreeBSD$
#

PORTNAME=   fuhquake
PORTVERSION=    0.31
PORTREVISION=   7
CATEGORIES= games
MASTER_SITES=   http://www.fuhquake.net/files/releases/v${PORTVERSION}/ \
        ftp://gibbage.mine.nu/clients/fuhquake/releases/v${PORTVERSION}/ \
        http://gamefiles.blueyonder.co.uk/blueyondergames/quake/quakeworld/clients/fuhquake/source/ \
        http://www.fuhquake.net/files/misc/:misc
DISTNAME=   ${PORTNAME}-source-v${PORTVERSION}
DISTFILES=  ${DISTNAME}${EXTRACT_SUFX} \
        ${PORTNAME}-linux-v${PORTVERSION}${EXTRACT_SUFX}
DIST_SUBDIR=    ${PORTNAME}

MAINTAINER= danfe@FreeBSD.org
COMMENT=    An excellent QuakeWorld client

USE_ZIP=    yes
MAKEFILE=   ${FILESDIR}/Makefile
WRKSRC=     ${WRKDIR}/source

OPTIONS=    GLX "Build GLX client" on \
        HUD "High quality HUD images" off \
        OPTIMIZED_CFLAGS "Enable compilation optimizations" on \
        X11 "Build X11 client" on \
        X86_ASM "Enable x86 assembly code" on \
        XMMS "Enable MP3 Player feature" off

DATADIR=    ${Q1DIR}
MAKE_ENV=   DATADIR="${DATADIR}"

.include "${.CURDIR}/../quake-data/Makefile.include"

.include <bsd.port.pre.mk>

.if !defined(WITH_GLX) && !defined(WITH_X11)
IGNORE=     needs at least one client (GLX or X11)
.endif

.if defined(WITH_GLX)
USE_GL=     yes
LIB_DEPENDS+=   png.6:${PORTSDIR}/graphics/png \
        jpeg.11:${PORTSDIR}/graphics/jpeg
PLIST_SUB+= GLX=""
CLIENTS+=   glx
.else
PLIST_SUB+= GLX="@comment "
.endif

.if defined(WITH_HUD)
DISTFILES+= fuh-hud${EXTRACT_SUFX}:misc
PLIST_SUB+= HUD=""
.else
PLIST_SUB+= HUD="@comment "
.endif

.for f in OPTIMIZED_CFLAGS X86_ASM
.   if defined(WITH_${f})
MAKE_ARGS+= -DWITH_${f}
.   else
MAKE_ARGS+= -DWITHOUT_${f}
.   endif
.endfor

.if defined(WITH_X11)
USE_XORG=   x11 xxf86dga
PLIST_SUB+= X11=""
CLIENTS+=   x11
.else
PLIST_SUB+= X11="@comment "
.endif

.if (defined(WITH_XMMS) || exists(${LOCALBASE}/lib/libxmms.so.4)) && \
    defined(CLIENTS)
LIB_DEPENDS+=   xmms.4:${PORTSDIR}/multimedia/xmms
MAKE_ARGS+= -DWITH_XMMS \
        PTHREAD_CFLAGS=${PTHREAD_CFLAGS} \
        PTHREAD_LIBS=${PTHREAD_LIBS}
.endif

post-patch:
    @${CP} ${FILESDIR}/*.c ${WRKSRC}

do-build:
.for f in ${CLIENTS}
    @(cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} \
        ${MAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} clean ${f})
.endfor

do-install:
.for f in ${CLIENTS}
    ${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME}-${f} ${PREFIX}/bin
.endfor
    ${MKDIR} ${DATADIR}
    ${MKDIR} ${DATADIR}/${PORTNAME}
    ${INSTALL_DATA} ${WRKDIR}/qw/*.dat ${DATADIR}/${PORTNAME}
    ${INSTALL_DATA} ${WRKDIR}/${PORTNAME}/pak0.pak ${DATADIR}/${PORTNAME}
.if defined(WITH_HUD)
    ${MKDIR} ${DATADIR}/${PORTNAME}/textures/wad
    ${INSTALL_DATA} ${WRKDIR}/qw/charset.png ${DATADIR}/${PORTNAME}
    ${INSTALL_DATA} ${WRKDIR}/qw/textures/wad/* \
        ${DATADIR}/${PORTNAME}/textures/wad
.endif
.if !defined(NOPORTDOCS)
    ${MKDIR} ${DOCSDIR}
    ${INSTALL_DATA} ${WRKDIR}/${PORTNAME}/doc/*.txt ${DOCSDIR}
    ${INSTALL_DATA} ${WRKDIR}/${PORTNAME}.txt ${DOCSDIR}
.endif

.include <bsd.port.post.mk>