public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Miroslav Šulc" <fordfrog@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: www-servers/tomcat/, www-servers/tomcat/files/
Date: Thu,  4 Feb 2021 10:08:02 +0000 (UTC)	[thread overview]
Message-ID: <1612433268.71b2ce1d92c9c9001cfff8c73d1d48df0a1fcf9e.fordfrog@gentoo> (raw)

commit:     71b2ce1d92c9c9001cfff8c73d1d48df0a1fcf9e
Author:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
AuthorDate: Thu Feb  4 10:07:48 2021 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Thu Feb  4 10:07:48 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=71b2ce1d

www-servers/tomcat: bump to 9.0.43

Package-Manager: Portage-3.0.14, Repoman-3.0.2
Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>

 www-servers/tomcat/Manifest                        |   1 +
 .../files/tomcat-9.0.43-insufficient-ecj.patch     |  32 ++++
 www-servers/tomcat/tomcat-9.0.43.ebuild            | 187 +++++++++++++++++++++
 3 files changed, 220 insertions(+)

diff --git a/www-servers/tomcat/Manifest b/www-servers/tomcat/Manifest
index 9cf6e8133dd..445c595920a 100644
--- a/www-servers/tomcat/Manifest
+++ b/www-servers/tomcat/Manifest
@@ -2,5 +2,6 @@ DIST apache-tomcat-7.0.107-src.tar.gz 5312698 BLAKE2B 1f2712ddce6aa604692aaf6a6c
 DIST apache-tomcat-8.5.61-src.tar.gz 5840559 BLAKE2B 18e1505b6b7d8e1a024d9f834d33ef105a16e6fc1f9e80abd3e6e88b2326597b9973e13c2ebc030a1db4a2d4dc5572d195b9f61db6cb7bf51e97cbfaa121678a SHA512 fd6bb5926b5e7cf44f359c93dadc4edd87fa5f2e26fb0fb3a9bc0a5c89ae4d844d66872055e1b441392cf03d7690aca3429b66afd8334319784f089f821d8c22
 DIST apache-tomcat-8.5.63-src.tar.gz 5853051 BLAKE2B d007d9922d54578bdebcbbaec3e7c0ffcafdce913e52fdd93d5c174c9d1304980b5eb7f126e957c5975a59dfb126857dcc87ef3ca5e479e44cd7910b6183e469 SHA512 d78a140117844675239e834a0890641c0ef0d6fc3c89eb4512536fece2c128f088edfdea15f79ba7a31e0478431f155230f8f60a57bfea0aed191298a95310c4
 DIST apache-tomcat-9.0.41-src.tar.gz 6022059 BLAKE2B 6e97390aec956c16f271e57a2fa8805b6f49f593434f0dff8d82e14bc9abc199b00a7523dbb8da335a7ffa9dfee6790430c30f8b0ee90bcd133694c8da42197f SHA512 094e7cbd2519a4b812a2ca865f92802ece3385a20826c5e29b5f7cda8b9265d01ede6f598999f8aa2f1b04bcaca2e67e3f0132781b3f22007356df49ab6b1838
+DIST apache-tomcat-9.0.43-src.tar.gz 6042010 BLAKE2B 78c0e7d711dd826ba93b12db6a96929ddeeb0df189a12e907c51f02baa08d84757915b8744b5ebd027892ff2823b955d7b1c3c749ab54b588686dfd8d3157640 SHA512 8c23f8a371b3ffbc1ab4d5f24be08ecf2c9e6ba466ef36ef97e075bd0f12b1ffc93f63b9ff1def9953b3f791319c7c355a76e7a54061a21d25be37a5dc22da26
 DIST biz.aQute.bnd-5.1.1.jar 16088761 BLAKE2B 59906cc39ea27ef20cbf82de1ba78096f34dc417da6dc5c28e21f6e92c0625efecf14cec6c5faf0ab17551c31a6c87a24614c2ac75ac902cfea30199ecc0d39f SHA512 8092b083e7b86e75bf27233964763b88bee74d8ae141c85e387c1cc8bd0cbf3a54be27afea29931fb3ae950700a515fd4a28cfe8e7f26cbaaec506aa06357a37
 DIST biz.aQute.bndlib-5.1.1.jar 3652944 BLAKE2B dad9f9835fb407a36e0eae4b65fa2fda147e06ab3f3211a2ed2f1631aeccd6d14d198c325793cb1ce9a57b719a836db230d0452715744ba5a4a6c2983c17916b SHA512 d7da056ba541ae0862159bf5e38e1a5351b2ab5388c88733b46601c2d7dab8970f16af00df186a6cb67fbe81ef53f2c8402db9d28a8c6819dadf60a1df40879b

