aboutsummaryrefslogtreecommitdiffstats
path: root/net/cyphesis
diff options
context:
space:
mode:
authoroliver <oliver@FreeBSD.org>2005-10-03 03:10:31 +0800
committeroliver <oliver@FreeBSD.org>2005-10-03 03:10:31 +0800
commite5f3f893cd56f18e83f69e64cf0a6869ef24c010 (patch)
treeff544cdc44c05d886f81bba9d09cc12af5bdd22a /net/cyphesis
parent572d61d741802b228793377b6accf9144ebafbc3 (diff)
downloadfreebsd-ports-gnome-e5f3f893cd56f18e83f69e64cf0a6869ef24c010.tar.gz
freebsd-ports-gnome-e5f3f893cd56f18e83f69e64cf0a6869ef24c010.tar.zst
freebsd-ports-gnome-e5f3f893cd56f18e83f69e64cf0a6869ef24c010.zip
Add cyphesis, a server for WorldForge games
WWW: http://www.worldforge.org/dev/eng/servers/cyphesis
Diffstat (limited to 'net/cyphesis')
-rw-r--r--net/cyphesis/Makefile57
-rw-r--r--net/cyphesis/distinfo2
-rw-r--r--net/cyphesis/files/patch-client-ClientConnection.cpp20
-rw-r--r--net/cyphesis/files/patch-common-system.cpp17
-rw-r--r--net/cyphesis/files/patch-server-CommClient.cpp29
-rw-r--r--net/cyphesis/files/patch-tools-AdminClient.cpp20
-rw-r--r--net/cyphesis/files/patch-tools-cycmd.cpp20
-rw-r--r--net/cyphesis/pkg-descr6
-rw-r--r--net/cyphesis/pkg-plist149
9 files changed, 320 insertions, 0 deletions
diff --git a/net/cyphesis/Makefile b/net/cyphesis/Makefile
new file mode 100644
index 000000000000..704fb42d4e18
--- /dev/null
+++ b/net/cyphesis/Makefile
@@ -0,0 +1,57 @@
+# New ports collection makefile for: cyphesis
+# Date created: 02 Oct 2005
+# Whom: Oliver Lehmann <oliver@FreeBSD.org>
+#
+# $FreeBSD$
+#
+
+PORTNAME= cyphesis
+PORTVERSION= 0.5.0
+CATEGORIES= net
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
+MASTER_SITE_SUBDIR=worldforge
+
+MAINTAINER= oliver@FreeBSD.org
+COMMENT= A server for WorldForge games
+
+LIB_DEPENDS= Atlas-0.6.0:${PORTSDIR}/devel/atlas-devel \
+ varconf-1.0.4:${PORTSDIR}/devel/varconf \
+ wfmath-0.3.3:${PORTSDIR}/math/wfmath \
+ mercator-0.2.4:${PORTSDIR}/devel/mercator \
+ skstream-0.3.3:${PORTSDIR}/net/skstream \
+ gcrypt.13:${PORTSDIR}/security/libgcrypt
+
+CONFIGURE_ARGS= --with-python=${LOCALBASE}
+
+USE_REINPLACE= YES
+USE_LIBTOOL_VER=15
+GNU_CONFIGURE= YES
+INSTALLS_SHLIB= YES
+USE_GCC= 3.4
+USE_BZIP2= YES
+USE_PGSQL= YES
+USE_PYTHON= YES
+USE_GNOME= gnomehack
+
+MAN1= cyclient.1 cycmd.1 cyphesis.1 cyphesis-tools.1
+
+post-patch:
+ @${REINPLACE_CMD} -e 's| install-dist_docDATA | |g' ${WRKSRC}/Makefile.in
+ @${REINPLACE_CMD} -e 's| install-confbackupDATA | |g' ${WRKSRC}/data/Makefile.in
+ @${REINPLACE_CMD} -e 's|-lpython|${PTHREAD_LIBS} &|' ${WRKSRC}/configure
+ @${FIND} ${WRKSRC} -name Makefile.in | ${XARGS} \
+ ${REINPLACE_CMD} -e 's|$$(datadir)/cyphesis|${DATADIR}|g'
+
+post-install:
+.if !defined(NOPORTDOCS)
+ @${MKDIR} ${DOCSDIR}
+ @${MKDIR} ${DOCSDIR}/conf
+.for docfile in README COPYING AUTHORS THANKS NEWS ChangeLog TODO
+ @${INSTALL_DATA} ${WRKSRC}/${docfile} ${DOCSDIR}
+.endfor
+.for docfile in acorn.xml basic.xml cyphesis.vconf mason.xml werewolf.xml
+ @${INSTALL_DATA} ${WRKSRC}/data/${docfile} ${DOCSDIR}/conf
+.endfor
+.endif
+
+.include <bsd.port.mk>
diff --git a/net/cyphesis/distinfo b/net/cyphesis/distinfo
new file mode 100644
index 000000000000..2e24a84aaa48
--- /dev/null
+++ b/net/cyphesis/distinfo
@@ -0,0 +1,2 @@
+MD5 (cyphesis-0.5.0.tar.bz2) = b55acc85575efd401f8cb2c233dafe81
+SIZE (cyphesis-0.5.0.tar.bz2) = 549759
diff --git a/net/cyphesis/files/patch-client-ClientConnection.cpp b/net/cyphesis/files/patch-client-ClientConnection.cpp
new file mode 100644
index 000000000000..7d2f5ca5da7f
--- /dev/null
+++ b/net/cyphesis/files/patch-client-ClientConnection.cpp
@@ -0,0 +1,20 @@
+--- client/ClientConnection.cpp.orig Sun Oct 2 18:13:33 2005
++++ client/ClientConnection.cpp Sun Oct 2 18:13:55 2005
+@@ -172,7 +172,7 @@
+
+ int ClientConnection::negotiate()
+ {
+- Atlas::Net::StreamConnect conn("cyphesis_aiclient", ios, *this);
++ Atlas::Net::StreamConnect conn("cyphesis_aiclient", ios);
+
+ debug(std::cout << "Negotiating... " << std::flush;);
+ while (conn.getState() == Atlas::Net::StreamConnect::IN_PROGRESS) {
+@@ -185,7 +185,7 @@
+ return -1;
+ }
+
+- codec = conn.getCodec();
++ codec = conn.getCodec(*this);
+
+ encoder = new Atlas::Objects::ObjectsEncoder(*codec);
+
diff --git a/net/cyphesis/files/patch-common-system.cpp b/net/cyphesis/files/patch-common-system.cpp
new file mode 100644
index 000000000000..3f23278df2a7
--- /dev/null
+++ b/net/cyphesis/files/patch-common-system.cpp
@@ -0,0 +1,17 @@
+--- common/system.cpp.orig Sun Oct 2 17:42:56 2005
++++ common/system.cpp Sun Oct 2 17:43:29 2005
+@@ -74,6 +74,14 @@
+ #endif
+ }
+
++#ifndef SA_ONESHOT
++# ifdef SA_RESETHAND
++# define SA_ONESHOT SA_RESETHAND
++# else
++# define SA_ONESHOT 0
++# endif
++#endif
++
+ void interactive_signals()
+ {
+ #if defined(HAVE_SIGACTION)
diff --git a/net/cyphesis/files/patch-server-CommClient.cpp b/net/cyphesis/files/patch-server-CommClient.cpp
new file mode 100644
index 000000000000..d4710f217c2b
--- /dev/null
+++ b/net/cyphesis/files/patch-server-CommClient.cpp
@@ -0,0 +1,29 @@
+--- server/CommClient.cpp.orig Sun Oct 2 18:09:37 2005
++++ server/CommClient.cpp Sun Oct 2 18:11:05 2005
+@@ -28,7 +28,7 @@
+ {
+ m_clientIos.setTimeout(0,1000);
+
+- m_negotiate = new Atlas::Net::StreamAccept("cyphesis " + m_commServer.m_server.getName(), m_clientIos, *this);
++ m_negotiate = new Atlas::Net::StreamAccept("cyphesis " + m_commServer.m_server.getName(), m_clientIos);
+ }
+
+ CommClient::CommClient(CommServer & svr, BaseEntity & c) :
+@@ -38,7 +38,7 @@
+ {
+ m_clientIos.setTimeout(0,1000);
+
+- m_negotiate = new Atlas::Net::StreamConnect("cyphesis " + m_commServer.m_server.getName(), m_clientIos, *this);
++ m_negotiate = new Atlas::Net::StreamConnect("cyphesis " + m_commServer.m_server.getName(), m_clientIos);
+ }
+
+ CommClient::~CommClient()
+@@ -85,7 +85,7 @@
+ // Negotiation was successful
+
+ // Get the codec that negotiation established
+- m_codec = m_negotiate->getCodec();
++ m_codec = m_negotiate->getCodec(*this);
+
+ // Create a new encoder to send high level objects to the codec
+ m_encoder = new Atlas::Objects::ObjectsEncoder(*m_codec);
diff --git a/net/cyphesis/files/patch-tools-AdminClient.cpp b/net/cyphesis/files/patch-tools-AdminClient.cpp
new file mode 100644
index 000000000000..9f3525788217
--- /dev/null
+++ b/net/cyphesis/files/patch-tools-AdminClient.cpp
@@ -0,0 +1,20 @@
+--- tools/AdminClient.cpp.orig Sun Oct 2 18:16:32 2005
++++ tools/AdminClient.cpp Sun Oct 2 18:16:51 2005
+@@ -408,7 +408,7 @@
+ int AdminClient::negotiate()
+ {
+ // Do client negotiation with the server
+- Atlas::Net::StreamConnect conn("cycmd", *ios, *this);
++ Atlas::Net::StreamConnect conn("cycmd", *ios);
+
+ while (conn.getState() == Atlas::Negotiate::IN_PROGRESS) {
+ // conn.poll() does all the negotiation
+@@ -423,7 +423,7 @@
+ // Negotiation was successful
+
+ // Get the codec that negotiation established
+- codec = conn.getCodec();
++ codec = conn.getCodec(*this);
+
+ // Create the encoder
+ encoder = new Atlas::Objects::ObjectsEncoder(*codec);
diff --git a/net/cyphesis/files/patch-tools-cycmd.cpp b/net/cyphesis/files/patch-tools-cycmd.cpp
new file mode 100644
index 000000000000..ede187aa0a7b
--- /dev/null
+++ b/net/cyphesis/files/patch-tools-cycmd.cpp
@@ -0,0 +1,20 @@
+--- tools/cycmd.cpp.orig Sun Oct 2 18:15:03 2005
++++ tools/cycmd.cpp Sun Oct 2 18:15:34 2005
+@@ -589,7 +589,7 @@
+ int Interactive<Stream>::negotiate()
+ {
+ // Do client negotiation with the server
+- Atlas::Net::StreamConnect conn("cycmd", ios, *this);
++ Atlas::Net::StreamConnect conn("cycmd", ios);
+
+ std::cout << "Negotiating... " << std::flush;
+ while (conn.getState() == Atlas::Negotiate::IN_PROGRESS) {
+@@ -606,7 +606,7 @@
+ // Negotiation was successful
+
+ // Get the codec that negotiation established
+- codec = conn.getCodec();
++ codec = conn.getCodec(*this);
+
+ // Create the encoder
+ encoder = new Atlas::Objects::ObjectsEncoder(*codec);
diff --git a/net/cyphesis/pkg-descr b/net/cyphesis/pkg-descr
new file mode 100644
index 000000000000..ed67d0f2ce59
--- /dev/null
+++ b/net/cyphesis/pkg-descr
@@ -0,0 +1,6 @@
+Cyphesis is a small scale or personal server for WorldForge games, and is
+currently being used to develop new techniques and technologies for the
+WorldForge project. Code from cyphesis will also be used to control NPCs
+in future servers such as STAGE using AI techniques.
+
+WWW: http://www.worldforge.org/dev/eng/servers/cyphesis
diff --git a/net/cyphesis/pkg-plist b/net/cyphesis/pkg-plist
new file mode 100644
index 000000000000..d1d41e330e4d
--- /dev/null
+++ b/net/cyphesis/pkg-plist
@@ -0,0 +1,149 @@
+bin/cyaddrules
+bin/cyclient
+bin/cycmd
+bin/cyconfig
+bin/cyconvertrules
+bin/cydumprules
+bin/cyloadrules
+bin/cypasswd
+bin/cyphesis
+etc/cyphesis/acorn.xml
+etc/cyphesis/basic.xml
+etc/cyphesis/cyphesis.vconf
+etc/cyphesis/mason.xml
+etc/cyphesis/werewolf.xml
+%%DATADIR%%/rulesets/basic/__init__.py
+%%DATADIR%%/rulesets/basic/editor.py
+%%DATADIR%%/rulesets/basic/hooks/__init__.py
+%%DATADIR%%/rulesets/basic/hooks/ruleset_import_hooks.py
+%%DATADIR%%/rulesets/basic/mind/BaseMind.py
+%%DATADIR%%/rulesets/basic/mind/ExternalMind.py
+%%DATADIR%%/rulesets/basic/mind/Goal.py
+%%DATADIR%%/rulesets/basic/mind/Knowledge.py
+%%DATADIR%%/rulesets/basic/mind/MemMap.py
+%%DATADIR%%/rulesets/basic/mind/Memory.py
+%%DATADIR%%/rulesets/basic/mind/NPCMind.py
+%%DATADIR%%/rulesets/basic/mind/__init__.py
+%%DATADIR%%/rulesets/basic/mind/compass.py
+%%DATADIR%%/rulesets/basic/mind/goals/__init__.py
+%%DATADIR%%/rulesets/basic/mind/goals/animal/__init__.py
+%%DATADIR%%/rulesets/basic/mind/goals/animal/herd.py
+%%DATADIR%%/rulesets/basic/mind/goals/common/__init__.py
+%%DATADIR%%/rulesets/basic/mind/goals/common/common.py
+%%DATADIR%%/rulesets/basic/mind/goals/common/misc_goal.py
+%%DATADIR%%/rulesets/basic/mind/goals/common/move.py
+%%DATADIR%%/rulesets/basic/mind/goals/dynamic/DynamicGoal.py
+%%DATADIR%%/rulesets/basic/mind/goals/dynamic/__init__.py
+%%DATADIR%%/rulesets/basic/mind/goals/dynamic/add_unique_goal.py
+%%DATADIR%%/rulesets/basic/mind/goals/humanoid/__init__.py
+%%DATADIR%%/rulesets/basic/mind/goals/humanoid/build_home.py
+%%DATADIR%%/rulesets/basic/mind/goals/humanoid/construction.py
+%%DATADIR%%/rulesets/basic/mind/goals/humanoid/fire.py
+%%DATADIR%%/rulesets/basic/mind/goals/humanoid/mason.py
+%%DATADIR%%/rulesets/basic/mind/goals/humanoid/transaction.py
+%%DATADIR%%/rulesets/basic/mind/goals/humanoid/werewolf.py
+%%DATADIR%%/rulesets/basic/mind/panlingua/__init__.py
+%%DATADIR%%/rulesets/basic/mind/panlingua/interlinguish.py
+%%DATADIR%%/rulesets/basic/mind/panlingua/ontology.py
+%%DATADIR%%/rulesets/basic/mind/panlingua/panlingua.py
+%%DATADIR%%/rulesets/basic/mind/panlingua/syntax.py
+%%DATADIR%%/rulesets/basic/world/__init__.py
+%%DATADIR%%/rulesets/basic/world/objects/Pile.py
+%%DATADIR%%/rulesets/basic/world/objects/Thing.py
+%%DATADIR%%/rulesets/basic/world/objects/__init__.py
+%%DATADIR%%/rulesets/basic/world/objects/animals/Animal.py
+%%DATADIR%%/rulesets/basic/world/objects/animals/__init__.py
+%%DATADIR%%/rulesets/basic/world/objects/buildings/House.py
+%%DATADIR%%/rulesets/basic/world/objects/buildings/StoneHouse.py
+%%DATADIR%%/rulesets/basic/world/objects/buildings/__init__.py
+%%DATADIR%%/rulesets/basic/world/objects/elements/Fire.py
+%%DATADIR%%/rulesets/basic/world/objects/elements/__init__.py
+%%DATADIR%%/rulesets/basic/world/objects/plants/Tree.py
+%%DATADIR%%/rulesets/basic/world/objects/plants/__init__.py
+%%DATADIR%%/rulesets/basic/world/objects/tools/Axe.py
+%%DATADIR%%/rulesets/basic/world/objects/tools/Bow.py
+%%DATADIR%%/rulesets/basic/world/objects/tools/Pickaxe.py
+%%DATADIR%%/rulesets/basic/world/objects/tools/Scythe.py
+%%DATADIR%%/rulesets/basic/world/objects/tools/Shovel.py
+%%DATADIR%%/rulesets/basic/world/objects/tools/Sword.py
+%%DATADIR%%/rulesets/basic/world/objects/tools/__init__.py
+%%DATADIR%%/rulesets/basic/world/probability.py
+%%DATADIR%%/rulesets/mason/__init__.py
+%%DATADIR%%/rulesets/mason/define_world.py
+%%DATADIR%%/rulesets/mason/define_world_aglanor.py
+%%DATADIR%%/rulesets/mason/mind/PigMind.py
+%%DATADIR%%/rulesets/mason/mind/SkelMind.py
+%%DATADIR%%/rulesets/mason/mind/WolfMind.py
+%%DATADIR%%/rulesets/mason/mind/__init__.py
+%%DATADIR%%/rulesets/mason/world/__init__.py
+%%DATADIR%%/rulesets/mason/world/objects/Weather.py
+%%DATADIR%%/rulesets/mason/world/objects/__init__.py
+%%DATADIR%%/rulesets/mason/world/objects/animals/Deer.py
+%%DATADIR%%/rulesets/mason/world/objects/animals/Pig.py
+%%DATADIR%%/rulesets/mason/world/objects/animals/__init__.py
+%%DATADIR%%/rulesets/mason/world/objects/buildings/House3.py
+%%DATADIR%%/rulesets/mason/world/objects/buildings/__init__.py
+%%DATADIR%%/rulesets/mason/world/objects/clothing/Garment.py
+%%DATADIR%%/rulesets/mason/world/objects/clothing/__init__.py
+%%DATADIR%%/rulesets/mason/world/objects/outdoor/Campfire.py
+%%DATADIR%%/rulesets/mason/world/objects/outdoor/Gravestone.py
+%%DATADIR%%/rulesets/mason/world/objects/outdoor/__init__.py
+%%DATADIR%%/rulesets/mason/world/objects/plants/Fir.py
+%%DATADIR%%/rulesets/mason/world/objects/plants/__init__.py
+%%DATADIR%%/rulesets/mason/world/objects/plants/seeds/Acorn.py
+%%DATADIR%%/rulesets/mason/world/objects/plants/seeds/Apple.py
+%%DATADIR%%/rulesets/mason/world/objects/plants/seeds/Fircone.py
+%%DATADIR%%/rulesets/mason/world/objects/plants/seeds/Seed.py
+%%DATADIR%%/rulesets/mason/world/objects/plants/seeds/__init__.py
+%%DATADIR%%/rulesets/mason/world/objects/tools/Bucksaw.py
+%%DATADIR%%/rulesets/mason/world/objects/tools/Cleaver.py
+%%DATADIR%%/rulesets/mason/world/objects/tools/Rope.py
+%%DATADIR%%/rulesets/mason/world/objects/tools/Tinderbox.py
+%%DATADIR%%/rulesets/mason/world/objects/tools/Torch.py
+%%DATADIR%%/rulesets/mason/world/objects/tools/Trowel.py
+%%DATADIR%%/rulesets/mason/world/objects/tools/__init__.py
+%%DATADIR%%/rulesets/mason/world/objects/undead/Skeleton.py
+%%DATADIR%%/rulesets/mason/world/objects/undead/__init__.py
+%%PORTDOCS%%%%DOCSDIR%%/README
+%%PORTDOCS%%%%DOCSDIR%%/COPYING
+%%PORTDOCS%%%%DOCSDIR%%/AUTHORS
+%%PORTDOCS%%%%DOCSDIR%%/THANKS
+%%PORTDOCS%%%%DOCSDIR%%/NEWS
+%%PORTDOCS%%%%DOCSDIR%%/ChangeLog
+%%PORTDOCS%%%%DOCSDIR%%/TODO
+%%PORTDOCS%%%%DOCSDIR%%/conf/acorn.xml
+%%PORTDOCS%%%%DOCSDIR%%/conf/basic.xml
+%%PORTDOCS%%%%DOCSDIR%%/conf/cyphesis.vconf
+%%PORTDOCS%%%%DOCSDIR%%/conf/mason.xml
+%%PORTDOCS%%%%DOCSDIR%%/conf/werewolf.xml
+@dirrm etc/cyphesis
+@dirrm %%DATADIR%%/rulesets/basic/hooks
+@dirrm %%DATADIR%%/rulesets/basic/mind/goals/animal
+@dirrm %%DATADIR%%/rulesets/basic/mind/goals/common
+@dirrm %%DATADIR%%/rulesets/basic/mind/goals/dynamic
+@dirrm %%DATADIR%%/rulesets/basic/mind/goals/humanoid
+@dirrm %%DATADIR%%/rulesets/basic/mind/goals
+@dirrm %%DATADIR%%/rulesets/basic/mind/panlingua
+@dirrm %%DATADIR%%/rulesets/basic/mind
+@dirrm %%DATADIR%%/rulesets/basic/world/objects/animals
+@dirrm %%DATADIR%%/rulesets/basic/world/objects/buildings
+@dirrm %%DATADIR%%/rulesets/basic/world/objects/elements
+@dirrm %%DATADIR%%/rulesets/basic/world/objects/plants
+@dirrm %%DATADIR%%/rulesets/basic/world/objects/tools
+@dirrm %%DATADIR%%/rulesets/basic/world/objects
+@dirrm %%DATADIR%%/rulesets/basic/world
+@dirrm %%DATADIR%%/rulesets/basic
+@dirrm %%DATADIR%%/rulesets/mason/mind
+@dirrm %%DATADIR%%/rulesets/mason/world/objects/animals
+@dirrm %%DATADIR%%/rulesets/mason/world/objects/buildings
+@dirrm %%DATADIR%%/rulesets/mason/world/objects/clothing
+@dirrm %%DATADIR%%/rulesets/mason/world/objects/outdoor
+@dirrm %%DATADIR%%/rulesets/mason/world/objects/plants/seeds
+@dirrm %%DATADIR%%/rulesets/mason/world/objects/plants
+@dirrm %%DATADIR%%/rulesets/mason/world/objects/tools
+@dirrm %%DATADIR%%/rulesets/mason/world/objects/undead
+@dirrm %%DATADIR%%/rulesets/mason/world/objects
+@dirrm %%DATADIR%%/rulesets/mason/world
+@dirrm %%DATADIR%%/rulesets/mason
+%%PORTDOCS%%@dirrm %%DOCSDIR%%/conf
+%%PORTDOCS%%@dirrm %%DOCSDIR%%