- Bump PORTREVISION for pkg-plist change

- Use same sources for game and maps (tar.gz)
- Remove EXTRACR_ONLY
- Take maintainership
- Add dependency for textproc/libxslt and textproc/sablotron
- Use the new format for LIB_DEPENDS
- Remove DEPRECATED, EXPIRATION_DATE
- Use uidfix instead of BINOWN
- USES gmake instead of USE_GMAKE
- Support STAGEDIR, add CONFIGURE_ARGS=--localstatedir=/var/games
  to work with stage
- Remove not needed post-extract
- Add DOCS and Option, remove Makefile* that are not in DOCS installation
- Change REINPLACE, cosmetical changes and add for perl one
- Strip libraries
- Fix the usage of 'perl' to get rid of the implicit lang/perl dependency
- Fix the usage of 'bash' to get rid of the implicit shells/bash dependency
- Fix usage, adjust permission for /var/games/crossfire
- Recreate patches with make makepatch
- Change pkg-descr
- Recreate pkg-plist with make makeplist and proper use @group and @mode
This commit is contained in:
Rusmir Dusko 2014-03-27 23:21:07 +00:00
parent 6dd3a31a7c
commit c92c569b72
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=349372
8 changed files with 107 additions and 77 deletions

View File

@ -3,59 +3,88 @@
PORTNAME= crossfire
PORTVERSION= 1.70.0
PORTREVISION= 2
PORTREVISION= 3
CATEGORIES= games
MASTER_SITES= SF/${PORTNAME}/${PORTNAME}-${PORTVERSION}
PKGNAMESUFFIX= -server
DISTFILES= ${DISTNAME}${EXTRACT_SUFX} ${DISTNAME}.maps.tar.bz2
EXTRACR_ONLY= ${DISTNAME}${EXTRACT_SUFX}
DISTFILES= ${DISTNAME}${EXTRACT_SUFX} ${DISTNAME}.maps${EXTRACT_SUFX}
MAINTAINER= ports@FreeBSD.org
MAINTAINER= nemysis@FreeBSD.org
COMMENT= Server for multiplayer graphical arcade and adventure game
BUILD_DEPENDS= bash:${PORTSDIR}/shells/bash
LIB_DEPENDS= curl:${PORTSDIR}/ftp/curl \
png15:${PORTSDIR}/graphics/png
RUN_DEPENDS= xsltproc:${PORTSDIR}/textproc/libxslt
LIB_DEPENDS= libcurl.so:${PORTSDIR}/ftp/curl \
libpng15.so:${PORTSDIR}/graphics/png \
libsablot.so:${PORTSDIR}/textproc/sablotron
LICENSE= GPLv2 GPLv3
LICENSE_COMB= dual
DEPRECATED= Unmaintained since 2000
EXPIRATION_DATE= 2014-04-11
USES= perl5
USES= gmake perl5 uidfix
USE_XORG= ice sm x11 xaw xext xmu xpm xt
USE_SQLITE= 3
USE_PYTHON= yes
USE_GMAKE= yes
USE_AUTOTOOLS= libtool
CONFIGURE_ARGS= --with-check=no
MAN6= crossfire-config.6 crossfire-server.6 crossloop.6 \
crossloop.web.6
CONFIGURE_ARGS= --with-check=no --localstatedir=/var/games
CPPFLAGS+= -I${LOCALBASE}/include ${PTHREAD_CFLAGS}
LDFLAGS+= -L${LOCALBASE}/lib ${PTHREAD_LIBS}
NO_STAGE= yes
post-extract:
@cd ${WRKDIR} && ${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} \
${DISTDIR}/${DISTNAME}.maps.tar.bz2 ${EXTRACT_AFTER_ARGS}
@${CHMOD} a+x ${WRKSRC}/utils/install-sh
PORTDOCS= *
DOCSRCDIR1= ${WRKSRC}
DOC_FILES1= AUTHORS ChangeLog DEVELOPERS NEWS README
DOCSRCDIR2= ${WRKSRC}/doc
DOCSDIR2= ${DOCSDIR}/doc
DOC_FILES2= PlayerStats README RunTimeCommands SurvivalGuide *.doc *.ps \
metaserver multigod plugins spellcasters_guide_to_runes
OPTIONS_DEFINE= DOCS
.include <bsd.port.options.mk>
post-patch:
@${FIND} ${WRKSRC} -name "Makefile.in" | ${XARGS} ${REINPLACE_CMD} -e \
@${FIND} ${WRKSRC} -name 'Makefile.in'| ${XARGS} ${REINPLACE_CMD} -e \
's|-ldl||g'
@${REINPLACE_CMD} -e 's|^#.*/bin/sh|#! ${LOCALBASE}/bin/bash|g ; \
s|-ldl||g ; \
s|python[{].*[}]|${PYTHON_VERSION}|g ; \
@${REINPLACE_CMD} -e 's|^#.*/bin/sh|#! ${LOCALBASE}/bin/bash|g; \
s|-ldl||g; \
s|python[{].*[}]|${PYTHON_VERSION}|g; \
s|-lpthread|${PTHREAD_LIBS}|g' ${WRKSRC}/configure
@${REINPLACE_CMD} -e '/<curl\/types.h>/d' ${WRKSRC}/socket/metaserver.c
@${REINPLACE_CMD} -e 's| /usr/bin/perl|${LOCALBASE}/bin/perl|' \
${WRKSRC}/lib/adm/map_expand.pl
post-install:
@${MKDIR} ${DATADIR}/maps
cd ${WRKDIR}/maps && ${COPYTREE_SHARE} . ${DATADIR}/maps
@${CHOWN} ${BINOWN}:games ${PREFIX}/bin/crossfire-server
@${CHMOD} 2755 ${PREFIX}/bin/crossfire-server
@${CHGRP} -R games ${PREFIX}/var/crossfire
.for l in cflogger citylife cfpython cfanim cfnewspaper
${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/crossfire/plugins/${l}.so
.endfor
@${MKDIR} ${STAGEDIR}${DATADIR}/maps
@(cd ${WRKDIR}/maps && ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR}/maps)
@${FIND} ${STAGEDIR}${PREFIX} -exec ${GREP} -q "#!/usr/bin/perl" {} \; \
-exec ${REINPLACE_CMD} -e \
's|#!/usr/bin/perl|#!${LOCALBASE}/bin/perl|g' {} \;
@${REINPLACE_CMD} -e 's|/bin/bash|${LOCALBASE}/bin/bash|' \
${STAGEDIR}${PREFIX}/bin/crossloop.web
@${FIND} ${STAGEDIR}${PREFIX} -name "*.bak" -delete
@${CHMOD} 775 ${STAGEDIR}/var/games/crossfire
@${CHMOD} 664 ${STAGEDIR}/var/games/crossfire/*
.for d in account datafiles maps players template-maps unique-items
@${CHMOD} 774 ${STAGEDIR}/var/games/crossfire/${d}
.endfor
.if ${PORT_OPTIONS:MDOCS}
@${MKDIR} ${STAGEDIR}${DOCSDIR}
${INSTALL_DATA} ${DOC_FILES1:S|^|${DOCSRCDIR1}/|} ${STAGEDIR}${DOCSDIR}
@${FIND} ${WRKSRC}/doc -name 'Makefile*' -delete
.for d in playbook playbook-html spoiler spoiler-html
@(cd ${WRKSRC}/doc/ && ${COPYTREE_SHARE} ${d} ${STAGEDIR}${DOCSDIR2})
.endfor
${INSTALL_DATA} ${DOC_FILES2:S|^|${DOCSRCDIR2}/|} ${STAGEDIR}${DOCSDIR2}
.endif
.include <bsd.port.mk>

View File

@ -1,4 +1,4 @@
SHA256 (crossfire-1.70.0.tar.gz) = f6679aa19f7b041a779d26215a7f0062ab7a1fd96185527c207485e084b4654d
SIZE (crossfire-1.70.0.tar.gz) = 6626864
SHA256 (crossfire-1.70.0.maps.tar.bz2) = d75a8a48356db0c0d9a3875b98165f7acaa74a8d6027e696796a899e55ade3f4
SIZE (crossfire-1.70.0.maps.tar.bz2) = 19500334
SHA256 (crossfire-1.70.0.maps.tar.gz) = 64b1bccef796fde9559a84b4486cf380710b9db70c2c45a1b0f67adf3d822aa9
SIZE (crossfire-1.70.0.maps.tar.gz) = 28911538

View File

@ -1,5 +1,5 @@
--- common/exp.c.orig 2010-04-26 15:23:21.000000000 +0900
+++ common/exp.c 2010-05-25 04:22:52.000000000 +0900
--- ./common/exp.c.orig 2012-03-18 07:31:50.000000000 +0100
+++ ./common/exp.c 2014-03-27 18:59:52.047466456 +0100
@@ -224,7 +224,7 @@
exit(1);
}

View File

@ -1,6 +1,6 @@
--- common/loader.c.orig 2012-03-19 05:14:09.000000000 +0000
+++ common/loader.c
@@ -2898,7 +2898,7 @@ FILE *yyget_out (void );
--- ./common/loader.c.orig 2012-03-19 06:14:09.000000000 +0100
+++ ./common/loader.c 2014-03-27 18:59:52.056923524 +0100
@@ -2898,7 +2898,7 @@
void yyset_out (FILE * out_str );
@ -9,7 +9,7 @@
char *yyget_text (void );
@@ -5523,7 +5523,7 @@ FILE *yyget_out (void)
@@ -5523,7 +5523,7 @@
/** Get the length of the current token.
*
*/

