aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorlioux <lioux@FreeBSD.org>2005-01-14 06:25:46 +0800
committerlioux <lioux@FreeBSD.org>2005-01-14 06:25:46 +0800
commit5b3d6dfb917d32627bb833e55729d865982c5510 (patch)
treea09b7352b6b7de538197b5a55b5e73137a498f13
parente8507b323aff2123b74925f2145ad30c1f001184 (diff)
downloadfreebsd-ports-gnome-5b3d6dfb917d32627bb833e55729d865982c5510.tar.gz
freebsd-ports-gnome-5b3d6dfb917d32627bb833e55729d865982c5510.tar.zst
freebsd-ports-gnome-5b3d6dfb917d32627bb833e55729d865982c5510.zip
o New port seda version 3.0: An Architecture for Highly Concurrent
Server Applications o Use a custom made ant build.xml for building. Re-written with help from [1] and originally written by Johnathan James (jjames at haxwell dot org) Reviewed by: jrandom [1]
-rw-r--r--net/Makefile1
-rw-r--r--net/seda/Makefile67
-rw-r--r--net/seda/distinfo2
-rw-r--r--net/seda/files/build.xml55
-rw-r--r--net/seda/pkg-descr24
5 files changed, 149 insertions, 0 deletions
diff --git a/net/Makefile b/net/Makefile
index 4258089aa076..a04d00720f39 100644
--- a/net/Makefile
+++ b/net/Makefile
@@ -676,6 +676,7 @@
SUBDIR += scand
SUBDIR += scr_ipfm
SUBDIR += sdl_net
+ SUBDIR += seda
SUBDIR += sendfile
SUBDIR += ser
SUBDIR += serveez
diff --git a/net/seda/Makefile b/net/seda/Makefile
new file mode 100644
index 000000000000..81498e87ea3c
--- /dev/null
+++ b/net/seda/Makefile
@@ -0,0 +1,67 @@
+# New ports collection makefile for: seda
+# Date created: Thu Jan 13 15:45:22 UTC 2005
+# Whom: Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.org>
+#
+# $FreeBSD$
+#
+
+PORTNAME= seda
+PORTVERSION= 3.0
+CATEGORIES= net java
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
+MASTER_SITE_SUBDIR= ${PORTNAME}
+DISTNAME= ${PORTNAME}-release-${VERSION_DATE}
+
+MAINTAINER= lioux@FreeBSD.org
+COMMENT= An Architecture for Highly Concurrent Server Applications
+
+USE_JAVA= yes
+JAVA_VERSION= 1.3+
+USE_ANT= yes
+ALL_TARGET= dist
+
+.ifndef(NOPORTDOCS)
+ALL_TARGET+= javadoc
+.endif
+
+JAVADOC_WRKSRC= ${WRKSRC}/build/javadoc
+WRKSRC= ${WRKDIR}/${DISTNAME}/${PORTNAME}
+
+VERSION_DATE= 20020712
+
+DOC_FILES= \
+ gnutella-graph.gif \
+ index.html \
+ nbio.html \
+ profile.gif \
+ sandstorm.html \
+ sandstorm.jpg
+PORTDOCS= ${DOC_FILES} \
+ javadoc
+
+PLIST_FILES= \
+ %%JAVAJARDIR%%/${PORTNAME:L}.jar
+
+pre-build:
+# use our build.xml
+ @${CP} ${FILESDIR}/build.xml ${WRKSRC}
+
+do-install:
+# jar
+ @${MKDIR} ${JAVAJARDIR}
+ @${INSTALL_DATA} ${WRKSRC}/dist/lib/${PORTNAME:L}.jar \
+ ${JAVAJARDIR}/
+# docs
+.ifndef(NOPORTDOCS)
+ @${MKDIR} ${DOCSDIR}
+. for doc in ${DOC_FILES}
+ @${INSTALL_DATA} ${WRKSRC}/docs/${doc} ${DOCSDIR}
+. endfor
+ @${MKDIR} ${DOCSDIR}/javadoc
+# line taken from textproc/xerces-j maintained by hq@FreeBSD.org
+ @cd ${JAVADOC_WRKSRC} && \
+ ${FIND} . -type d -exec ${MKDIR} "${DOCSDIR}/javadoc/{}" \; && \
+ ${FIND} . -not -type d -exec ${INSTALL_DATA} "{}" "${DOCSDIR}/javadoc/{}" \;
+.endif
+
+.include <bsd.port.mk>
diff --git a/net/seda/distinfo b/net/seda/distinfo
new file mode 100644
index 000000000000..d5b38c98008b
--- /dev/null
+++ b/net/seda/distinfo
@@ -0,0 +1,2 @@
+MD5 (seda-release-20020712.tar.gz) = 4db398b8793bf44403da153fe5812f64
+SIZE (seda-release-20020712.tar.gz) = 326630
diff --git a/net/seda/files/build.xml b/net/seda/files/build.xml
new file mode 100644
index 000000000000..2787103dab1a
--- /dev/null
+++ b/net/seda/files/build.xml
@@ -0,0 +1,55 @@
+<!-- Obtained from http://www.haxwell.org/SEDA_Sandstorm_Ant_Build_Script.html -->
+<!-- Written by Johnathan James (jjames at haxwell dot org) -2005 -->
+<!-- Copyright by Mario S F Ferreira <lioux@FreeBSD.org> 2005- -->
+<!-- Copyright by jrandom 2005- -->
+<!-- $FreeBSD$ -->
+<project name="Build SEDA" default="dist" basedir=".">
+ <description>
+ Builds the SEDA 20020712 JAR file
+ </description>
+ <!-- set global properties for this build -->
+ <property name="src" location="src"/>
+ <property name="build" location="build"/>
+ <property name="dist" location="dist"/>
+
+ <target name="init">
+ <!-- Create the time stamp -->
+ <tstamp/>
+ <!-- Create the build directory structure used by compile -->
+ <mkdir dir="${build}"/>
+ </target>
+
+ <target name="compile" depends="init" description="compile the source " >
+ <!-- Compile the java code from ${src} into ${build} -->
+ <javac srcdir="${src}" destdir="${build}" excludes="**/test/**"/>
+ </target>
+
+ <target name="dist" depends="compile" description="generate the distribution" >
+ <!-- Create the distribution directory -->
+ <mkdir dir="${dist}/lib"/>
+
+ <!-- Put everything in ${build} into the SEDA.jar file -->
+ <jar jarfile="${dist}/lib/seda.jar" basedir="${build}"/>
+ </target>
+
+ <target name="javadoc">
+ <mkdir dir="${build}" />
+ <mkdir dir="${build}/javadoc" />
+ <javadoc access="package"
+ destdir="${build}/javadoc"
+ use="true"
+ splitindex="true"
+ sourcepath="src"
+ windowtitle="SEDA">
+ <fileset dir="." defaultexcludes="yes">
+ <include name="**/*.java" />
+ </fileset>
+ </javadoc>
+ </target>
+
+ <target name="clean" description="clean up" >
+ <!-- Delete the ${build} and ${dist} directory trees -->
+ <delete dir="${build}"/>
+ <delete dir="${dist}"/>
+ </target>
+</project>
diff --git a/net/seda/pkg-descr b/net/seda/pkg-descr
new file mode 100644
index 000000000000..7e2f647baf81
--- /dev/null
+++ b/net/seda/pkg-descr
@@ -0,0 +1,24 @@
+[ excerpt from developer's web site with modifications ]
+
+The goal is to build a system capable of supporting massive concurrency
+(on the order of tens of thousands of simultaneous client connections)
+and avoid the pitfalls which arise with traditional thread and
+event-based approaches.
+
+SEDA is an acronym for staged event-driven architecture, and
+decomposes a complex, event-driven application into a set of stages
+connected by queues. This design avoids the high overhead associated
+with thread-based concurrency models, and decouples event and thread
+scheduling from application logic. By performing admission control
+on each event queue, the service can be well-conditioned to load,
+preventing resources from being overcommitted when demand exceeds
+service capacity. SEDA employs dynamic control to automatically
+tune runtime parameters (such as the scheduling parameters of each
+stage), as well as to manage load, for example, by performing
+adaptive load shedding. Decomposing services into a set of stages
+also enables modularity and code reuse, as well as the development
+of debugging tools for complex event-driven applications.
+
+WWW: http://www.eecs.harvard.edu/~mdw/proj/seda/
+
+-- lioux@FreeBSD.org