diff options
Diffstat (limited to 'www-servers/resin')
-rw-r--r-- | www-servers/resin/Manifest | 6 | ||||
-rw-r--r-- | www-servers/resin/files/4.0.13/resin.conf | 16 | ||||
-rw-r--r-- | www-servers/resin/files/4.0.13/resin.init | 37 | ||||
-rw-r--r-- | www-servers/resin/files/4.0.14/resin.conf | 16 | ||||
-rw-r--r-- | www-servers/resin/files/4.0.14/resin.init | 37 | ||||
-rw-r--r-- | www-servers/resin/files/4.0.15/resin.conf | 16 | ||||
-rw-r--r-- | www-servers/resin/files/4.0.15/resin.init | 37 | ||||
-rw-r--r-- | www-servers/resin/files/4.0.22/resin.conf | 16 | ||||
-rw-r--r-- | www-servers/resin/files/4.0.22/resin.init | 37 | ||||
-rw-r--r-- | www-servers/resin/files/4.0.25/resin.conf | 16 | ||||
-rw-r--r-- | www-servers/resin/files/4.0.25/resin.init | 37 | ||||
-rw-r--r-- | www-servers/resin/files/4.0.26/resin.conf | 16 | ||||
-rw-r--r-- | www-servers/resin/files/4.0.26/resin.init | 37 | ||||
-rw-r--r-- | www-servers/resin/metadata.xml | 8 | ||||
-rw-r--r-- | www-servers/resin/resin-4.0.22.ebuild | 186 | ||||
-rw-r--r-- | www-servers/resin/resin-4.0.25.ebuild | 186 | ||||
-rw-r--r-- | www-servers/resin/resin-4.0.26.ebuild | 182 |
17 files changed, 886 insertions, 0 deletions
diff --git a/www-servers/resin/Manifest b/www-servers/resin/Manifest new file mode 100644 index 000000000000..5b8c9f1585ea --- /dev/null +++ b/www-servers/resin/Manifest @@ -0,0 +1,6 @@ +DIST resin-4.0.22-src.zip 17540820 SHA256 5b79a28e82849f97fc6bbf670306e29c19159b061b370f7eabc483f56a54053a +DIST resin-4.0.25-src.zip 17971688 SHA256 e30ace9c2c9ececb1769402ea7a6cd2fe8ea73f9f38009da1b4d2ba23ab6972a +DIST resin-4.0.26-src.zip 17879008 SHA256 0f7bbea8bd4803d499e1d212a49ac8672500ede80194c4daa12c980ad405e34e +DIST resin-gentoo-patches-4.0.22-r1.tar.bz2 2625 SHA256 4f29cabe826f535d9b2d324d7f70b9983410cd4b8c250a166fa1e74f1ab3d828 +DIST resin-gentoo-patches-4.0.25-r1.tar.bz2 3208 SHA256 bbdcd0ba71670869171356ff15dd13461aac667e75b6998019864d75876132d2 +DIST resin-gentoo-patches-4.0.26.tar.bz2 3826 SHA256 adff1fb68e38af68add2e16e3832406a105e14532ee022ad315a955d6d6f4f31 diff --git a/www-servers/resin/files/4.0.13/resin.conf b/www-servers/resin/files/4.0.13/resin.conf new file mode 100644 index 000000000000..a48840b5e9f2 --- /dev/null +++ b/www-servers/resin/files/4.0.13/resin.conf @@ -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="" diff --git a/www-servers/resin/files/4.0.13/resin.init b/www-servers/resin/files/4.0.13/resin.init new file mode 100644 index 000000000000..d36037f4d041 --- /dev/null +++ b/www-servers/resin/files/4.0.13/resin.init @@ -0,0 +1,37 @@ +#!/sbin/runscript +# Copyright 1999-2010 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" +} diff --git a/www-servers/resin/files/4.0.14/resin.conf b/www-servers/resin/files/4.0.14/resin.conf new file mode 100644 index 000000000000..a48840b5e9f2 --- /dev/null +++ b/www-servers/resin/files/4.0.14/resin.conf @@ -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="" diff --git a/www-servers/resin/files/4.0.14/resin.init b/www-servers/resin/files/4.0.14/resin.init new file mode 100644 index 000000000000..e772ec53bc5d --- /dev/null +++ b/www-servers/resin/files/4.0.14/resin.init @@ -0,0 +1,37 @@ +#!/sbin/runscript +# Copyright 1999-2011 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" +} diff --git a/www-servers/resin/files/4.0.15/resin.conf b/www-servers/resin/files/4.0.15/resin.conf new file mode 100644 index 000000000000..a48840b5e9f2 --- /dev/null +++ b/www-servers/resin/files/4.0.15/resin.conf @@ -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="" diff --git a/www-servers/resin/files/4.0.15/resin.init b/www-servers/resin/files/4.0.15/resin.init new file mode 100644 index 000000000000..e772ec53bc5d --- /dev/null +++ b/www-servers/resin/files/4.0.15/resin.init @@ -0,0 +1,37 @@ +#!/sbin/runscript +# Copyright 1999-2011 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" +} diff --git a/www-servers/resin/files/4.0.22/resin.conf b/www-servers/resin/files/4.0.22/resin.conf new file mode 100644 index 000000000000..a48840b5e9f2 --- /dev/null +++ b/www-servers/resin/files/4.0.22/resin.conf @@ -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="" diff --git a/www-servers/resin/files/4.0.22/resin.init b/www-servers/resin/files/4.0.22/resin.init new file mode 100644 index 000000000000..e772ec53bc5d --- /dev/null +++ b/www-servers/resin/files/4.0.22/resin.init @@ -0,0 +1,37 @@ +#!/sbin/runscript +# Copyright 1999-2011 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" +} diff --git a/www-servers/resin/files/4.0.25/resin.conf b/www-servers/resin/files/4.0.25/resin.conf new file mode 100644 index 000000000000..a48840b5e9f2 --- /dev/null +++ b/www-servers/resin/files/4.0.25/resin.conf @@ -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="" diff --git a/www-servers/resin/files/4.0.25/resin.init b/www-servers/resin/files/4.0.25/resin.init new file mode 100644 index 000000000000..6103369d40e3 --- /dev/null +++ b/www-servers/resin/files/4.0.25/resin.init @@ -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" +} diff --git a/www-servers/resin/files/4.0.26/resin.conf b/www-servers/resin/files/4.0.26/resin.conf new file mode 100644 index 000000000000..a48840b5e9f2 --- /dev/null +++ b/www-servers/resin/files/4.0.26/resin.conf @@ -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="" diff --git a/www-servers/resin/files/4.0.26/resin.init b/www-servers/resin/files/4.0.26/resin.init new file mode 100644 index 000000000000..6103369d40e3 --- /dev/null +++ b/www-servers/resin/files/4.0.26/resin.init @@ -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" +} diff --git a/www-servers/resin/metadata.xml b/www-servers/resin/metadata.xml new file mode 100644 index 000000000000..3447822a6fe9 --- /dev/null +++ b/www-servers/resin/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>java</herd> + <use> + <flag name='admin'>Enable Resin admin webapp</flag> + </use> +</pkgmetadata> diff --git a/www-servers/resin/resin-4.0.22.ebuild b/www-servers/resin/resin-4.0.22.ebuild new file mode 100644 index 000000000000..136621ccf201 --- /dev/null +++ b/www-servers/resin/resin-4.0.22.ebuild @@ -0,0 +1,186 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="2" + +JAVA_PKG_IUSE="source" + +inherit java-pkg-2 java-ant-2 eutils flag-o-matic multilib autotools user + +DESCRIPTION="A fast Servlet and JSP engine" +HOMEPAGE="http://www.caucho.com" +SRC_URI="http://www.caucho.com/download/${P}-src.zip + mirror://gentoo/resin-gentoo-patches-${PV}-r1.tar.bz2" +LICENSE="GPL-2" +SLOT="0" +IUSE="admin doc" + +KEYWORDS="amd64 x86" + +COMMON_DEP="~dev-java/resin-servlet-api-${PV} + dev-java/glassfish-deployment-api:1.2 + java-virtuals/javamail + dev-java/jsr101 + dev-java/mojarra:1.2 + dev-java/validation-api:1.0" + +RDEPEND=">=virtual/jdk-1.5 + ${COMMON_DEP}" +DEPEND=">=virtual/jdk-1.5 + app-arch/unzip + dev-java/ant-core + dev-libs/openssl + ${COMMON_DEP}" + +RESIN_HOME="/usr/$(get_libdir)/resin" + +# Rewrites build.xml in documentation +JAVA_PKG_BSFIX="off" + +pkg_setup() { + java-pkg-2_pkg_setup + enewgroup resin + enewuser resin -1 /bin/bash ${RESIN_HOME} resin +} + +src_prepare() { + for i in "${WORKDIR}"/${PV}/resin-${PV}-*; do + epatch "${i}" + done; + + # Respect LDFLAGS: + sed -i -e 's/-o/$(LDFLAGS) -o/' modules/c/src/resin_os/Makefile.in || die + + # 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" + + mkdir -p "${S}/m4" || die + sed -i -e 's,-O2,,g' configure.ac || die + eautoreconf + + # Symlink our libraries: + mkdir -p "${S}/gentoo-deps" || die + cd "${S}/gentoo-deps/" + java-pkg_jar-from --virtual javamail + java-pkg_jar-from glassfish-deployment-api-1.2 + java-pkg_jar-from resin-servlet-api-3.0 resin-servlet-api.jar + java-pkg_jar-from mojarra-1.2 + java-pkg_jar-from jsr101 + java-pkg_jar-from validation-api-1.0 + 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" + + 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" + + einfo "Fixing location of jars ..." + rm -f "${S}/lib/tools.jar" || die + java-pkg_dojar "${S}"/lib/*.jar + rm -fr "${D}/${RESIN_HOME}/lib" + dosym /usr/share/resin/lib ${RESIN_HOME}/lib + + einfo "Symlinking directories from /var/lib/resin ..." + rm -rf "${D}/${RESIN_HOME}/resin-data" + rm -rf "${D}/${RESIN_HOME}/watchdog-data" + 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" + 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.0 resin-servlet-api.jar)" \ + "${JAVA_PKG_JARDEST}/resin-servlet-api.jar" || die + + 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" + rm -fr "${D}/${RESIN_HOME}/doc" + rm -fr "${D}/${RESIN_HOME}/keys" + rm -fr "${D}/${RESIN_HOME}/licenses" + rm -fr "${D}/etc/resin/"*.orig + + 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.xml." + elog +} diff --git a/www-servers/resin/resin-4.0.25.ebuild b/www-servers/resin/resin-4.0.25.ebuild new file mode 100644 index 000000000000..c3173a250f91 --- /dev/null +++ b/www-servers/resin/resin-4.0.25.ebuild @@ -0,0 +1,186 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="4" + +JAVA_PKG_IUSE="source" + +inherit java-pkg-2 java-ant-2 eutils flag-o-matic multilib autotools user + +DESCRIPTION="A fast Servlet and JSP engine" +HOMEPAGE="http://www.caucho.com" +SRC_URI="http://www.caucho.com/download/${P}-src.zip + mirror://gentoo/resin-gentoo-patches-${PV}-r1.tar.bz2" +LICENSE="GPL-2" +SLOT="0" +IUSE="admin doc" + +KEYWORDS="~amd64 ~x86" + +COMMON_DEP="~dev-java/resin-servlet-api-${PV} + dev-java/glassfish-deployment-api:1.2 + java-virtuals/javamail + dev-java/jsr101 + dev-java/mojarra:1.2 + dev-java/validation-api:1.0" + +RDEPEND=">=virtual/jdk-1.5 + ${COMMON_DEP}" +DEPEND=">=virtual/jdk-1.5 + app-arch/unzip + dev-java/ant-core + dev-libs/openssl + ${COMMON_DEP}" + +RESIN_HOME="/usr/$(get_libdir)/resin" + +# Rewrites build.xml in documentation +JAVA_PKG_BSFIX="off" + +pkg_setup() { + java-pkg-2_pkg_setup + enewgroup resin + enewuser resin -1 /bin/bash ${RESIN_HOME} resin +} + +src_prepare() { + for i in "${WORKDIR}"/${PV}/resin-${PV}-*; do + epatch "${i}" + done; + + # Respect LDFLAGS: + sed -i -e 's/-o/$(LDFLAGS) -o/' modules/c/src/resin_os/Makefile.in || die + + # 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" + + mkdir -p "${S}/m4" || die + sed -i -e 's,-O2,,g' configure.ac || die + eautoreconf + + # Symlink our libraries: + mkdir -p "${S}/gentoo-deps" || die + cd "${S}/gentoo-deps/" || die + java-pkg_jar-from --virtual javamail + java-pkg_jar-from glassfish-deployment-api-1.2 + java-pkg_jar-from resin-servlet-api-3.0 resin-servlet-api.jar + java-pkg_jar-from mojarra-1.2 + java-pkg_jar-from jsr101 + java-pkg_jar-from validation-api-1.0 + 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.0 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.xml." + elog +} diff --git a/www-servers/resin/resin-4.0.26.ebuild b/www-servers/resin/resin-4.0.26.ebuild new file mode 100644 index 000000000000..9a304ba6c79c --- /dev/null +++ b/www-servers/resin/resin-4.0.26.ebuild @@ -0,0 +1,182 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="4" + +JAVA_PKG_IUSE="source" + +inherit java-pkg-2 java-ant-2 eutils flag-o-matic multilib autotools user + +DESCRIPTION="A fast Servlet and JSP engine" +HOMEPAGE="http://www.caucho.com" +SRC_URI="http://www.caucho.com/download/${P}-src.zip + mirror://gentoo/resin-gentoo-patches-${PV}.tar.bz2" +LICENSE="GPL-2" +SLOT="0" +IUSE="admin doc" + +KEYWORDS="~amd64 ~x86" + +COMMON_DEP="~dev-java/resin-servlet-api-${PV} + dev-java/glassfish-deployment-api:1.2 + java-virtuals/javamail + dev-java/jsr101 + dev-java/mojarra:1.2 + dev-java/validation-api:1.0" + +RDEPEND=">=virtual/jdk-1.5 + ${COMMON_DEP}" +DEPEND=">=virtual/jdk-1.5 + app-arch/unzip + dev-java/ant-core + dev-libs/openssl + ${COMMON_DEP}" + +RESIN_HOME="/usr/$(get_libdir)/resin" + +# Rewrites build.xml in documentation +JAVA_PKG_BSFIX="off" + +pkg_setup() { + java-pkg-2_pkg_setup + enewgroup resin + enewuser resin -1 /bin/bash ${RESIN_HOME} resin +} + +src_prepare() { + for i in "${WORKDIR}"/${PV}/resin-${PV}-*; do + epatch "${i}" + done; + + # 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" + + mkdir -p "${S}/m4" || die + eautoreconf + + # Symlink our libraries: + mkdir -p "${S}/gentoo-deps" || die + cd "${S}/gentoo-deps/" || die + java-pkg_jar-from --virtual javamail + java-pkg_jar-from glassfish-deployment-api-1.2 + java-pkg_jar-from resin-servlet-api-3.0 resin-servlet-api.jar + java-pkg_jar-from mojarra-1.2 + java-pkg_jar-from jsr101 + java-pkg_jar-from validation-api-1.0 + 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.0 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.xml." + elog +} |