View File

@ -1,6 +1,6 @@
--- common/loader.l.orig 2010-04-26 15:23:21.000000000 +0900
+++ common/loader.l 2010-05-25 04:25:03.000000000 +0900
@@ -830,8 +830,8 @@
--- ./common/loader.l.orig 2012-03-18 07:31:50.000000000 +0100
+++ ./common/loader.l 2014-03-27 18:59:52.047466456 +0100
@@ -856,8 +856,8 @@
^maxsp{S} op->stats.maxsp = IVAL;
^grace{S} op->stats.grace = IVAL;
^maxgrace{S} op->stats.maxgrace = IVAL;

View File

@ -1,6 +1,6 @@
--- include/libproto.h.orig 2012-03-18 06:31:46.000000000 +0000
+++ include/libproto.h
@@ -441,7 +441,7 @@ extern void yypop_buffer_state(void);
--- ./include/libproto.h.orig 2012-03-18 07:31:46.000000000 +0100
+++ ./include/libproto.h 2014-03-27 18:59:52.056923524 +0100
@@ -441,7 +441,7 @@
extern int yyget_lineno(void);
extern FILE *yyget_in(void);
extern FILE *yyget_out(void);

View File

@ -5,7 +5,7 @@ It has certain flavours from other games, especially Gauntlet (TM)
and Nethack/Moria.
Any number of players can move around in their own window, finding
and using items and battle monsters. They can choose to cooperate
or compete in the same "world".
and using items and battling monsters, solving quests, etc.
They can choose to cooperate or compete in the same "world".
WWW: http://crossfire.real-time.com/

