aboutsummaryrefslogtreecommitdiffstats
path: root/games/rnd_jue/Makefile
blob: 400c5fa3e8e04b5d02ee77bc426ac43a8ab4cd4f (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
# Created by: Rusmir Dusko <nemysis@FreeBSD.org>
# $FreeBSD$

PORTNAME=   rnd_jue
PORTVERSION=    3.3.0.0
PORTREVISION=   5
CATEGORIES= games
MASTER_SITES=   http://www.artsoft.org/RELEASES/unix/rocksndiamonds/:game \
        SF/nemysisfreebsdp/${CATEGORIES}/rocksndiamonds/
DISTFILES=  ${PORTNAME}-${DISTVERSION}${EXTRACT_SUFX}:game \
        rocksndiamonds-3.3.1.0${EXTRACT_SUFX}:game \
        ${LEVELS_BD_FANS:S/$/.zip/} \
        Tutorial_Alpha.zip \
        ${PORTNAME}_icons.tar.gz
DIST_SUBDIR=    rocksndiamonds
EXTRACT_ONLY=   ${PORTNAME}-${DISTVERSION}${EXTRACT_SUFX} \
        rocksndiamonds-3.3.1.0${EXTRACT_SUFX} \
        ${PORTNAME}_icons.tar.gz

MAINTAINER= nemysis@FreeBSD.org
COMMENT=    Colorful Boulderdash'n'Emerald Mine'n'Sokoban'n'Stuff jue

LICENSE=    GPLv2

LIB_DEPENDS+=   libsmpeg.so:${PORTSDIR}/multimedia/smpeg
EXTRACT_DEPENDS+=${UNZIP_CMD}:${PORTSDIR}/archivers/unzip

USES=       gmake
USE_SDL=    image mixer net sdl
MAKE_ARGS=  CC="${CC}" MAKE="${MAKE_CMD}" OPTIONS="${CFLAGS}" \
        RO_GAME_DIR="${DATADIR}" \
        X11_PATH="${LOCALBASE}"
ALL_TARGET= sdl

SUB_FILES=  pkg-message

LEVELS_BD_FANS= JuergenBonhagen rnd_the_h_world Walpurgis_Collection

PORTDOCS=   *

DOCSRCDIR1= ${WRKSRC}
DOC_FILES1= CREDITS ChangeLog

DOCSRCDIR2= ${WRKSRC}/docs/elements
DOCSDIR2=   ${DOCSDIR}/docs/elements
DOC_FILES2= *.txt

INSTALLS_ICONS= yes
ICON_SIZES= 32x32 48x48 64x64 72x72 96x96

DESKTOP_ENTRIES="R'n'D jue" "" "${PORTNAME}" \
        "${PORTNAME}" "Game;ArcadeGame;" ""

.include <bsd.port.options.mk>

post-extract-script:
    @(cd ${WRKDIR}/rocksndiamonds* && ${COPYTREE_SHARE} levels ${WRKSRC})
.for l in ${LEVELS_BD_FANS:S/$/.zip/}
    @${UNZIP_CMD} -qo -d ${WRKSRC}/levels ${_DISTDIR}/${l}
.endfor
    @${UNZIP_CMD} -qo -d ${WRKSRC}/levels/Tutorials \
        ${_DISTDIR}/Tutorial_Alpha.zip
    @(cd ${WRKSRC}/levels/Tutorials && ${MV} \
        "Tutorial Alpha" rnd_tutorial_alpha)

    @(cd ${WRKSRC}/levels/"Walpurgis Collection" && \
        ${RM} -fr "Walpurgis Gardens" "Walpurgis World")
    @(cd ${WRKSRC}/levels/rnd_the_h_world && ${RM} -fr hwld_dceos)
    @${RM} -f ${WRKDIR}/${PORTNAME}/Readme.txt
    @${RM} -f ${WRKSRC}/levels/Readme.txt

post-patch:
    @${REINPLACE_CMD} \
        -e 's|sdl-config|$${SDL_CONFIG}|g' ${WRKSRC}/src/Makefile
    @${REINPLACE_CMD} \
        -e 's|machine/soundcard.h|sys/soundcard.h|' \
        ${WRKSRC}/src/libgame/sound.c
    @${REINPLACE_CMD} \
        -e 's|machine/joystick.h|sys/joystick.h|' \
        ${WRKSRC}/src/libgame/joystick.c

do-install:
    ${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin/

.for dir in graphics levels music sounds
    @(cd ${WRKSRC} && ${COPYTREE_SHARE} ${dir} ${STAGEDIR}${DATADIR})
.endfor

.for s in ${ICON_SIZES}
    @${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/hicolor/${s}/apps/
    ${INSTALL_DATA} ${WRKDIR}/${PORTNAME}_${s}.png \
        ${STAGEDIR}${PREFIX}/share/icons/hicolor/${s}/apps/${PORTNAME}.png
.endfor
    ${LN} -sf ${PREFIX}/share/icons/hicolor/48x48/apps/${PORTNAME}.png \
        ${STAGEDIR}${PREFIX}/share/pixmaps/

    @${MKDIR} ${STAGEDIR}${DOCSDIR}
    ${INSTALL_DATA} ${DOC_FILES1:S|^|${DOCSRCDIR1}/|} ${STAGEDIR}${DOCSDIR}
    @${MKDIR} ${STAGEDIR}${DOCSDIR2}
    ${INSTALL_DATA} ${DOC_FILES2:S|^|${DOCSRCDIR2}/|} ${STAGEDIR}${DOCSDIR2}

    @cd ${STAGEDIR}${PREFIX} && ${FIND} ${DATADIR_REL}/levels \
        -type f >> ${TMPPLIST} && \
        ${FIND} ${DATADIR_REL}/levels -type d -o -type l | ${SORT} -r | \
        ${SED} 's|^|@dirrm |' >> ${TMPPLIST}

.include <bsd.port.mk>