# Created by: Tobias Rehbein <tobias.rehbein@web.de>

PORTNAME=	stonesoup
PORTVERSION=	0.23.2
PORTREVISION=	1
CATEGORIES=	games

MAINTAINER=	lifanov@FreeBSD.org
COMMENT=	Dungeon Crawl Stone Soup - a fun, free rogue-like game

LICENSE=	GPLv2
LICENSE_FILE=	${WRKSRC}/../../LICENSE

NOT_FOR_ARCHS=		armv6
NOT_FOR_ARCHS_REASON=	missing platform \#define or unsupported compiler

BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}yaml>0:devel/py-yaml@${PY_FLAVOR}

USES=		bison compiler:c++11-lib gmake lua:51 perl5 pkgconfig \
		python:build shebangfix sqlite tar:xz

USE_GITHUB=	yes
GH_ACCOUNT=	crawl
GH_PROJECT=	crawl

USE_PERL5=	build
SHEBANG_FILES=	util/gen-mi-enum \
		util/good-depfile \
		util/species-gen.py \
		util/txc

SAVEDIR=	\~/.stonesoup
WRKSRC_SUBDIR=	crawl-ref/source

SUB_FILES=	README.FreeBSD
PLIST_SUB=	SAVEDIR="${SAVEDIR}"

MAKE_ARGS=	prefix=${PREFIX} \
		DATADIR=${DATADIR} \
		DESTDIR=${STAGEDIR} \
		FORCE_CC=${CC} \
		FORCE_CXX=${CXX} \
		INSTALL_UGRP=root:games \
		LUA_PACKAGE=lua-5.1 \
		NO_AUTO_OPT=YesPlease \
		NO_OPTIMIZE=YesPlease \
		NO_TRY_GOLD=YesPlease \
		NOSSE=YesPlease \
		POSIX=YesPlease \
		SAVEDIR=${SAVEDIR} \
		SQLITE_INCLUDE_DIR=${LOCALBASE}/include \
		SQLITE_LIB=-lsqlite3 \
		V=yes

OPTIONS_DEFINE=	SDL SOUND NOWIZARD LUA DOCS EXAMPLES
OPTIONS_DEFAULT=LUA
OPTIONS_SUB=	yes

SOUND_DESC=	Sound support
NOWIZARD_DESC=	Disable Wizard mode
LUA_DESC=	Bindings for LUA user scripts

SDL_CONFLICTS=	${PORTNAME}-[0-9]*
SDL_USE=	sdl=sdl2,image2,mixer2 gl=gl,glu
SDL_USES=	gl sdl
SDL_USES_OFF=	ncurses
SDL_MAKE_ARGS=	TILES=y SOUND=y
SDL_BUILD_DEPENDS=	\
		fc-list:x11-fonts/fontconfig \
		${LOCALBASE}/share/fonts/dejavu/DejaVuSans.ttf:x11-fonts/dejavu
SDL_RUN_DEPENDS=	\
		${LOCALBASE}/share/fonts/dejavu/DejaVuSans.ttf:x11-fonts/dejavu
SDL_LIB_DEPENDS=libpng.so:graphics/png \
		libfreetype.so:print/freetype2
SDL_CONFLICTS_OFF=	${PORTNAME}-sdl-[0-9]*

NOWIZARD_MAKE_ARGS=	NOWIZARD=y
SOUND_MAKE_ARGS=	SOUND=y
SOUND_RUN_DEPENDS=	sox:audio/sox
LUA_MAKE_ARGS_OFF=	NO_LUA_BINDINGS=yes

post-patch-SOUND-on:
	@${REINPLACE_CMD} -e "s,%%LOCALBASE%%,${LOCALBASE}," ${WRKSRC}/sound.h
	@${REINPLACE_CMD} -e "s,%%SOUND%%,," ${WRKSRC}/sound.h

post-patch-SOUND-off:
	@${REINPLACE_CMD} -e "s,%%SOUND%%,// ," ${WRKSRC}/sound.h

pre-build:
	@${ECHO} ${PORTVERSION} > ${WRKSRC}/util/release_ver

pre-install:
	@${FIND} ${WRKSRC}/dat -type f -name '*.orig' -delete

post-install-DOCS-on:
	@${MKDIR} ${STAGEDIR}${DOCSDIR}
	${INSTALL_DATA} ${WRKDIR}/README.FreeBSD ${STAGEDIR}${DOCSDIR}

post-install-EXAMPLES-on:
	@${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
	${INSTALL_DATA} ${STAGEDIR}${DATADIR}/settings/init.txt ${STAGEDIR}${EXAMPLESDIR}/sample.crawlrc

post-install:
	@${RM} -r ${STAGEDIR}${DATADIR}/settings/mac

.include <bsd.port.mk>
