Update games/hexalate to version 1.1.6
[dports.git] / games / nethack34 / Makefile
1 # Created by: asami
2 # $FreeBSD$
3
4 PORTNAME=       nethack34
5 PORTVERSION=    3.4.3
6 PORTREVISION=   9
7 CATEGORIES=     games
8 MASTER_SITES=   SF/${TRUEPORTNAME}/${TRUEPORTNAME}/${PORTVERSION}
9 DISTNAME=       ${TRUEPORTNAME}-${PORTVERSION:S/.//g}-src
10
11 MAINTAINER=     glewis@FreeBSD.org
12 COMMENT=        Dungeon explorin', slashin', hackin' game
13
14 LICENSE=        nethack
15 LICENSE_NAME=   NETHACK GENERAL PUBLIC LICENSE
16 LICENSE_FILE=   ${WRKSRC}/dat/license
17 LICENSE_PERMS=  dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
18
19 WRKSRC=         ${WRKDIR}/${TRUEPORTNAME}-${PORTVERSION}
20
21 USES=           alias gmake ncurses tar:tgz
22 MAKE_ENV=       GRAPHICS="${GRAPHICS}"
23 PLIST_SUB=      HACKNAME="${HACKNAME}" \
24                 HACKEXT="${HACKEXT}"
25 MAKE_JOBS_UNSAFE=       yes
26 TRUEPORTNAME=   nethack
27
28 # Configure these variables as you want them to be.
29 HACKEXT?=       34
30 HACKNAME?=      ${TRUEPORTNAME}${HACKEXT}
31 HACKDIR?=       share/${HACKNAME}
32 HACKLINK=       ${TRUEPORTNAME}
33
34 DATADIR=        ${PREFIX}/${HACKDIR}
35 DOCSDIR=        ${PREFIX}/share/doc/${HACKNAME}
36 PKGDEINSTALL=   ${WRKDIR}/pkg-deinstall
37
38 .if !defined(PKGNAMESUFFIX)
39 USES+=          xorg
40 USE_XORG=       xaw xpm
41 GRAPHICS=       X11_GRAPHICS
42 .else
43 .if ${PKGNAMESUFFIX} == "-nox11"
44 GRAPHICS=       # none
45 #
46 # Patch notes:
47 # 1) hpmon and statuscolors conflict with one another
48 # 2) menucolors patch must be applied before statuscolors
49 #
50 .if defined(WITH_HPMON) && defined(WITH_STATUSCOLORS)
51 IGNORE=         you cannot enable both HPMON and STATUSCOLORS
52 .endif
53 .if defined(WITH_MENUCOLORS)
54 PATCHFILES+=    nh343-menucolor.diff
55 PATCH_SITES+=   http://bilious.alt.org/~paxed/nethack/
56 PATCH_DIST_STRIP=       -p1
57 CFLAGS+=        -DMENU_COLOR_REGEX_POSIX
58 .endif
59 .if defined(WITH_STATUSCOLORS)
60 PATCHFILES+=    nh343-statuscolors.fixed.patch
61 PATCH_SITES+=   https://jdc.koitsu.org/nethack/ \
62                 LOCAL/wxs
63 PATCH_DIST_STRIP=       -p1
64 .endif
65 .if defined(WITH_HPMON)
66 PATCHFILES+=    hpmon.diff
67 PATCH_SITES+=   http://www.netsonic.fi/~walker/nh/ \
68                 LOCAL/wxs
69 PATCH_DIST_STRIP=       -p1
70 CFLAGS+=        -DHPMON
71 .endif
72 .endif
73 .endif
74
75 OPTIONS_DEFINE= DOCS
76
77 .include <bsd.port.pre.mk>
78
79 .if !exists(${PREFIX}/bin/${HACKLINK}) && ${HACKNAME} != ${HACKLINK}
80 PLIST_SUB+=     HACKLINK=""
81 .else
82 PLIST_SUB+=     HACKLINK="@comment "
83 .endif
84
85 pre-everything::
86         @if [ "${PKGBASE}" != "nethack" ]; then \
87         ${ECHO_MSG} "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" ; \
88         ${ECHO_MSG} " You cannot install nethack and ${PKGBASE} in parallel   " ; \
89         ${ECHO_MSG} " But ${PKGBASE} reads your prior nethack scores           " ; \
90         ${ECHO_MSG} " Don't forget to backup your nethack libdir if it's      " ; \
91         ${ECHO_MSG} " important for you                                       " ; \
92         ${ECHO_MSG} "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" ; \
93         fi
94
95 post-patch:
96         @${REINPLACE_CMD} -e \
97                 's|%%PREFIX%%|${PREFIX}|g' ${WRKSRC}/include/config.h
98         @${REINPLACE_CMD} -e \
99                 's|<malloc.h>|<stdlib.h>|g' ${WRKSRC}/win/Qt/qt_win.cpp
100 .for f in include/config.h sys/unix/Makefile.doc sys/unix/Makefile.src sys/unix/Makefile.top
101         @${REINPLACE_CMD} -e 's|%%HACKNAME%%|${HACKNAME}|g' \
102                 -e 's|%%HACKDIR%%|${PREFIX}/${HACKDIR}|g' \
103                 -e 's|%%HACKEXT%%|${HACKEXT}|g' \
104                 ${WRKSRC}/${f}
105 .endfor
106 .for f in dgn_comp.6 dlb.6 lev_comp.6 nethack.6 recover.6
107         @${REINPLACE_CMD} -e 's|%%HACKNAME%%|${HACKNAME}|g' \
108                 -e 's|%%HACKDIR%%|${PREFIX}/${HACKDIR}|g' \
109                 -e 's|%%HACKEXT%%|${HACKEXT}|g' \
110                 ${WRKSRC}/doc/${f}
111 .endfor
112 .if defined(WITHOUT_SHELL)
113         @${REINPLACE_CMD} -e 's|#define SHELL|/* #define SHELL|' ${WRKSRC}/include/unixconf.h
114 .endif
115 .if defined(WITH_MAIL)
116         @${REINPLACE_CMD} -e 's|/\* #define MAIL \*/|#define MAIL|' ${WRKSRC}/include/unixconf.h
117 .endif
118
119 do-configure:
120         @cd ${WRKSRC}/sys/unix; ${SH} setup.sh
121
122 pre-install:
123         @${CAT} ${FILESDIR}/pkg-deinstall.in | ${SED} \
124                 -e 's|%%HACKDIR%%|${HACKDIR}|g' > ${PKGDEINSTALL}
125
126 post-install:
127 .if !exists(${PREFIX}/bin/${HACKLINK}) && ${HACKNAME} != ${HACKLINK}
128         @${LN} -s -f ${PREFIX}/bin/${HACKNAME} ${STAGEDIR}${PREFIX}/bin/${HACKLINK}
129 .endif
130         @cd ${WRKSRC}/doc; ${SETENV} ${MAKE_ENV} ${MAKE} ${MAKE_ARGS} manpages
131         @${MKDIR} ${STAGEDIR}${DATADIR}/save
132         # Make "sample" files from records to prevent them being removed
133         # if they have been altered
134         @${CP} ${STAGEDIR}/${DATADIR}/logfile ${STAGEDIR}/${DATADIR}/logfile.sample
135         @${CP} ${STAGEDIR}/${DATADIR}/record ${STAGEDIR}/${DATADIR}/record.sample
136 .if ${PORT_OPTIONS:MDOCS}
137         @${MKDIR} ${STAGEDIR}${DOCSDIR}
138         ${INSTALL_DATA} ${WRKSRC}/doc/Guidebook.txt ${STAGEDIR}${DOCSDIR}
139 .endif
140
141 .include <bsd.port.post.mk>