Tweak games/dunelegacy version 0.96.3_2
[dports.git] / games / openra / Makefile
1 # $FreeBSD$
2
3 PORTNAME=       openra
4 PORTVERSION=    20161019
5 DISTVERSIONPREFIX=      release-
6 PORTREVISION=   1
7 CATEGORIES=     games
8 MASTER_SITES=   https://github.com/${GH_ACCOUNT}/SDL2-CS/releases/download/20151227/:SDL2_CS \
9                 https://github.com/${GH_ACCOUNT}/OpenAL-CS/releases/download/20151227/:OpenAL_CS \
10                 https://github.com/${GH_ACCOUNT}/Eluant/releases/download/20160124/:Eluant \
11                 https://geolite.maxmind.com/download/geoip/database/:GeoLite2
12 DISTFILES=      SDL2-CS.dll:SDL2_CS \
13                 SDL2-CS.dll.config:SDL2_CS \
14                 OpenAL-CS.dll:OpenAL_CS \
15                 OpenAL-CS.dll.config:OpenAL_CS \
16                 Eluant.dll:Eluant \
17                 GeoLite2-Country.mmdb.gz:GeoLite2
18 EXTRACT_ONLY=   ${DISTFILES:C/:.*//:N*.config:N*.dll:N*.mmdb*:N*.nupkg}
19
20 MAINTAINER=     jbeich@FreeBSD.org
21 COMMENT=        Multiplayer re-envisioning of early RTS games by Westwood Studios
22
23 LICENSE=        GPLv3
24
25 LIB_DEPENDS=    libfreetype.so:print/freetype2 \
26                 libgdiplus.so:x11-toolkits/libgdiplus
27 NUGET_DEPENDS=  FuzzyLogicLibrary=1.2.0 \
28                 MaxMind.Db=2.0.0 \
29                 MaxMind.GeoIP2=2.6.0 \
30                 NUnit=3.0.1 \
31                 NUnit.Console=3.0.1 \
32                 Newtonsoft.Json=8.0.3 \
33                 Open.NAT=2.1.0 \
34                 SharpFont=3.1.0 \
35                 SharpZipLib=0.86.0 \
36                 SmartIrc4net=0.4.5.1 \
37                 StyleCop.MSBuild=4.7.49.0 \
38                 StyleCopPlus.MSBuild=4.7.49.5
39
40 USE_GITHUB=     yes
41 GH_PROJECT=     OpenRA
42
43 NO_ARCH=        yes
44 USES=           desktop-file-utils gmake lua:51,run mono:nuget openal:soft \
45                 shared-mime-info shebangfix
46 USE_SDL=        sdl2
47 NUGET_PACKAGEDIR=${WRKSRC}/thirdparty/download
48 SHEBANG_FILES=  launch-dedicated.sh
49 MAKE_ENV=       prefix="${PREFIX}" mandir="${PREFIX}/man"
50 MAKE_ARGS=      VERSION="${GH_TAGNAME}"
51 ALL_TARGET=     all
52 INSTALL_TARGET= install-all install-man-page \
53                 install-linux-mime install-linux-shortcuts
54 DATADIR=        ${PREFIX}/lib/${PORTNAME}
55 PORTDATA=       *
56 PORTDOCS=       *.html
57
58 OPTIONS_DEFINE= DOCS TEST ZENITY
59 OPTIONS_DEFAULT=ZENITY
60
61 DOCS_BUILD_DEPENDS=markdown:textproc/markdown
62 DOCS_ALL_TARGET=docs
63
64 TEST_MAKE_ENV=  HOME="${WRKDIR}"
65 TEST_ALL_TARGET=test
66
67 ZENITY_RUN_DEPENDS=xdg-open:devel/xdg-utils \
68                 zenity:x11/zenity
69 ZENITY_DESC=    Use native crash dialog
70
71 post-extract:
72         ${CP} ${DISTFILES:C/:.*//:N*.nupkg:N*.tar*:S,^,${_DISTDIR}/,} \
73                 ${NUGET_PACKAGEDIR}
74
75 post-patch:
76         ${REINPLACE_CMD} \
77                 -e '/echo/!s/   @/      /' \
78                 -e '/^mods:/s/$$/ version/' \
79                 ${WRKSRC}/Makefile
80         ${REINPLACE_CMD} -e '/[[:<:]]get[[:blank:]]/d' \
81                         ${WRKSRC}/thirdparty/fetch-thirdparty-deps.sh
82         ${FIND} ${WRKSRC}/thirdparty -name '*.config*' -exec ${REINPLACE_CMD} \
83                 -i '.bak.os' -e '/linux/{ p; s//${OPSYS:tl}/; }' {} +
84         ${SED} 's/@LIBLUA51@/liblua-${LUA_VER}.so/' \
85                 ${WRKSRC}/thirdparty/Eluant.dll.config.in \
86                 >${WRKSRC}/Eluant.dll.config
87
88 post-build-DOCS-on:
89         @${ECHO_MSG} Generating HTML documentation...
90         @for f in ${WRKSRC}/*.md; do \
91                 ${ECHO_MSG} markdown $$f -\> $${f%.md}.html; \
92                 markdown $$f >$${f%.md}.html; \
93         done
94
95 post-install-DOCS-on:
96         (cd ${WRKSRC} && ${COPYTREE_SHARE} \
97                 "${PORTDOCS}" ${STAGEDIR}${DOCSDIR})
98
99 .include <bsd.port.mk>