diff --git a/www-servers/tomcat/files/tomcat-9.0.43-insufficient-ecj.patch b/www-servers/tomcat/files/tomcat-9.0.43-insufficient-ecj.patch
new file mode 100644
index 00000000000..49276c775be
--- /dev/null
+++ b/www-servers/tomcat/files/tomcat-9.0.43-insufficient-ecj.patch
@@ -0,0 +1,32 @@
+diff --git a/java/org/apache/jasper/compiler/JDTCompiler.java b/java/org/apache/jasper/compiler/JDTCompiler.java
+index ebc00f6..df22856 100644
+--- a/java/org/apache/jasper/compiler/JDTCompiler.java
++++ b/java/org/apache/jasper/compiler/JDTCompiler.java
+@@ -306,9 +306,9 @@ public class JDTCompiler extends org.apache.jasper.compiler.Compiler {
+             } else if(opt.equals("13")) {
+                 settings.put(CompilerOptions.OPTION_Source, CompilerOptions.VERSION_13);
+             } else if(opt.equals("14")) {
+-                settings.put(CompilerOptions.OPTION_Source, CompilerOptions.VERSION_14);
++                settings.put(CompilerOptions.OPTION_Source, "14");
+             } else if(opt.equals("15")) {
+-                settings.put(CompilerOptions.OPTION_Source, CompilerOptions.VERSION_15);
++                settings.put(CompilerOptions.OPTION_Source, "15");
+             } else if(opt.equals("16")) {
+                 // Constant not available in latest ECJ version shipped with
+                 // Tomcat. May be supported in a snapshot build.
+@@ -364,11 +364,11 @@ public class JDTCompiler extends org.apache.jasper.compiler.Compiler {
+                 settings.put(CompilerOptions.OPTION_TargetPlatform, CompilerOptions.VERSION_13);
+                 settings.put(CompilerOptions.OPTION_Compliance, CompilerOptions.VERSION_13);
+             } else if(opt.equals("14")) {
+-                settings.put(CompilerOptions.OPTION_TargetPlatform, CompilerOptions.VERSION_14);
+-                settings.put(CompilerOptions.OPTION_Compliance, CompilerOptions.VERSION_14);
++                settings.put(CompilerOptions.OPTION_TargetPlatform, "14");
++                settings.put(CompilerOptions.OPTION_Compliance, "14");
+             } else if(opt.equals("15")) {
+-                settings.put(CompilerOptions.OPTION_TargetPlatform, CompilerOptions.VERSION_15);
+-                settings.put(CompilerOptions.OPTION_Compliance, CompilerOptions.VERSION_15);
++                settings.put(CompilerOptions.OPTION_TargetPlatform, "15");
++                settings.put(CompilerOptions.OPTION_Compliance, "15");
+             } else if(opt.equals("16")) {
+                 // Constant not available in latest ECJ version shipped with
+                 // Tomcat. May be supported in a snapshot build.

diff --git a/www-servers/tomcat/tomcat-9.0.43.ebuild b/www-servers/tomcat/tomcat-9.0.43.ebuild
new file mode 100644
index 00000000000..e116176e1ca
--- /dev/null
+++ b/www-servers/tomcat/tomcat-9.0.43.ebuild
@@ -0,0 +1,187 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+JAVA_PKG_IUSE="doc source test"
+
+inherit eutils java-pkg-2 java-ant-2 prefix
+
+MY_P="apache-${PN}-${PV}-src"
+
+# Currently we bundle binary versions of bnd.jar and bndlib.jar
+# See bugs #203080 and #676116
+BND_VERSION="5.1.1"
+BND="biz.aQute.bnd-${BND_VERSION}.jar"
+BNDLIB="biz.aQute.bndlib-${BND_VERSION}.jar"
+
+DESCRIPTION="Tomcat Servlet-4.0/JSP-2.3/EL-3.0/WebSocket-1.1/JASPIC-1.1 Container"
+HOMEPAGE="https://tomcat.apache.org/"
+SRC_URI="mirror://apache/${PN}/tomcat-9/v${PV}/src/${MY_P}.tar.gz
+	https://repo.maven.apache.org/maven2/biz/aQute/bnd/biz.aQute.bnd/${BND_VERSION}/${BND}
+	https://repo.maven.apache.org/maven2/biz/aQute/bnd/biz.aQute.bndlib/${BND_VERSION}/${BNDLIB}"
+
+LICENSE="Apache-2.0"
+SLOT="9"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~x86-solaris"
+IUSE="extra-webapps"
+
+RESTRICT="test" # can we run them on a production system?
+
+ECJ_SLOT="4.15"
+SAPI_SLOT="4.0"
+
+COMMON_DEP="dev-java/eclipse-ecj:${ECJ_SLOT}
+	dev-java/glassfish-xmlrpc-api:0
+	~dev-java/tomcat-servlet-api-${PV}:${SAPI_SLOT}
+	dev-java/wsdl4j:0"
+RDEPEND="${COMMON_DEP}
+	acct-group/tomcat
+	acct-user/tomcat
+	virtual/jre"
+DEPEND="${COMMON_DEP}
+	app-admin/pwgen
+	>=dev-java/ant-core-1.9.13
+	virtual/jdk:1.8
+	test? (
+		>=dev-java/ant-junit-1.9:0
+		dev-java/easymock:3.2
+	)"
+
+S=${WORKDIR}/${MY_P}
+
+PATCHES=(
+	"${FILESDIR}/${P}-insufficient-ecj.patch"
+)
+
+BND_HOME="${S}/tomcat-build-libs/bnd"
+BNDLIB_HOME="${S}/tomcat-build-libs/bndlib"
+BND_JAR="${BND_HOME}/${BND}"
+BNDLIB_JAR="${BNDLIB_HOME}/${BND_LIB}"
+
+src_unpack() {
+	unpack ${MY_P}.tar.gz
+
+	mkdir -p "${BND_HOME}" "${BNDLIB_HOME}" || die "Failed to create dir"
+	ln -s "${DISTDIR}/${BND}" "${BND_HOME}/" || die "Failed to symlink bnd-*.jar"
+	ln -s "${DISTDIR}/${BND}" "${BNDLIB_HOME}/" || die "Failed to symlink bndlib-*.jar"
+}
+
+src_prepare() {
+	default
+
+	find -name '*.jar' -type f -delete -print || die
+
+	# Remove bundled servlet-api
+	rm -rv java/javax/{el,servlet} || die
+
+	eapply "${FILESDIR}/${PN}-9.0.40-build.xml.patch"
+
+	# For use of catalina.sh in netbeans
+	sed -i -e "/^# ----- Execute The Requested Command/ a\
+		CLASSPATH=\`java-config --with-dependencies --classpath ${PN}-${SLOT}\`" \
+		bin/catalina.sh || die
+
+	java-pkg-2_src_prepare
+}
+
+JAVA_ANT_REWRITE_CLASSPATH="true"
+
+EANT_BUILD_TARGET="deploy"
+EANT_GENTOO_CLASSPATH="eclipse-ecj-${ECJ_SLOT},tomcat-servlet-api-${SAPI_SLOT},wsdl4j"
+EANT_TEST_GENTOO_CLASSPATH="easymock-3.2"
+EANT_GENTOO_CLASSPATH_EXTRA="${S}/output/classes"
+EANT_NEEDS_TOOLS="true"
+EANT_EXTRA_ARGS="-Dversion=${PV}-gentoo -Dversion.number=${PV} -Dcompile.debug=false -Dbnd.jar=${BND_JAR} -Dbndlib.jar=${BNDLIB_JAR}"
+
+# revisions of the scripts
+IM_REV="-r2"
+INIT_REV="-r1"
+
+src_configure() {
+	java-ant-2_src_configure
+
+	eapply "${FILESDIR}/${PN}-9.0.37-fix-build-rewrite.patch"
+}
+
+src_compile() {
+	EANT_GENTOO_CLASSPATH_EXTRA+=":$(java-pkg_getjar --build-only ant-core ant.jar):$(java-pkg_getjars --build-only glassfish-xmlrpc-api)"
+	java-pkg-2_src_compile
+}
+
+src_test() {
+	java-pkg-2_src_test
+}
+
+src_install() {
+	local dest="/usr/share/${PN}-${SLOT}"
+
+	java-pkg_jarinto "${dest}"/bin
+	java-pkg_dojar output/build/bin/*.jar
+	exeinto "${dest}"/bin
+	doexe output/build/bin/*.sh
+
+	java-pkg_jarinto "${dest}"/lib
+	java-pkg_dojar output/build/lib/*.jar
+
+	dodoc RELEASE-NOTES RUNNING.txt
+	use doc && java-pkg_dojavadoc output/dist/webapps/docs/api
+	use source && java-pkg_dosrc java/*
+
+	### Webapps ###
+
+	# add missing docBase
+	local apps="host-manager manager"
+	for app in ${apps}; do
+		sed -i -e "s|=\"true\" >|=\"true\" docBase=\"\$\{catalina.home\}/webapps/${app}\" >|" \
+			output/build/webapps/${app}/META-INF/context.xml || die
+	done
+
+	insinto "${dest}"/webapps
+	doins -r output/build/webapps/{host-manager,manager,ROOT}
+	use extra-webapps && doins -r output/build/webapps/{docs,examples}
+
+	### Config ###
+
+	# create "logs" directory in $CATALINA_BASE
+	# and set correct perms, see #458890
+	dodir "${dest}"/logs
+	fperms 0750 "${dest}"/logs
+
+	# replace the default pw with a random one, see #92281
+	local randpw="$(pwgen -s -B 15 1)"
+	sed -i -e "s|SHUTDOWN|${randpw}|" output/build/conf/server.xml || die
+
+	# prepend gentoo.classpath to common.loader, see #453212
+	sed -i -e 's/^common\.loader=/\0${gentoo.classpath},/' output/build/conf/catalina.properties || die
+
+	insinto "${dest}"
+	doins -r output/build/conf
+
+	### rc ###
+
+	cp "${FILESDIR}"/tomcat{.conf,${INIT_REV}.init,-instance-manager${IM_REV}.bash} "${T}" || die
+	eprefixify "${T}"/tomcat{.conf,${INIT_REV}.init,-instance-manager${IM_REV}.bash}
+	sed -i -e "s|@SLOT@|${SLOT}|g" "${T}"/tomcat{.conf,${INIT_REV}.init,-instance-manager${IM_REV}.bash} || die
+
+	insinto "${dest}"/gentoo
+	doins "${T}"/tomcat.conf
+	exeinto "${dest}"/gentoo
+	newexe "${T}"/tomcat${INIT_REV}.init tomcat.init
+	newexe "${T}"/tomcat-instance-manager${IM_REV}.bash tomcat-instance-manager.bash
+}
+
+pkg_postinst() {
+	elog "New ebuilds of Tomcat support running multiple instances. If you used prior version"
+	elog "of Tomcat (<7.0.32), you have to migrate your existing instance to work with new Tomcat."
+	elog "You can find more information at https://wiki.gentoo.org/wiki/Apache_Tomcat"
+
+	elog "To manage Tomcat instances, run:"
+	elog "  ${EPREFIX}/usr/share/${PN}-${SLOT}/gentoo/tomcat-instance-manager.bash --help"
+
+	ewarn "tomcat-dbcp.jar is not built at this time. Please fetch jar"
+	ewarn "from upstream binary if you need it. Gentoo Bug # 144276"
+
+	einfo "Please read https://wiki.gentoo.org/wiki/Apache_Tomcat and"
+	einfo "https://wiki.gentoo.org/wiki/Project:Java/Tomcat_6_Guide for more information."
+}


             reply	other threads:[~2021-02-04 10:08 UTC|newest]

Thread overview: 63+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-04 10:08 Miroslav Šulc [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-06-07  6:38 [gentoo-commits] repo/gentoo:master commit in: www-servers/tomcat/, www-servers/tomcat/files/ Miroslav Šulc
2024-04-04  7:51 Miroslav Šulc
2023-03-23  5:48 Miroslav Šulc
2023-02-26  8:02 Miroslav Šulc
2023-02-26  7:40 Miroslav Šulc
2023-02-26  7:24 Miroslav Šulc
2022-09-28  4:33 Miroslav Šulc
2021-06-17  7:06 Miroslav Šulc
2021-05-13 11:22 Miroslav Šulc
2021-05-07 14:35 Miroslav Šulc
2020-07-20  8:45 Miroslav Šulc
2020-07-14 16:41 Miroslav Šulc
2020-07-07 10:22 Miroslav Šulc
2020-04-30  9:16 Miroslav Šulc
2020-02-09 23:38 Miroslav Šulc
2019-10-16 10:51 Miroslav Šulc
2019-10-16  9:38 Miroslav Šulc
2019-10-16  8:38 Miroslav Šulc
2019-06-12  9:48 Miroslav Šulc
2019-04-19 15:45 Miroslav Šulc
2019-04-19 15:45 Miroslav Šulc
2019-04-19 15:20 Miroslav Šulc
2019-04-19 14:51 Miroslav Šulc
2019-03-20 16:49 Miroslav Šulc
2019-03-20 16:49 Miroslav Šulc
2019-03-19 19:05 Miroslav Šulc
2019-02-10 14:11 Miroslav Šulc
2019-01-23 12:49 Miroslav Šulc
2018-02-13 17:23 Miroslav Šulc
2018-02-13 17:23 Miroslav Šulc
2018-02-04  9:32 Miroslav Šulc
2017-12-04 15:02 Miroslav Šulc
2017-10-11 17:05 Miroslav Šulc
2017-10-11 15:13 Miroslav Šulc
2017-10-11 15:04 Miroslav Šulc
2017-09-10  6:46 Miroslav Šulc
2017-09-10  6:26 Miroslav Šulc
2017-08-20 13:54 Miroslav Šulc
2017-08-17 14:03 Miroslav Šulc
2017-08-10 10:35 Miroslav Šulc
2017-07-15  7:50 Miroslav Šulc
2017-05-16  8:56 Miroslav Šulc
2017-04-25 10:53 Miroslav Šulc
2017-03-14 15:15 Miroslav Šulc
2016-12-09 14:53 Miroslav Šulc
2016-11-15 15:07 Miroslav Šulc
2016-06-21  9:43 Miroslav Šulc
2016-06-14 11:51 Miroslav Šulc
2016-05-19 19:58 Miroslav Šulc
2016-05-17  9:06 Miroslav Šulc
2016-04-18 16:16 Miroslav Šulc
2016-03-26 10:28 Miroslav Šulc
2016-03-22 21:16 James Le Cuirot
2016-03-17 12:53 Miroslav Šulc
2016-03-17 12:46 Miroslav Šulc
2016-02-10 14:48 Miroslav Šulc
2016-02-08 11:54 Miroslav Šulc
2015-12-07 14:02 Miroslav Šulc
2015-10-25 22:53 James Le Cuirot
2015-10-25 22:53 James Le Cuirot
2015-10-21  9:46 Miroslav Šulc
2015-09-03 16:55 Miroslav Šulc

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1612433268.71b2ce1d92c9c9001cfff8c73d1d48df0a1fcf9e.fordfrog@gentoo \
    --to=fordfrog@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox