aboutsummaryrefslogtreecommitdiff
path: root/games/tinymux
diff options
context:
space:
mode:
authorRusmir Dusko <nemysis@FreeBSD.org>2014-03-29 15:30:52 +0000
committerRusmir Dusko <nemysis@FreeBSD.org>2014-03-29 15:30:52 +0000
commit107e0e01890a006ebed4c57241f73baf1537c4c9 (patch)
tree8c39e69298a496ead9340f45271d6b6212f2dc77 /games/tinymux
parent061a8f3ce106200751433295d8777abcd46c17fa (diff)
downloadports-107e0e01890a006ebed4c57241f73baf1537c4c9.tar.gz
ports-107e0e01890a006ebed4c57241f73baf1537c4c9.zip
Notes
Diffstat (limited to 'games/tinymux')
-rw-r--r--games/tinymux/Makefile138
-rw-r--r--games/tinymux/distinfo4
-rw-r--r--games/tinymux/files/pkg-deinstall.in20
-rw-r--r--games/tinymux/files/pkg-message.in9
-rw-r--r--games/tinymux/files/tinymux.in7
-rw-r--r--games/tinymux/pkg-plist71
6 files changed, 167 insertions, 82 deletions
diff --git a/games/tinymux/Makefile b/games/tinymux/Makefile
index db1d34fa2a72..2bd7f4893434 100644
--- a/games/tinymux/Makefile
+++ b/games/tinymux/Makefile
@@ -2,78 +2,116 @@
# $FreeBSD$
PORTNAME= tinymux
-PORTVERSION= 2.6.5.${PATCHLEVEL}
+PORTVERSION= 2.10.1.${PATCHLEVEL}
CATEGORIES= games net
-MASTER_SITES= GOOGLE_CODE \
- ftp://ftp.tinymux.org/TinyMUX/old/tinymux-2.6/
+MASTER_SITES= GOOGLE_CODE
DISTNAME= mux-${PORTVERSION}.unix
MAINTAINER= ports@FreeBSD.org
-COMMENT= A Multi-Player FreeForm adventure Program
+COMMENT= Multi-Player FreeForm adventure Program
-WRKSRC= ${WRKDIR}/mux2.6/src
+LICENSE= GPLv3
-DEPRECATED= Unmaintained since 2001
-EXPIRATION_DATE= 2014-04-12
-USES= gettext
-USE_GMAKE= yes
-GNU_CONFIGURE= yes
+WRKSRC= ${WRKDIR}/mux2.10/src
-PORTDOCS= *
+USES= gmake
+GNU_CONFIGURE= yes
+USE_LDCONFIG= yes
CPPFLAGS+= -I${LOCALBASE}/include
LDFLAGS+= -L${LOCALBASE}/lib
-PATCHLEVEL= 33
+PATCHLEVEL= 12
+
+PORTDOCS= *
+
+DOCSRCDIR1= ${WRKSRC}/..
+DOC_FILES1= ATTACK CHANGES MODULES NOTES README REALITY REALITY.SETUP SGP \
+ SQL SSL
+
+DOCSRCDIR2= ${WRKSRC}/../docs
+DOCSDIR2= ${DOCSDIR}/docs
+DOC_FILES2= *
+
+OPTIONS_DEFINE= DOCS FIRANMUX MEMORY_BASED REALITY_LVLS SELFCHECK SSL WOD_REALMS
-NO_STAGE= yes
-.include <bsd.port.pre.mk>
+OPTIONS_DEFAULT= ASYNCHRONOUS_SQL SSL REALITY_LVLS WOD_REALMS
+OPTIONS_SUB= yes
+
+OPTIONS_RADIO= MYSQL
+OPTIONS_RADIO_MYSQL= ASYNCHRONOUS_SQL INLINE_SQL
+
+ASYNCHRONOUS_SQL_DESC= MySQL asynchronous support is unique to TinyMUX
+FIRANMUX_DESC= Firan MUX via Firan's database (need MEMORY_BASED)
+INLINE_SQL_DESC= MySQL support compatible with PennMUSH, TinyMUSH 3.x
+MEMORY_BASED_DESC= Memory Based Database support
+REALITY_LVLS_DESC= Reality Levels support
+SELFCHECK_DESC= Enable expensive self-checking
+WOD_REALMS_DESC= World of Darkness Realms support
+
+ASYNCHRONOUS_SQL_CONFIGURE_ENABLE= stubslave
+FIRANMUX_CONFIGURE_ENABLE= firanmux
+INLINE_SQL_CONFIGURE_ENABLE= inlinesql
+MEMORY_BASED_CONFIGURE_ENABLE= memorybased
+REALITY_LVLS_CONFIGURE_ENABLE= realitylvls
+SELFCHECK_CONFIGURE_ENABLE= selfcheck
+SSL_CONFIGURE_ENABLE= ssl
+WOD_REALMS_CONFIGURE_ENABLE= wodrealms
+
+SUB_FILES= ${PORTNAME} pkg-deinstall pkg-message
+
+.include <bsd.port.options.mk>
+
+.if ${PORT_OPTIONS:MASYNCHRONOUS_SQL} || ${PORT_OPTIONS:MINLINE_SQL}
+USE_MYSQL= yes
+CONFIGURE_ARGS+= --with-mysql-include=${LOCALBASE}/include/mysql \
+ --with-mysql-libs=${LOCALBASE}/lib/mysql
+.endif
+
+.if ${PORT_OPTIONS:MFIRANMUX}
+.if ${PORT_OPTIONS:MREALITY_LVLS} || ${PORT_OPTIONS:MWOD_REALMS}
+IGNORE= FIRANMUX is incompatible with both WOD_REALMS and REALITY_LVLS
+.endif
+.endif
post-patch:
@${REINPLACE_CMD} -e \
- '/^LIBS/s|= @LIBS@|= @LDFLAGS@ @LIBS@|g ; \
- /^OPTIM/s|=.*|= @CPPFLAGS@|g' ${WRKSRC}/Makefile.in
+ 's|@LIBS@|@LDFLAGS@ @LIBS@|; \
+ s|^OPTIM =.*|OPTIM = @CPPFLAGS@|' ${WRKSRC}/Makefile.in
do-install:
-# Binaries
+ ${INSTALL_SCRIPT} ${WRKDIR}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin/
+
.for file in netmux slave
- ${INSTALL_PROGRAM} ${WRKSRC}/${file} ${PREFIX}/sbin
+ ${INSTALL_PROGRAM} ${WRKSRC}/${file} ${STAGEDIR}${PREFIX}/sbin/
.endfor
- ${INSTALL_PROGRAM} ${WRKSRC}/../game/bin/dbconvert ${PREFIX}/bin
-# Configuration
- ${MKDIR} ${ETCDIR}
+ ${LN} -sf ${PREFIX}/sbin/netmux ${STAGEDIR}${PREFIX}/bin/dbconvert
+ ${INSTALL_DATA} ${WRKSRC}/libmux.so ${STAGEDIR}${PREFIX}/lib/
+ ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libmux.so
+
+ @${MKDIR} ${STAGEDIR}${ETCDIR}
.for file in alias.conf compat.conf mux.config netmux.conf
${INSTALL_DATA} ${WRKSRC}/../game/${file} \
- ${ETCDIR}/${file}.sample
-.endfor
-# Data
- ${MKDIR} ${DATADIR}/game/netmux
-.for file in Backup Startmux _backupflat.sh
- ${INSTALL_SCRIPT} ${WRKSRC}/../game/${file} ${DATADIR}/game/netmux/
-.endfor
- ${MKDIR} ${DATADIR}/game/netmux/data
-.for file in db_check db_load db_unload
- ${INSTALL_SCRIPT} ${WRKSRC}/../game/data/${file} \
- ${DATADIR}/game/netmux/data
-.endfor
- ${INSTALL_DATA} ${WRKSRC}/../game/data/netmux.db \
- ${DATADIR}/game/netmux/data
- ${MKDIR} ${DATADIR}/game/netmux/text
-.for file in badsite connect create_reg down full guest help motd \
- news newuser plushelp quit register staffhelp wizhelp wizmotd wiznews
- ${INSTALL_DATA} ${WRKSRC}/../game/text/${file}.txt \
- ${DATADIR}/game/netmux/text
+ ${STAGEDIR}${ETCDIR}/${file}.sample
.endfor
-# Docs
-.if !defined(NOPORTDOCS)
- ${MKDIR} ${DOCSDIR}
-.for file in ATTACK CHANGES INSTALL NOTES README SGP
- ${INSTALL_DATA} ${WRKSRC}/../${file} ${DOCSDIR}
+
+.if ${PORT_OPTIONS:MSSL}
+ ${INSTALL_DATA} ${WRKSRC}/../game/muxssl.conf \
+ ${STAGEDIR}${ETCDIR}/muxssl.conf.sample
+.endif
+
+.for d in data text
+ @(cd ${WRKSRC}/../game && ${COPYTREE_SHARE} ${d} ${STAGEDIR}${DATADIR})
.endfor
-.for file in BACKUPS CONFIGURATION CONVERSION CREDITS DISTRIBUTIONS GUESTS \
- LIMITS MEMORY PATCHES REALMS
- ${INSTALL_DATA} ${WRKSRC}/../docs/${file} ${DOCSDIR}
+ @${CHMOD} 775 ${STAGEDIR}${DATADIR}/data
+
+.for file in Backup Startmux _backupflat.sh
+ ${INSTALL_SCRIPT} ${WRKSRC}/../game/${file} \
+ ${STAGEDIR}${DATADIR}
.endfor
-.endif
-.include <bsd.port.post.mk>
+ @${MKDIR} ${STAGEDIR}${DOCSDIR2}
+ ${INSTALL_DATA} ${DOC_FILES1:S|^|${DOCSRCDIR1}/|} ${STAGEDIR}${DOCSDIR}
+ ${INSTALL_DATA} ${DOC_FILES2:S|^|${DOCSRCDIR2}/|} ${STAGEDIR}${DOCSDIR2}
+
+.include <bsd.port.mk>
diff --git a/games/tinymux/distinfo b/games/tinymux/distinfo
index 7d2bb441819c..bf0b81c93a34 100644
--- a/games/tinymux/distinfo
+++ b/games/tinymux/distinfo
@@ -1,2 +1,2 @@
-SHA256 (mux-2.6.5.33.unix.tar.gz) = 5f4d98be11a72ca5cd947308f69052c681bffecd32130d39fd1c58e577c5637e
-SIZE (mux-2.6.5.33.unix.tar.gz) = 984137
+SHA256 (mux-2.10.1.12.unix.tar.gz) = fe7d7b25723a7fc618a3ff6c15d274a107839d5e9797911d142cbc9d25ce51e8
+SIZE (mux-2.10.1.12.unix.tar.gz) = 1303734
diff --git a/games/tinymux/files/pkg-deinstall.in b/games/tinymux/files/pkg-deinstall.in
new file mode 100644
index 000000000000..2b4faff226a9
--- /dev/null
+++ b/games/tinymux/files/pkg-deinstall.in
@@ -0,0 +1,20 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+
+if [ "$2" = "POST-DEINSTALL" ]; then
+ echo ""
+ echo ""
+ echo "==============================================================================="
+ echo ""
+ echo "After deinstallation, some files may stay in %%DATADIR%% and"
+ echo "%%ETCDIR%%, you can delete them with"
+ echo ""
+ echo " /bin/rm -fr %%DATADIR%%"
+ echo ""
+ echo " /bin/rm -fr %%ETCDIR%%"
+ echo ""
+ echo "==============================================================================="
+ echo ""
+fi
diff --git a/games/tinymux/files/pkg-message.in b/games/tinymux/files/pkg-message.in
new file mode 100644
index 000000000000..e86917489c2d
--- /dev/null
+++ b/games/tinymux/files/pkg-message.in
@@ -0,0 +1,9 @@
+===============================================================================
+
+TinyMUX has been installed.
+
+All options are given only in the config files in %%ETCDIR%%
+
+Have fun!
+
+===============================================================================
diff --git a/games/tinymux/files/tinymux.in b/games/tinymux/files/tinymux.in
new file mode 100644
index 000000000000..dba57ea7d943
--- /dev/null
+++ b/games/tinymux/files/tinymux.in
@@ -0,0 +1,7 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+
+cd "%%DATADIR%%"
+exec ./Startmux "${@}"
diff --git a/games/tinymux/pkg-plist b/games/tinymux/pkg-plist
index 1788a9d92cde..886a878abeb8 100644
--- a/games/tinymux/pkg-plist
+++ b/games/tinymux/pkg-plist
@@ -1,37 +1,48 @@
bin/dbconvert
+bin/tinymux
+@unexec if cmp -s %D/etc/tinymux/alias.conf %D/etc/tinymux/alias.conf.sample; then rm -f %D/etc/tinymux/alias.conf; fi
etc/tinymux/alias.conf.sample
+@exec if [ ! -f %D/etc/tinymux/alias.conf ] ; then cp -p %D/%F %B/alias.conf; fi
+@unexec if cmp -s %D/etc/tinymux/compat.conf %D/etc/tinymux/compat.conf.sample; then rm -f %D/etc/tinymux/compat.conf; fi
etc/tinymux/compat.conf.sample
+@exec if [ ! -f %D/etc/tinymux/compat.conf ] ; then cp -p %D/%F %B/compat.conf; fi
+@unexec if cmp -s %D/etc/tinymux/mux.config %D/etc/tinymux/mux.config.sample; then rm -f %D/etc/tinymux/mux.config; fi
etc/tinymux/mux.config.sample
+@exec if [ ! -f %D/etc/tinymux/mux.config ] ; then cp -p %D/%F %B/mux.config; fi
+%%SSL%%@unexec if cmp -s %D/etc/tinymux/muxssl.conf %D/etc/tinymux/muxssl.conf.sample; then rm -f %D/etc/tinymux/muxssl.conf; fi
+%%SSL%%etc/tinymux/muxssl.conf.sample
+%%SSL%%@exec if [ ! -f %D/etc/tinymux/muxssl.conf ] ; then cp -p %D/%F %B/muxssl.conf; fi
+@unexec if cmp -s %D/etc/tinymux/netmux.conf %D/etc/tinymux/netmux.conf.sample; then rm -f %D/etc/tinymux/netmux.conf; fi
etc/tinymux/netmux.conf.sample
+@exec if [ ! -f %D/etc/tinymux/netmux.conf ] ; then cp -p %D/%F %B/netmux.conf; fi
+lib/libmux.so
sbin/netmux
sbin/slave
-%%DATADIR%%/game/netmux/Backup
-%%DATADIR%%/game/netmux/Startmux
-%%DATADIR%%/game/netmux/_backupflat.sh
-%%DATADIR%%/game/netmux/data/db_check
-%%DATADIR%%/game/netmux/data/db_load
-%%DATADIR%%/game/netmux/data/db_unload
-%%DATADIR%%/game/netmux/data/netmux.db
-%%DATADIR%%/game/netmux/text/badsite.txt
-%%DATADIR%%/game/netmux/text/connect.txt
-%%DATADIR%%/game/netmux/text/create_reg.txt
-%%DATADIR%%/game/netmux/text/down.txt
-%%DATADIR%%/game/netmux/text/full.txt
-%%DATADIR%%/game/netmux/text/guest.txt
-%%DATADIR%%/game/netmux/text/help.txt
-%%DATADIR%%/game/netmux/text/motd.txt
-%%DATADIR%%/game/netmux/text/news.txt
-%%DATADIR%%/game/netmux/text/newuser.txt
-%%DATADIR%%/game/netmux/text/plushelp.txt
-%%DATADIR%%/game/netmux/text/quit.txt
-%%DATADIR%%/game/netmux/text/register.txt
-%%DATADIR%%/game/netmux/text/staffhelp.txt
-%%DATADIR%%/game/netmux/text/wizhelp.txt
-%%DATADIR%%/game/netmux/text/wizmotd.txt
-%%DATADIR%%/game/netmux/text/wiznews.txt
-@dirrm %%DATADIR%%/game/netmux/text
-@dirrm %%DATADIR%%/game/netmux/data
-@dirrm %%DATADIR%%/game/netmux
-@dirrm %%DATADIR%%/game
-@dirrm %%DATADIR%%
-@dirrm etc/tinymux
+%%DATADIR%%/Backup
+%%DATADIR%%/Startmux
+%%DATADIR%%/_backupflat.sh
+%%DATADIR%%/data/db_check
+%%DATADIR%%/data/db_load
+%%DATADIR%%/data/db_unload
+%%DATADIR%%/data/netmux.db
+%%DATADIR%%/text/badsite.txt
+%%DATADIR%%/text/connect.txt
+%%DATADIR%%/text/create_reg.txt
+%%DATADIR%%/text/down.txt
+%%DATADIR%%/text/full.txt
+%%DATADIR%%/text/guest.txt
+%%DATADIR%%/text/help.txt
+%%DATADIR%%/text/motd.txt
+%%DATADIR%%/text/news.txt
+%%DATADIR%%/text/newuser.txt
+%%DATADIR%%/text/plushelp.txt
+%%DATADIR%%/text/quit.txt
+%%DATADIR%%/text/register.txt
+%%DATADIR%%/text/staffhelp.txt
+%%DATADIR%%/text/wizhelp.txt
+%%DATADIR%%/text/wizmotd.txt
+%%DATADIR%%/text/wiznews.txt
+@dirrm %%DATADIR%%/text
+@dirrmtry %%DATADIR%%/data
+@dirrmtry %%DATADIR%%
+@dirrmtry etc/tinymux