View File

@ -1,19 +1,23 @@
bin/crossfire-config
@group games
@mode 2755
bin/crossfire-server
@mode
@group
bin/crossloop
bin/crossloop.pl
bin/crossloop.web
bin/player_dl.pl
etc/crossfire/ban_file
etc/crossfire/dm_file
etc/crossfire/exp_table
etc/crossfire/forbid
etc/crossfire/metaserver2
etc/crossfire/motd
etc/crossfire/news
etc/crossfire/rules
etc/crossfire/settings
etc/crossfire/stat_bonus
%%ETCDIR%%/ban_file
%%ETCDIR%%/dm_file
%%ETCDIR%%/exp_table
%%ETCDIR%%/forbid
%%ETCDIR%%/metaserver2
%%ETCDIR%%/motd
%%ETCDIR%%/news
%%ETCDIR%%/rules
%%ETCDIR%%/settings
%%ETCDIR%%/stat_bonus
lib/crossfire/plugins/cfanim.a
lib/crossfire/plugins/cfanim.la
lib/crossfire/plugins/cfanim.so
@ -33,6 +37,10 @@ libexec/crossfire/add_throw.perl
libexec/crossfire/metaserver.pl
libexec/crossfire/mktable.script
libexec/crossfire/random_map
man/man6/crossfire-config.6.gz
man/man6/crossfire-server.6.gz
man/man6/crossloop.6.gz
man/man6/crossloop.web.6.gz
%%DATADIR%%/adm/archsearch.pl
%%DATADIR%%/adm/collect_images.pl
%%DATADIR%%/adm/map_expand.pl
@ -516,6 +524,7 @@ libexec/crossfire/random_map
%%DATADIR%%/maps/darcap/cave/level2
%%DATADIR%%/maps/darcap/cave/level3
%%DATADIR%%/maps/darcap/cave/level4
%%DATADIR%%/maps/darcap/darcap.quests
%%DATADIR%%/maps/darcap/darcap/airhouse
%%DATADIR%%/maps/darcap/darcap/apartment
%%DATADIR%%/maps/darcap/darcap/bob.msg
@ -622,7 +631,6 @@ libexec/crossfire/random_map
%%DATADIR%%/maps/darcap/darcap/thilgar
%%DATADIR%%/maps/darcap/darcap/thilgar_top
%%DATADIR%%/maps/darcap/darcap/waterhouse
%%DATADIR%%/maps/darcap/darcap.quests
%%DATADIR%%/maps/darcap/house1
%%DATADIR%%/maps/darcap/lynn/castle1.0
%%DATADIR%%/maps/darcap/lynn/castle1.1
@ -3197,6 +3205,7 @@ libexec/crossfire/random_map
%%DATADIR%%/maps/wolfsburg/volcano/vvmansion
%%DATADIR%%/maps/wolfsburg/ware1
%%DATADIR%%/maps/wolfsburg/wolfsburg.quests
%%DATADIR%%/maps/world.quests
%%DATADIR%%/maps/world/world_100_100
%%DATADIR%%/maps/world/world_100_101
%%DATADIR%%/maps/world/world_100_102
@ -4097,7 +4106,6 @@ libexec/crossfire/random_map
%%DATADIR%%/maps/world/world_129_127
%%DATADIR%%/maps/world/world_129_128
%%DATADIR%%/maps/world/world_129_129
%%DATADIR%%/maps/world.quests
%%DATADIR%%/materials
%%DATADIR%%/messages
%%DATADIR%%/races
@ -4152,12 +4160,19 @@ libexec/crossfire/random_map
%%DATADIR%%/wizhelp/wizcast
%%DATADIR%%/wizhelp/wizhelp
%%DATADIR%%/wizhelp/wizpass
var/crossfire/banish_file
var/crossfire/bookarch
var/crossfire/clockdata
var/crossfire/highscore
var/crossfire/temp.maps
@dirrm %%DATADIR%%/wizhelp
/var/games/crossfire/banish_file
/var/games/crossfire/bookarch
/var/games/crossfire/clockdata
/var/games/crossfire/highscore
/var/games/crossfire/temp.maps
@unexec rmdir >/dev/null 2>&1 /var/games/crossfire/unique-items || :
@unexec rmdir >/dev/null 2>&1 /var/games/crossfire/template-maps || :
@unexec rmdir >/dev/null 2>&1 /var/games/crossfire/players || :
@unexec rmdir >/dev/null 2>&1 /var/games/crossfire/maps || :
@unexec rmdir >/dev/null 2>&1 /var/games/crossfire/datafiles || :
@unexec rmdir >/dev/null 2>&1 /var/games/crossfire/account || :
@unexec rmdir >/dev/null 2>&1 /var/games/crossfire || :
@dirrmtry %%DATADIR%%/wizhelp
@dirrm %%DATADIR%%/maps/world
@dirrm %%DATADIR%%/maps/wolfsburg/volcano
@dirrm %%DATADIR%%/maps/wolfsburg/tt
@ -4533,18 +4548,4 @@ var/crossfire/temp.maps
@dirrm libexec/crossfire
@dirrm lib/crossfire/plugins
@dirrm lib/crossfire
@dirrm etc/crossfire
@exec mkdir -p %D/var/crossfire/account
@exec mkdir -p %D/var/crossfire/datafiles
@exec mkdir -p %D/var/crossfire/maps
@exec mkdir -p %D/var/crossfire/players
@exec mkdir -p %D/var/crossfire/template-maps
@exec mkdir -p %D/var/crossfire/unique-items
@dirrmtry var/crossfire/unique-items
@dirrmtry var/crossfire/template-maps
@dirrmtry var/crossfire/players
@dirrmtry var/crossfire/maps
@dirrmtry var/crossfire/datafiles
@dirrmtry var/crossfire/account
@dirrmtry var/crossfire
@dirrmtry var
@dirrm %%ETCDIR%%