# Copyright 1999-2005 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ inherit eutils MY_P="${P}-src" DESCRIPTION="An open source, standards-compliant, J2EE-based application server implemented in 100% Pure Java." SRC_URI="mirror://sourceforge/jboss/${MY_P}.tar.bz2" RESTRICT="nomirror" HOMEPAGE="http://www.jboss.org" LICENSE="LGPL-2" IUSE="" SLOT="0" KEYWORDS="amd64 ppc ppc64 ~sparc x86" RDEPEND=">=virtual/jdk-1.3" DEPEND="${RDEPEND} app-text/sgml-common dev-java/commons-collections dev-java/commons-logging dev-java/xdoclet >=dev-java/sun-j2ee-1.3.1 dev-java/ant" INSTALL_DIR=/usr/share/jboss S=${WORKDIR}/${MY_P} src_compile() { [ -n ${JDK_HOME} ] || JDK_HOME=$(java-config --jdk-home) export JAVA_HOME=${JDK_HOME} # # Need some classpath fixups before the build will succeed... # CLASSPATH=${CLASSPATH}:`java-config -p commons-collections,commons-logging,xdoclet`:/opt/sun-j2ee-1.3.1/lib/j2ee.jar cd build # For more options on the "groups" parameter, see build/build.xml sh build.sh -Dgroups=all || die # sh build.sh || die } src_install() { dodir ${INSTALL_DIR} dodir ${INSTALL_DIR}/bin for f in run.sh shutdown.sh run.jar shutdown.jar; do cp build/output/${P}/bin/${f} ${D}/${INSTALL_DIR}/bin || die "failed" done exeinto /etc/init.d doexe ${FILESDIR}/${PV}/init.d/jboss dodir /etc/conf.d cp ${FILESDIR}/${PV}/conf.d/jboss ${D}/etc/conf.d dodir /etc/env.d cp ${FILESDIR}/${PV}/env.d/50jboss ${D}/etc/env.d sed "s#@JBOSSPREFIX@#${INSTALL_DIR}#" \ <${FILESDIR}/${PV}/env.d/50jboss \ >${D}/etc/env.d/50jboss # see NEWS.Gentoo # echo 'CONFIG_PROTECT="/var/lib/jboss"' >>${D}/etc/env.d/50jboss for i in build/output/${P}/server \ build/output/${P}/lib \ build/output/${P}/client do cp -pPR $i ${D}/${INSTALL_DIR}/ || die "failed" done dodir /var/lib/jboss mv ${D}/${INSTALL_DIR}/server/{all,default,minimal} ${D}/var/lib/jboss for server in all default minimal; do cp ${FILESDIR}/${PV}/log4j.xml ${D}/var/lib/jboss/${server}/conf/ || die "failed" done rmdir ${D}/${INSTALL_DIR}/server local classpath classpath=$(find ${D}/${INSTALL_DIR}/client -type f -name \*.jar |sed "s,${D}/,,g") classpath=$(echo ${classpath}) cat >${D}/usr/share/jboss/package.env </dev/null || true } pkg_postinst() { without_error userdel jboss without_error groupdel jboss if ! enewgroup jboss || ! enewuser jboss -1 /bin/sh /dev/null jboss; then die "Unable to add jboss user and jboss group." fi for dir in /var/log/jboss /var/tmp/jboss /var/cache/jboss /var/lib/jboss; do chown -R jboss:jboss ${dir} chmod o-rwx ${dir} done install-catalog --add /etc/sgml/jboss.cat /usr/share/sgml/jboss/catalog } pkg_prerm() { if [ -e /etc/sgml/jboss.cat ]; then install-catalog --remove /etc/sgml/jboss.cat /usr/share/sgml/jboss/catalog fi }