Skip to content

Commit

Permalink
www-servers/resin: Version bump. Fixes bug 564528.
Browse files Browse the repository at this point in the history
Package-Manager: portage-2.2.20.1
Signed-off-by: Patrice Clement <[email protected]>
  • Loading branch information
monsieurp committed Nov 7, 2015
1 parent 66817f6 commit c5308ce
Show file tree
Hide file tree
Showing 6 changed files with 332 additions and 0 deletions.
1 change: 1 addition & 0 deletions www-servers/resin/Manifest
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
DIST resin-4.0.44-src.zip 40342346 SHA256 dc2900e03d5a328ad4801df4ea2413f5d96bc1408301fa0f74545b3061c4ddfd SHA512 bef7cc8e42522396b6041e6b38858f8f2ef92f0a753b7a86e191f62f6060810930765cb834eeb53404e08f8b9b3f2e4c4d3b632cb9b80edf929b4a41bbb3d5f8 WHIRLPOOL bec0fa955dc2c6f1b04b18eb9f68424ba05814f25b690018fdb6fbe9c424730c9f19cfcec3f93f0ff1b6ce2e998d22a435788bcd52370b7c9653ef17a4cc75fa
DIST resin-4.0.46-src.zip 40400255 SHA256 e762506c432dc12f5100903993220b7ace6ff98ce1ed2c17a53737d04f47ebcf SHA512 49f468706a3269f851a6b359d6020b01dadb312890c97208b1a66353fb82b2d95625947a472d8d3e535d0c52ec6ad3e110eb4d227014fe7a89f313ae1df6970f WHIRLPOOL a3d12e09e2596a1e705d4cd1b1870e411080ca6371411574e7830d48ec0058463944fded005e94fc929a0635403cba27d78fc379bf1f222b0e953828ae280238
35 changes: 35 additions & 0 deletions www-servers/resin/files/4.0.46/VarType.java.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
--- modules/kernel/src/com/caucho/config/reflect/VarType.java.orig 2015-08-12 21:05:11.892000000 +0000
+++ modules/kernel/src/com/caucho/config/reflect/VarType.java 2015-08-12 21:06:04.475000000 +0000
@@ -33,6 +33,7 @@
import java.lang.reflect.GenericDeclaration;
import java.lang.reflect.Type;
import java.lang.reflect.TypeVariable;
+import java.lang.reflect.AnnotatedType;
import java.util.Set;

import com.caucho.inject.Module;
@@ -188,7 +189,23 @@

