freebsd-ports/games/linux-nwnclient/Makefile
Sean Farley f58111ade9 Update the URL's for Neverwinter Nights (Original and Diamond editions)
data and client binaries due to them being moved again.

Since the available version of the Bink Player has changed and no
archives of the old copy exist, the ability to play movies in the game
is now experimental if and only if a newer version of the nwmovies.so
hook is compiled on Linux i386 and used.  The binary for the hook is not
currently provided, hence, it is experimental.  I am currently working
with the maintainer of that hook to make a release to add to the port to
bring back movie support.

Regenerate distinfo files to add TIMESTAMP.

Reviewed by:	lifanov, mat
Approved by:	lifanov
Differential Revision:	https://reviews.freebsd.org/D12960
2017-11-09 01:53:38 +00:00

95 lines
3.2 KiB
Makefile

# Created by: Erik Olson <erikolson@olsonexpress.com>
# $FreeBSD$
PORTNAME= nwnclient
PORTVERSION= 1.69
PORTREVISION= 5
CATEGORIES= games linux
NWN_SITE_1= http://na.llnet.bioware.cdn.ea.com/u/f/eagames/bioware/neverwinternights/updates/linux/
NWN_SITE_2= http://lvlt.bioware.cdn.ea.com/bioware/u/f/eagames/bioware/neverwinternights/updates/linux/
MASTER_SITES= ${NWN_SITE_1}${PORTVERSION:S/.//}/:CLIENT \
${NWN_SITE_2}${PORTVERSION:S/.//}/:CLIENT \
${NWN_SITE_1}:ORIG,GOLD,HOTU \
${NWN_SITE_2}:ORIG,GOLD,HOTU \
https://github.com/nwnlinux/nwmovies/raw/master/:NWMOVIES \
http://www.radgametools.com/down/Bink/:BINK
PKGNAMEPREFIX= linux-
DISTFILES= ${CLIENT_FILES} \
${CLIENT_NWMOVIES}
DIST_SUBDIR= ${PKGNAMEPREFIX}${PORTNAME}
MAINTAINER= scf@FreeBSD.org
COMMENT= Neverwinter Nights Linux (x86) Client
RUN_DEPENDS= ${LOCALBASE}/share/nwndata/docs/readme.txt:games/nwndata
NO_BUILD= yes
RESTRICTED= Distribution not allowed
USES= linux
USE_LINUX= dri sdl12 xorglibs
NWNDATADIR= ${LOCALBASE}/share/nwndata
OPTIONS_DEFINE= NWMOVIES
NWMOVIES_DESC= Support for movies using BinkPlayer (experimental!)
.include <bsd.port.options.mk>
# Client detection. Currently, detects only original and Diamond editions.
.if exists(${LOCALBASE}/share/nwndata/xp2.key)
CLIENT_FILES= nwclientgold.tar.gz:GOLD \
nwclienthotu.tar.gz:HOTU \
English_linuxclient169_xp2.tar.gz:CLIENT
.if ${PORT_OPTIONS:MNWMOVIES}
NWMOVIESFILE= nwmovies-v4-public.20090223.080954.tar.gz
BINKPLAYERFILE= BinkLinuxPlayer.7z
CLIENT_NWMOVIES=${NWMOVIESFILE}:NWMOVIES \
${BINKPLAYERFILE}:BINK
USE_LINUX+= sdlmixer
PLIST_SUB+= NWMOVIES=""
.else
PLIST_SUB+= NWMOVIES="@comment "
.endif
PLIST_SUB+= DIAMOND="" ORIGINAL="@comment "
.else
CLIENT_FILES= nwclient129.tar.gz:ORIG \
English_linuxclient${PORTVERSION:S/.//}_orig.tar.gz:CLIENT
PLIST_SUB+= NWMOVIES="@comment " DIAMOND="@comment " ORIGINAL=""
.endif
do-extract:
${MKDIR} ${WRKSRC}
.for _distfile in ${CLIENT_FILES:C/:.*$//g} ${BINKPLAYERFILE}
(cd ${WRKSRC} && ${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} \
${_DISTDIR}/${_distfile} ${EXTRACT_AFTER_ARGS})
.endfor
.if defined(BINKPLAYERFILE)
(cd ${WRKSRC} && ${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} \
${_DISTDIR}/${NWMOVIESFILE} ${EXTRACT_AFTER_ARGS} \
nwmovies/binklib.so nwmovies/libdis/libdisasm.so \
nwmovies/nwmovies.so)
(cd ${WRKSRC} && ${MV} BinkPlayer nwmovies)
.endif
${RM} ${WRKSRC}/lib/libSDL* ${WRKSRC}/fixinstall ${WRKSRC}/nwn
if [ -d ${WRKSRC}/SDL-1.2.5 ]; then \
${RM} ${WRKSRC}/SDL-1.2.5/*; \
${RMDIR} ${WRKSRC}/SDL-1.2.5; \
fi
@${FIND} ${WRKSRC} -type f -name ".*" -delete
do-configure:
${SED} -e 's|%%NWNDATADIR%%|${NWNDATADIR}|' \
-e 's|%%NWNCLIENTDIR%%|${DATADIR}|' \
<${FILESDIR}/nwn.sh >${WRKDIR}/nwn
do-install:
${MKDIR} ${STAGEDIR}${DATADIR}
(cd ${WRKSRC} && ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR})
(cd ${STAGEDIR}${DATADIR} && ${CHMOD} 0755 dmclient nwmain nwserver)
.if defined(BINKPLAYERFILE)
(cd ${STAGEDIR}${DATADIR} && ${CHMOD} 0755 nwmovies/BinkPlayer)
(cd ${STAGEDIR}${DATADIR}/nwmovies && ${LN} -s /compat/linux/usr/lib/libX11.so.6 libX11.so)
${INSTALL_SCRIPT} ${FILESDIR}/nwmovies.pl ${STAGEDIR}${DATADIR}
.endif
${INSTALL_SCRIPT} ${WRKDIR}/nwn ${STAGEDIR}${PREFIX}/bin/
.include <bsd.port.mk>