Revert "www-servers/xsp replaced by www-servers/xsp"
authorHeather Cynede <cynede@gentoo.org>
Fri, 14 Aug 2015 12:55:07 +0000 (16:55 +0400)
committerHeather Cynede <cynede@gentoo.org>
Fri, 14 Aug 2015 12:56:05 +0000 (16:56 +0400)
don't remove dev-dotnet/xsp awhile mod-mod and older monodevelop is using it

dev-dotnet/xsp/Manifest [new file with mode: 0644]
dev-dotnet/xsp/files/2.2/mod-mono-server-r1.initd [new file with mode: 0644]
dev-dotnet/xsp/files/2.2/mod-mono-server.confd [new file with mode: 0644]
dev-dotnet/xsp/files/2.2/mod-mono-server.initd [new file with mode: 0644]
dev-dotnet/xsp/files/2.2/xsp.confd [new file with mode: 0644]
dev-dotnet/xsp/files/2.2/xsp.initd [new file with mode: 0644]
dev-dotnet/xsp/files/aclocal-fix.patch [new file with mode: 0644]
dev-dotnet/xsp/files/xsp-2.10.2-endrequest.patch [new file with mode: 0644]
dev-dotnet/xsp/metadata.xml [new file with mode: 0644]
dev-dotnet/xsp/xsp-2.10.2-r2.ebuild [new file with mode: 0644]
dev-dotnet/xsp/xsp-2014.11.ebuild [new file with mode: 0644]