return sb.toString();
}
-
+
+ public AnnotatedType[] getAnnotatedBounds() {
+ return null;
+ }
+
+ public Annotation[] getDeclaredAnnotations() {
+ return null;
+ }
+
+ public Annotation[] getAnnotations() {
+ return null;
+ }
+
+ public <T extends Annotation> T getAnnotation(Class<T> klass) {
+ return null;
+ }
+
static class GenericDeclarationImpl implements GenericDeclaration {
@Override
public TypeVariable<?>[] getTypeParameters()
59 changes: 59 additions & 0 deletions www-servers/resin/files/4.0.46/build.xml.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
--- build.xml.orig 2015-08-12 23:14:20.302000000 +0000
+++ build.xml 2015-08-12 23:14:47.909000000 +0000
@@ -12,7 +12,7 @@
<property name="eclipse.home" value="${user.home}/eclipse"/>

<target name="compile"
- depends="init, hessian, javaee, jaxstream, portlet, script, resin-kernel, quercus-dev, resin, ecmascript, cdi, webutil, conf, ext, j2ee-management, resin-eclipselink, gae, jasper">
+ depends="init, hessian, javaee, jaxstream, portlet, script, resin-kernel, quercus-dev, resin, ecmascript, cdi, webutil, conf, ext, j2ee-management, gae">
</target>

<!--
@@ -27,10 +27,6 @@
</antcall>
</target>
-->
- <target name="resin-eclipselink" depends="eclipselink">
- <copy file="modules/eclipselink/dist/resin-eclipselink.jar"
- todir="${resin.lib}"/>
- </target>

<target name="richfaces" depends="init">
<antcall target="artifact" inheritRefs="true">
@@ -92,13 +88,6 @@
</antcall>
</target>

- <target name="eclipselink" depends="init">
- <antcall target="module" inheritRefs="true">
- <param name="module.name" value="eclipselink"/>
- <param name="module.jar" value="resin-eclipselink.jar"/>
- </antcall>
- </target>
-
<!-- gae APIs for quercus testing -->
<target name="gae" depends="init">
<antcall target="module" inheritRefs="true">
@@ -437,13 +426,6 @@
</antcall>
</target>

- <target name="jasper" depends="init">
- <antcall target="module" inheritRefs="true">
- <param name="module.name" value="jasper"/>
- <param name="module.jar" value="resin-jasper.jar"/>
- </antcall>
- </target>
-
<target name="version">
<copy file="${resin.modules}/kernel/src/com/caucho/Version.tmpl"
tofile="${resin.modules}/kernel/src/com/caucho/Version.java"
@@ -903,7 +885,7 @@
<delete dir="${dist}/${dist.name}"/>
</target>

- <target name="dist" depends="dist.clean, configure, compile, update, junit, eclipselink, artifacts, resin.dist.build, dist.package, quercus.war"/>
+ <target name="dist" depends="dist.clean, configure, compile, update, junit, artifacts, resin.dist.build, dist.package, quercus.war"/>

<target name="configure" depends="init">
<copy tofile="modules/c/src/resin/Makefile.in"
16 changes: 16 additions & 0 deletions www-servers/resin/files/4.0.46/resin.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# JVM Runtime
# Using the default setting, it will determine your JVM from the system-vm
# set using java-config.
# See java-config(1) manual page for assistance in determining this value.

# You can override this value with whatever JDK you want.
# For a list of valid values for GENTOO_VM see output of
# java-config -L
#GENTOO_VM=sun-jdk-1.5

# Verbose starting and stopping? (yes/no, defaults to no)
#VERBOSE="yes"

# Select which server will be started, this is an advanced feature, please refer
# to Resin documentation.
SERVER_ID=""
37 changes: 37 additions & 0 deletions www-servers/resin/files/4.0.46/resin.init
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
#!/sbin/runscript
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$

depend() {
need net
use dns logger mysql postgresql
}

runResin() {
JAVA_HOME=$(java-config -O)
[ -n "${GENTOO_VM}" ] && JAVA_HOME=$(java-config --select-vm="${GENTOO_VM}" -O)
export JAVA_HOME

local extraArgs=
if [ "${VERBOSE}" = "yes" ]; then
extraArgs="-verbose"
fi

local msg="${1}"
shift

local cmdline="${JAVA_HOME}/bin/java -jar /usr/share/resin/lib/resin.jar -conf /etc/resin/resin.xml -server \"${SERVER_ID}\" -resin-home __RESIN_HOME__ -root-directory __RESIN_HOME__ ${extraArgs} ${@}"

ebegin "${msg}"
su - resin -c "${cmdline}"
eend $?
}

start() {
runResin "Starting Resin" "start"
}

stop() {
runResin "Stopping Resin" "shutdown"
}
184 changes: 184 additions & 0 deletions www-servers/resin/resin-4.0.46.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,184 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$

EAPI="5"

JAVA_PKG_IUSE="source"

inherit java-pkg-2 java-ant-2 eutils flag-o-matic multilib user

DESCRIPTION="A fast Servlet and JSP engine"
HOMEPAGE="http://www.caucho.com"
SRC_URI="http://www.caucho.com/download/${P}-src.zip"

LICENSE="GPL-2"
SLOT="0"
IUSE="admin doc"

KEYWORDS="~amd64 ~x86"

CDEPEND="
dev-java/jsr101:0
dev-java/mojarra:2.2
dev-java/oracle-javamail:0
dev-java/validation-api:1.0
dev-java/resin-servlet-api:3.1
dev-java/glassfish-xmlrpc-api:0
dev-java/glassfish-deployment-api:1.2"

RDEPEND=">=virtual/jre-1.6
${CDEPEND}"
DEPEND=">=virtual/jdk-1.6
app-arch/unzip
dev-libs/openssl
dev-java/ant-core:0
${CDEPEND}"

RESIN_HOME="/usr/$(get_libdir)/resin"

JAVA_ANT_REWRITE_CLASSPATH="yes"

EANT_GENTOO_CLASSPATH="
jsr101
mojarra-2.2
oracle-javamail
validation-api-1.0
glassfish-xmlrpc-api
resin-servlet-api-3.1
glassfish-deployment-api-1.2"

PATCHES=(
"${FILESDIR}"/"${PV}"/build.xml.patch
)

pkg_setup() {
java-pkg-2_pkg_setup
enewgroup resin
enewuser resin -1 /bin/bash ${RESIN_HOME} resin
}

src_prepare() {
epatch "${PATCHES[@]}"

# No bundled JARs!
rm -f "${S}/modules/ext/"*.jar || die
rm -rf "${S}/project-jars" || die

java-ant_bsfix_one "${S}/build.xml"
java-ant_bsfix_one "${S}/build-common.xml"

rm -rf lib/* || die

ln -s $(java-config --jdk-home)/lib/tools.jar || die
}

src_configure() {
append-flags -fPIC -DPIC

chmod 755 "${S}/configure" || die
econf --prefix=${RESIN_HOME} || die "econf failed"
}

src_compile() {
einfo "Building libraries..."
emake || die "make failed"

einfo "Building jars..."
eant || die "ant failed"
}

src_install() {
emake DESTDIR="${D}" install || die "Install failed"

einfo "Moving configuration to /etc ..."
dodir /etc/
mv "${D}/${RESIN_HOME}/conf" "${D}/etc/resin" || die "mv of conf failed"
dosym /etc/resin ${RESIN_HOME}/conf

einfo "Rewriting resin.xml ..."
sed -i \
-e 's,${resin.root}/doc/resin-doc,webapps/resin-doc,' \
-e 's,${resin.root}/doc/admin,webapps/admin,' \
"${D}/etc/resin/resin.xml" || die

einfo "Fixing log directory ..."
rm -rf "${D}/${RESIN_HOME}/log" || die
keepdir /var/log/resin
dosym /var/log/resin ${RESIN_HOME}/log

einfo "Installing basic documentation ..."
dodoc README "${S}"/conf/*.xml

einfo "Installing init.d script ..."
newinitd "${FILESDIR}/${PV}/resin.init" resin
newconfd "${FILESDIR}/${PV}/resin.conf" resin

sed -i -e "s,__RESIN_HOME__,${RESIN_HOME},g" "${D}/etc/init.d/resin" || die

einfo "Fixing location of jars ..."
rm -f "${S}/lib/tools.jar" || die
java-pkg_dojar "${S}"/lib/*.jar
rm -fr "${D}/${RESIN_HOME}/lib" || die
dosym /usr/share/resin/lib ${RESIN_HOME}/lib

einfo "Symlinking directories from /var/lib/resin ..."
rm -rf "${D}/${RESIN_HOME}/resin-data" || die
rm -rf "${D}/${RESIN_HOME}/watchdog-data" || die
dodir /var/lib/resin/webapps
keepdir /var/lib/resin/hosts
keepdir /var/lib/resin/resin-data
keepdir /var/lib/resin/watchdog-data
mv "${D}"/${RESIN_HOME}/webapps/* "${D}/var/lib/resin/webapps" || \
die "mv of webapps failed"
rm -rf "${D}/${RESIN_HOME}/webapps" || die
dosym /var/lib/resin/webapps ${RESIN_HOME}/webapps
dosym /var/lib/resin/hosts ${RESIN_HOME}/hosts
dosym /var/lib/resin/resin-data ${RESIN_HOME}/resin-data
dosym /var/lib/resin/watchdog-data ${RESIN_HOME}/watchdog-data

dosym \
"$(java-pkg_getjar resin-servlet-api-3.1 resin-servlet-api.jar)" \
"${JAVA_PKG_JARDEST}/resin-servlet-api.jar"

use admin && {
einfo "Installing administration app ..."
cp -a "${S}/doc/admin" "${D}/var/lib/resin/webapps/" || die
}
use doc && {
einfo "Installing documentation app ..."
cp -a "${S}/doc/resin-doc" "${D}/var/lib/resin/webapps/" || die
}

use source && {
einfo "Installing sources ..."
java-pkg_dosrc "${S}"/modules/*/src/* > /dev/null
}

einfo "Removing stale directories ..."
rm -fr "${D}/${RESIN_HOME}/bin" || die
rm -fr "${D}/${RESIN_HOME}/doc" || die
rm -fr "${D}/${RESIN_HOME}/keys" || die
rm -fr "${D}/${RESIN_HOME}/licenses" || die
rm -fr "${D}/etc/resin/"*.orig || die

einfo "Fixing ownerships and permissions ..."
fowners -R 0:root /
fowners -R resin:resin /etc/resin
fowners -R resin:resin /var/lib/resin
fowners -R resin:resin /var/log/resin

fperms 644 /etc/conf.d/resin
fperms 755 /etc/init.d/resin
fperms 750 /var/lib/resin
fperms 750 /etc/resin
}

pkg_postinst() {
elog
elog " User and group 'resin' have been added."
elog
elog " By default, Resin runs on port 8080. You can change this"
elog " value by editing /etc/resin/resin.properties."
elog
}

0 comments on commit c5308ce

Please sign in to comment.