e7a6fac769
Sponsored by: Absolight
136 lines
4 KiB
Makefile
136 lines
4 KiB
Makefile
# Created by: asami
|
|
# $FreeBSD$
|
|
|
|
PORTNAME= nethack34
|
|
PORTVERSION= 3.4.3
|
|
PORTREVISION= 9
|
|
CATEGORIES= games
|
|
MASTER_SITES= SF/${TRUEPORTNAME}/${TRUEPORTNAME}/${PORTVERSION}
|
|
DISTNAME= ${TRUEPORTNAME}-${PORTVERSION:S/.//g}-src
|
|
|
|
MAINTAINER= glewis@FreeBSD.org
|
|
COMMENT= Dungeon explorin', slashin', hackin' game
|
|
|
|
LICENSE= nethack
|
|
LICENSE_NAME= NETHACK GENERAL PUBLIC LICENSE
|
|
LICENSE_FILE= ${WRKSRC}/dat/license
|
|
LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
|
|
|
|
WRKSRC= ${WRKDIR}/${TRUEPORTNAME}-${PORTVERSION}
|
|
|
|
USES= alias gmake ncurses tar:tgz
|
|
MAKE_ENV= GRAPHICS="${GRAPHICS}"
|
|
PLIST_SUB= HACKNAME="${HACKNAME}" \
|
|
HACKEXT="${HACKEXT}"
|
|
MAKE_JOBS_UNSAFE= yes
|
|
TRUEPORTNAME= nethack
|
|
|
|
# Configure these variables as you want them to be.
|
|
HACKEXT?= 34
|
|
HACKNAME?= ${TRUEPORTNAME}${HACKEXT}
|
|
HACKDIR?= share/${HACKNAME}
|
|
HACKLINK= ${TRUEPORTNAME}
|
|
|
|
DATADIR= ${PREFIX}/${HACKDIR}
|
|
DOCSDIR= ${PREFIX}/share/doc/${HACKNAME}
|
|
PKGDEINSTALL= ${WRKDIR}/pkg-deinstall
|
|
|
|
.if !defined(PKGNAMESUFFIX)
|
|
USE_XORG= xaw xpm
|
|
GRAPHICS= X11_GRAPHICS
|
|
.else
|
|
.if ${PKGNAMESUFFIX} == "-nox11"
|
|
GRAPHICS= # none
|
|
#
|
|
# Patch notes:
|
|
# 1) hpmon and statuscolors conflict with one another
|
|
# 2) menucolors patch must be applied before statuscolors
|
|
#
|
|
.if defined(WITH_HPMON) && defined(WITH_STATUSCOLORS)
|
|
IGNORE= you cannot enable both HPMON and STATUSCOLORS
|
|
.endif
|
|
.if defined(WITH_MENUCOLORS)
|
|
PATCHFILES+= nh343-menucolor.diff
|
|
PATCH_SITES+= http://bilious.alt.org/~paxed/nethack/
|
|
PATCH_DIST_STRIP= -p1
|
|
CFLAGS+= -DMENU_COLOR_REGEX_POSIX
|
|
.endif
|
|
.if defined(WITH_STATUSCOLORS)
|
|
PATCHFILES+= nh343-statuscolors.fixed.patch
|
|
PATCH_SITES+= http://jdc.koitsu.org/nethack/ \
|
|
LOCAL/wxs
|
|
PATCH_DIST_STRIP= -p1
|
|
.endif
|
|
.if defined(WITH_HPMON)
|
|
PATCHFILES+= hpmon.diff
|
|
PATCH_SITES+= http://www.netsonic.fi/~walker/nh/ \
|
|
LOCAL/wxs
|
|
PATCH_DIST_STRIP= -p1
|
|
CFLAGS+= -DHPMON
|
|
.endif
|
|
.endif
|
|
.endif
|
|
|
|
OPTIONS_DEFINE= DOCS
|
|
|
|
.include <bsd.port.pre.mk>
|
|
|
|
.if !exists(${PREFIX}/bin/${HACKLINK}) && ${HACKNAME} != ${HACKLINK}
|
|
PLIST_SUB+= HACKLINK=""
|
|
.else
|
|
PLIST_SUB+= HACKLINK="@comment "
|
|
.endif
|
|
|
|
pre-everything::
|
|
@if [ "${PKGBASE}" != "nethack" ]; then \
|
|
${ECHO_MSG} "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" ; \
|
|
${ECHO_MSG} " You cannot install nethack and ${PKGBASE} in parallel " ; \
|
|
${ECHO_MSG} " But ${PKGBASE} reads your prior nethack scores " ; \
|
|
${ECHO_MSG} " Don't forget to backup your nethack libdir if it's " ; \
|
|
${ECHO_MSG} " important for you " ; \
|
|
${ECHO_MSG} "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" ; \
|
|
fi
|
|
|
|
post-patch:
|
|
@${REINPLACE_CMD} -e \
|
|
's|%%PREFIX%%|${PREFIX}|g' ${WRKSRC}/include/config.h
|
|
@${REINPLACE_CMD} -e \
|
|
's|<malloc.h>|<stdlib.h>|g' ${WRKSRC}/win/Qt/qt_win.cpp
|
|
.for f in include/config.h sys/unix/Makefile.doc sys/unix/Makefile.src sys/unix/Makefile.top
|
|
@${REINPLACE_CMD} -e 's|%%HACKNAME%%|${HACKNAME}|g' \
|
|
-e 's|%%HACKDIR%%|${PREFIX}/${HACKDIR}|g' \
|
|
-e 's|%%HACKEXT%%|${HACKEXT}|g' \
|
|
${WRKSRC}/${f}
|
|
.endfor
|
|
.for f in dgn_comp.6 dlb.6 lev_comp.6 nethack.6 recover.6
|
|
@${REINPLACE_CMD} -e 's|%%HACKNAME%%|${HACKNAME}|g' \
|
|
-e 's|%%HACKDIR%%|${PREFIX}/${HACKDIR}|g' \
|
|
-e 's|%%HACKEXT%%|${HACKEXT}|g' \
|
|
${WRKSRC}/doc/${f}
|
|
.endfor
|
|
.if defined(WITHOUT_SHELL)
|
|
@${REINPLACE_CMD} -e 's|#define SHELL|/* #define SHELL|' ${WRKSRC}/include/unixconf.h
|
|
.endif
|
|
.if defined(WITH_MAIL)
|
|
@${REINPLACE_CMD} -e 's|/\* #define MAIL \*/|#define MAIL|' ${WRKSRC}/include/unixconf.h
|
|
.endif
|
|
|
|
do-configure:
|
|
@cd ${WRKSRC}/sys/unix; ${SH} setup.sh
|
|
|
|
pre-install:
|
|
@${CAT} ${FILESDIR}/pkg-deinstall.in | ${SED} \
|
|
-e 's|%%HACKDIR%%|${HACKDIR}|g' > ${PKGDEINSTALL}
|
|
|
|
post-install:
|
|
.if !exists(${PREFIX}/bin/${HACKLINK}) && ${HACKNAME} != ${HACKLINK}
|
|
@${LN} -s -f ${PREFIX}/bin/${HACKNAME} ${STAGEDIR}${PREFIX}/bin/${HACKLINK}
|
|
.endif
|
|
@cd ${WRKSRC}/doc; ${SETENV} ${MAKE_ENV} ${MAKE} ${MAKE_ARGS} manpages
|
|
@${MKDIR} ${STAGEDIR}${DATADIR}/save
|
|
.if ${PORT_OPTIONS:MDOCS}
|
|
@${MKDIR} ${STAGEDIR}${DOCSDIR}
|
|
${INSTALL_DATA} ${WRKSRC}/doc/Guidebook.txt ${STAGEDIR}${DOCSDIR}
|
|
.endif
|
|
|
|
.include <bsd.port.post.mk>
|