diff --git a/dev-dotnet/xsp/Manifest b/dev-dotnet/xsp/Manifest
new file mode 100644 (file)
index 0000000..fdfa037
--- /dev/null
@@ -0,0 +1,2 @@
+DIST 2014.11.tar.gz 308009 SHA256 6378f0167dc09aaf8f48874b4f9ece3d41d375b168f0cb86a1b2cf52ee937376 SHA512 68e127e1d33da6f7fdcbf2586a48b2da32b1931558e637f10ba6b86cd7e6bf4ad67fc47cfa68703eb65964c270616a04da3eb9f2df14974ecdaa7b979f7fc9b6 WHIRLPOOL 143540614e0c7e509257d3391b06af231acd8732c5528134e4cc6c76a7812531e8f8c6b6059993e1dcd5fcc7516ed44accf44e8e1e4e8917f77ee65dde459815
+DIST xsp-2.10.2.tar.bz2 284801 SHA256 f4657f724167244d9baedf94e1d5747b8f1f53c339c7a11897154c1eb1289d4e SHA512 9b49e3a712e062b9a272e72609eda3cb8139127bc9780d6374a3567f51f15f38233f92252c2e4c22778b1841de66855dfe6a8cf81c97c6ebbf84f71dda0d43dd WHIRLPOOL fce613fedf164f7cd4cf0bae622884a4f7b6747e249d965c4ea23997586371b6a588ad96d66bcc5c6e74f98b76de3f374cd676de164ba1f3a889e4b00b8b6dcc
diff --git a/dev-dotnet/xsp/files/2.2/mod-mono-server-r1.initd b/dev-dotnet/xsp/files/2.2/mod-mono-server-r1.initd
new file mode 100644 (file)
index 0000000..6ce6a60
--- /dev/null
@@ -0,0 +1,83 @@
+#!/sbin/runscript
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id: mod-mono-server-r1.initd,v 1.1 2012/01/22 12:54:29 pacho Exp $
+
+depend() {
+       use net
+       after dotnet
+}
+
+start() {
+       [ -z "$MonoServerRootDir" ] && \
+       MonoServerRootDir="/usr/lib/xsp/test"
+       [ -z "$MonoApplications" ] && \
+       MonoApplications="/mono:/usr/lib/xsp/test,/:."
+       [ -z "$UnixSocketFileName" ] && \
+       UnixSocketFileName="/tmp/mod_mono_server"
+       [ -z "$MonoServerAddress" ] && \
+       MonoServerAddress=127.0.0.1
+       [ -z "$MonoServerPort" ] && \
+       MonoServerPort=8080
+       [ -z "$MonoServerVersion" ] && \
+       MonoServerVersion=1
+
+       MONO_SERVER_OPTS="--root ${MonoServerRootDir} \
+--applications ${MonoApplications} --nonstop"
+
+       [ -n "$MonoApplicationsConfigDir" ] && \
+       MONO_SERVER_OPTS="${MONO_SERVER_OPTS} \
+--appconfigdir ${MonoApplicationsConfigDir}"
+
+       case "$MonoServerChannel" in
+       "tcp" )
+               MONO_SERVER_OPTS="${MONO_SERVER_OPTS} \
+--address ${MonoServerAddress} --port ${MonoServerPort}"
+               ;;
+       
+       "unix" )
+               [ -f "$UnixSocketFileName" ] && rm -f $UnixSocketFileName
+               MONO_SERVER_OPTS="${MONO_SERVER_OPTS} \
+--filename ${UnixSocketFileName}"
+               ;;
+
+       * )
+               eerror "Please set a valid value for MonoServerChannel"
+               return 1
+               ;;
+       esac
+
+       if [ ${MonoServerVersion} -eq 1 ]; then
+               modmonoserverpath=1.0/mod-mono-server.exe
+       elif [ ${MonoServerVersion} -eq 2 ]; then
+               modmonoserverpath=2.0/mod-mono-server2.exe
+       elif [ ${MonoServerVersion} -eq 4 ]; then
+               modmonoserverpath=4.0/mod-mono-server4.exe
+       else
+               eerror "MonoServerVersion was not properly set. Check your /etc/conf.d/mod-mono-server"
+               return 1
+       fi
+
+       export MONO_SHARED_DIR=/tmp
+
+       ebegin "Starting mod-mono-server"
+
+       start-stop-daemon --quiet --start \
+               --background \
+               --make-pidfile \
+               --pidfile /var/run/aspnet/mod-mono-server.pid \
+               --user aspnet \
+               --exec /usr/bin/mono /usr/lib/mono/${modmonoserverpath} \
+               -- $MONO_SERVER_OPTS
+
+       eend $?
+}
+
+stop() {
+       ebegin "Stopping mod-mono-server"
+
+       start-stop-daemon --quiet --stop \
+               --pidfile /var/run/aspnet/mod-mono-server.pid
+
+       eend $?
+}
diff --git a/dev-dotnet/xsp/files/2.2/mod-mono-server.confd b/dev-dotnet/xsp/files/2.2/mod-mono-server.confd
new file mode 100644 (file)
index 0000000..7cefdbe
--- /dev/null
@@ -0,0 +1,34 @@
+# Config file for /etc/init.d/mod-mono-server
+# $Id: mod-mono-server.confd,v 1.1 2009/01/18 17:44:04 loki_val Exp $
+
+# Configuration directives for mod-mono-server.exe. For more information on
+# these variables, see the man page for xsp(1).
+
+# This is the document root; trailing slash is not necessary
+#MonoServerRootDir="/usr/lib/xsp/test"
+
+# Directory to search for files with an `.webapp' extension.
+#MonoApplicationsConfigDir="/usr/lib/xsp/test"
+
+# Comma separated list of directories (in the form virtual:real) for all
+# applications managed by the server. For example:
+#   /app1:/var/www/localhost/htdocs/app1,/app2:/var/www/localhost/htdocs/app2
+MonoApplications="/mono:/usr/lib/xsp/test"
+
+# The communication channel used between mod-mono-server and mod_mono.
+#   unix - A unix socket
+#   tcp  - A TCP connection
+MonoServerChannel="unix"
+
+# When the comm. channel is "unix", the local filename used by the socket.
+UnixSocketFileName="/tmp/mod_mono_server"
+
+# When the comm. channel is "tcp", IP address for the server to listen on.
+#MonoServerAddress=127.0.0.1
+
+# When the comm. channel is "tcp", port for the server to listen on.
+#MonoServerPort=8080
+
+# If you want to host .NET 2.0 applications you have to set this to 2.
+# Otherwise, leave it unchaged
+MonoServerVersion=1
diff --git a/dev-dotnet/xsp/files/2.2/mod-mono-server.initd b/dev-dotnet/xsp/files/2.2/mod-mono-server.initd
new file mode 100644 (file)
index 0000000..49119e5
--- /dev/null
@@ -0,0 +1,81 @@
+#!/sbin/runscript
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id: mod-mono-server.initd,v 1.1 2009/01/18 17:44:04 loki_val Exp $
+
+depend() {
+       use net
+       after dotnet
+}
+
+start() {
+       [ -z "$MonoServerRootDir" ] && \
+       MonoServerRootDir="/usr/lib/xsp/test"
+       [ -z "$MonoApplications" ] && \
+       MonoApplications="/mono:/usr/lib/xsp/test,/:."
+       [ -z "$UnixSocketFileName" ] && \
+       UnixSocketFileName="/tmp/mod_mono_server"
+       [ -z "$MonoServerAddress" ] && \
+       MonoServerAddress=127.0.0.1
+       [ -z "$MonoServerPort" ] && \
+       MonoServerPort=8080
+       [ -z "$MonoServerVersion" ] && \
+       MonoServerVersion=1
+
+       MONO_SERVER_OPTS="--root ${MonoServerRootDir} \
+--applications ${MonoApplications} --nonstop"
+
+       [ -n "$MonoApplicationsConfigDir" ] && \
+       MONO_SERVER_OPTS="${MONO_SERVER_OPTS} \
+--appconfigdir ${MonoApplicationsConfigDir}"
+
+       case "$MonoServerChannel" in
+       "tcp" )
+               MONO_SERVER_OPTS="${MONO_SERVER_OPTS} \
+--address ${MonoServerAddress} --port ${MonoServerPort}"
+               ;;
+       
+       "unix" )
+               [ -f "$UnixSocketFileName" ] && rm -f $UnixSocketFileName
+               MONO_SERVER_OPTS="${MONO_SERVER_OPTS} \
+--filename ${UnixSocketFileName}"
+               ;;
+
+       * )
+               eerror "Please set a valid value for MonoServerChannel"
+               return 1
+               ;;
+       esac
+
+       if [ ${MonoServerVersion} -eq 1 ]; then
+               modmonoserverpath=1.0/mod-mono-server.exe
+       elif [ ${MonoServerVersion} -eq 2 ]; then
+               modmonoserverpath=2.0/mod-mono-server2.exe
+       else
+               eerror "MonoServerVersion was not properly set. Check your /etc/conf.d/xsp"
+               return 1
+       fi
+
+       export MONO_SHARED_DIR=/tmp
+
+       ebegin "Starting mod-mono-server"
+
+       start-stop-daemon --quiet --start \
+               --background \
+               --make-pidfile \
+               --pidfile /var/run/aspnet/mod-mono-server.pid \
+               --chuid aspnet \
+               --exec /usr/bin/mono /usr/lib/mono/${modmonoserverpath} \
+               -- $MONO_SERVER_OPTS
+
+       eend $?
+}
+
+stop() {
+       ebegin "Stopping mod-mono-server"
+
+       start-stop-daemon -o --quiet --stop \
+               --pidfile /var/run/aspnet/mod-mono-server.pid
+
+       eend $?
+}
diff --git a/dev-dotnet/xsp/files/2.2/xsp.confd b/dev-dotnet/xsp/files/2.2/xsp.confd
new file mode 100644 (file)
index 0000000..45a79a5
--- /dev/null
@@ -0,0 +1,12 @@
+# Config file for /etc/init.d/xsp
+# $Id: xsp.confd,v 1.1 2009/01/18 17:44:04 loki_val Exp $
+
+# This is the document root; trailing slash is not necessary
+MonoServerRoot=/usr/lib/xsp/test
+
+# Port for the server to run on
+MonoServerPort=8000
+
+# If you want to host .NET 2.0 applications you have to set this to 2.
+# Otherwise, leave it unchanged
+MonoServerVersion=1
diff --git a/dev-dotnet/xsp/files/2.2/xsp.initd b/dev-dotnet/xsp/files/2.2/xsp.initd
new file mode 100644 (file)
index 0000000..0432bca
--- /dev/null
@@ -0,0 +1,38 @@
+#!/sbin/runscript
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id: xsp.initd,v 1.1 2009/01/18 17:44:04 loki_val Exp $
+
+depend() {
+       need net
+       after dotnet
+}
+
+start() {
+       ebegin "Starting xsp"
+
+       if [ ${MonoServerVersion} -eq 1 ]; then
+               xsppath=1.0/xsp.exe
+       elif [ ${MonoServerVersion} -eq 2 ]; then
+               xsppath=2.0/xsp2.exe
+       else
+               eerror "MonoServerVersion was not properly set. Check your config file"
+               return 1
+       fi
+
+       start-stop-daemon --quiet --start \
+               --background \
+               --make-pidfile \
+               --pidfile /var/run/aspnet/xsp.pid \
+               --chuid aspnet \
+               --exec /usr/bin/mono /usr/lib/mono/${xsppath} -- --root ${MonoServerRoot} --port ${MonoServerPort} --nonstop
+       eend $?
+}
+
+stop() {
+       ebegin "Stopping xsp"
+       start-stop-daemon -o --quiet --stop \
+               --pidfile /var/run/aspnet/xsp.pid
+       eend $?
+}
+
diff --git a/dev-dotnet/xsp/files/aclocal-fix.patch b/dev-dotnet/xsp/files/aclocal-fix.patch
new file mode 100644 (file)
index 0000000..49a0005
--- /dev/null
@@ -0,0 +1,13 @@
+--- Makefile_old.am    2013-07-30 09:11:50.033962122 +0400
++++ Makefile.am        2013-07-30 09:12:20.843574793 +0400
+@@ -1,10 +1,2 @@
+ SUBDIRS=build man src test tools scripts packaging lib
+ ACLOCAL_AMFLAGS += -I build/m4
+-
+-if UNITTESTS
+-SUBDIRS += unittests
+-endif
+-
+-if BUILD_DOCS
+-SUBDIRS += docs
+-endif
diff --git a/dev-dotnet/xsp/files/xsp-2.10.2-endrequest.patch b/dev-dotnet/xsp/files/xsp-2.10.2-endrequest.patch
new file mode 100644 (file)
index 0000000..ff702d3
--- /dev/null
@@ -0,0 +1,35 @@
+From d2c4a279942a4575b80618719646d0767c077e96 Mon Sep 17 00:00:00 2001
+From: Guillaume Pitel <guillaume.pitel@exensa.com>
+Date: Tue, 6 Mar 2012 17:20:24 +0100
+Subject: [PATCH] Added try/catch around EndRequest Record sending (Bug 3765
+ https://bugzilla.xamarin.com/show_bug.cgi?id=3765)
+
+---
+ src/Mono.WebServer.FastCgi/Connection.cs |   11 +++++++----
+ 1 file changed, 7 insertions(+), 4 deletions(-)
+
+diff --git a/src/Mono.WebServer.FastCgi/Connection.cs b/src/Mono.WebServer.FastCgi/Connection.cs
+index 6c70824..0e9ef64 100644
+--- a/src/Mono.WebServer.FastCgi/Connection.cs
++++ b/src/Mono.WebServer.FastCgi/Connection.cs
+@@ -319,10 +319,13 @@ public void Run ()
+               {
+                       EndRequestBody body = new EndRequestBody (appStatus,
+                               protocolStatus);
+-                      
+-                      if (IsConnected)
+-                              new Record (1, RecordType.EndRequest, requestID,
+-                                          body.GetData ()).Send (socket);
++                      try {   
++                              if (IsConnected)
++                                      new Record (1, RecordType.EndRequest, requestID,
++                                                  body.GetData ()).Send (socket);
++                      } catch (System.Net.Sockets.SocketException) {
++                      }
++                              
+                       
+                       int index = GetRequestIndex (requestID);
+                       
+-- 
+1.7.10
+
diff --git a/dev-dotnet/xsp/metadata.xml b/dev-dotnet/xsp/metadata.xml
new file mode 100644 (file)
index 0000000..c264eda
--- /dev/null
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+       <herd>dotnet</herd>
+       <longdescription lang="en">
+               XSP is a standalone web server written in C# that can be used to run
+               your ASP.NET applications.
+       </longdescription>
+</pkgmetadata>
diff --git a/dev-dotnet/xsp/xsp-2.10.2-r2.ebuild b/dev-dotnet/xsp/xsp-2.10.2-r2.ebuild
new file mode 100644 (file)
index 0000000..dcf3527
--- /dev/null
@@ -0,0 +1,51 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+inherit eutils go-mono mono user
+
+PATCHDIR="${FILESDIR}/2.2/"
+
+DESCRIPTION="XSP is a small web server that can host ASP.NET pages"
+HOMEPAGE="http://www.mono-project.com/ASP.NET"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+
+IUSE=""
+
+RDEPEND="dev-db/sqlite:3"
+DEPEND="${RDEPEND}"
+
+MAKEOPTS="${MAKEOPTS} -j1"
+
+src_prepare() {
+       # Added try/catch around EndRequest Record sending, bug #432750
+       epatch "${FILESDIR}/${PN}-2.10.2-endrequest.patch"
+}
+
+src_configure() {
+       default
+}
+
+pkg_preinst() {
+       enewgroup aspnet
+       # Give aspnet home dir of /tmp since it must create ~/.wapi
+       enewuser aspnet -1 -1 /tmp aspnet
+}
+
+src_install() {
+       mv_command="cp -ar" go-mono_src_install
+       newinitd "${PATCHDIR}"/xsp.initd xsp
+       newinitd "${PATCHDIR}"/mod-mono-server-r1.initd mod-mono-server
+       newconfd "${PATCHDIR}"/xsp.confd xsp
+       newconfd "${PATCHDIR}"/mod-mono-server.confd mod-mono-server
+
+       keepdir /var/run/aspnet
+}
+
+pkg_postinst() {
+       chown aspnet:aspnet /var/run/aspnet
+}
diff --git a/dev-dotnet/xsp/xsp-2014.11.ebuild b/dev-dotnet/xsp/xsp-2014.11.ebuild
new file mode 100644 (file)
index 0000000..c1b957b
--- /dev/null
@@ -0,0 +1,65 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+PATCHDIR="${FILESDIR}/2.2/"
+
+inherit base eutils dotnet user autotools autotools-utils
+
+DESCRIPTION="XSP is a small web server that can host ASP.NET pages"
+HOMEPAGE="http://www.mono-project.com/ASP.NET"
+SRC_URI="https://github.com/Heather/xsp/archive/2014.11.tar.gz"
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="doc test"
+
+RDEPEND="dev-db/sqlite:3"
+DEPEND="${RDEPEND}"
+
+S=${WORKDIR}/${P}
+
+src_prepare() {
+       epatch "${FILESDIR}/aclocal-fix.patch"
+
+       if [ -z "$LIBTOOL" ]; then
+               LIBTOOL=`which glibtool 2>/dev/null`
+               if [ ! -x "$LIBTOOL" ]; then
+                       LIBTOOL=`which libtool`
+               fi
+       fi
+       eaclocal -I build/m4/shamrock -I build/m4/shave $ACLOCAL_FLAGS
+       if test -z "$NO_LIBTOOLIZE"; then
+               ${LIBTOOL}ize --force --copy
+       fi
+       eautoconf
+}
+
+src_configure() {
+       myeconfargs=("--enable-maintainer-mode")
+       use test && myeconfargs+=("--with_unit_tests")
+       use doc || myeconfargs+=("--disable-docs")
+       eautomake --gnu --add-missing --force --copy #nowarn
+       autotools-utils_src_configure
+}
+
+src_compile() {
+       autotools-utils_src_compile
+}
+
+pkg_preinst() {
+       enewgroup aspnet
+       enewuser aspnet -1 -1 /tmp aspnet
+}
+
+src_install() {
+       mv_command="cp -ar" autotools-utils_src_install
+       newinitd "${PATCHDIR}"/xsp.initd xsp
+       newinitd "${PATCHDIR}"/mod-mono-server-r1.initd mod-mono-server
+       newconfd "${PATCHDIR}"/xsp.confd xsp
+       newconfd "${PATCHDIR}"/mod-mono-server.confd mod-mono-server
+
+       keepdir /var/run/aspnet
+}