summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-java/tomcat-servlet-api/tomcat-servlet-api-9.0.54.ebuild')
-rw-r--r--dev-java/tomcat-servlet-api/tomcat-servlet-api-9.0.54.ebuild99
1 files changed, 99 insertions, 0 deletions
diff --git a/dev-java/tomcat-servlet-api/tomcat-servlet-api-9.0.54.ebuild b/dev-java/tomcat-servlet-api/tomcat-servlet-api-9.0.54.ebuild
new file mode 100644
index 000000000000..4a8d22d12869
--- /dev/null
+++ b/dev-java/tomcat-servlet-api/tomcat-servlet-api-9.0.54.ebuild
@@ -0,0 +1,99 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+JAVA_PKG_IUSE="source"
+
+inherit java-pkg-2 java-pkg-simple
+
+MY_A="apache-${PN}-${PV}-src"
+MY_P="${MY_A/-servlet-api/}"
+DESCRIPTION="Tomcat's Servlet API 4.0/JSP API 2.3/EL API 3.0 implementation"
+HOMEPAGE="https://tomcat.apache.org/"
+SRC_URI="mirror://apache/tomcat/tomcat-9/v${PV}/src/${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="4.0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x64-solaris ~x86-solaris"
+IUSE=""
+
+DEPEND=">=virtual/jdk-1.8:*"
+RDEPEND=">=virtual/jre-1.8:*"
+
+S="${WORKDIR}/${MY_P}/"
+
+JAVA_TEST_SRC_DIR="src/test"
+
+SERVLET_API_JAR="servlet-api.jar"
+SERVLET_API_SRC="src/main/servlet-api"
+SERVLET_API_RESOURCES="src/resources/servlet-api"
+EL_API_JAR="el-api.jar"
+EL_API_SRC="src/main/el-api"
+EL_API_RESOURCES="src/resources/el-api"
+JSP_API_JAR="jsp-api.jar"
+JSP_API_SRC="src/main/jsp-api"
+JSP_API_RESOURCES="src/resources/jsp-api"
+
+src_prepare() {
+ default
+
+ # The sources and also resources are mixed together so we first give it a structure to make it easier to compila and package
+
+ mkdir -p ${SERVLET_API_SRC} ${SERVLET_API_RESOURCES} \
+ ${EL_API_SRC} ${EL_API_RESOURCES} \
+ ${JSP_API_SRC}/javax/servlet ${JSP_API_RESOURCES} \
+ ${JAVA_TEST_SRC_DIR} || die "Failed to create source directory"
+
+ pushd java || die "Failed to cd to java dir"
+
+ cp --parents -R javax/servlet "${S}/${SERVLET_API_SRC}/" || die "Failed to copy servlet-api sources"
+ mv "${S}/${SERVLET_API_SRC}/javax/servlet/jsp" "${S}/${JSP_API_SRC}/javax/servlet" || die "Failed to copy jsp-api sources"
+ cp --parents -R javax/el "${S}/${EL_API_SRC}/" || die "Failed to copy el-api sources"
+
+ popd
+
+ for file in $(find src -type f | grep -vE "\.java$"); do
+ target_dir=$(dirname $file | sed "s%src/main/%src/resources/%g")
+ mkdir -p ${target_dir} || die "Failed to create resource directory"
+ mv $file ${target_dir} || die "Failed to move resource file"
+ done
+
+ mv test/javax ${JAVA_TEST_SRC_DIR} || die "Failed to copy test sources"
+
+ java-pkg-2_src_prepare
+}
+
+src_compile() {
+ JAVA_SRC_DIR="${SERVLET_API_SRC}"
+ JAVA_RESOURCE_DIRS="${SERVLET_API_RESOURCES}"
+ JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
+ java-pkg-simple_src_compile
+ rm -fr target || die "Failed to remove compiled files"
+
+ JAVA_SRC_DIR="${EL_API_SRC}"
+ JAVA_RESOURCE_DIRS="${EL_API_RESOURCES}"
+ JAVA_JAR_FILENAME="${EL_API_JAR}"
+ java-pkg-simple_src_compile
+ rm -fr target || die "Failed to remove compiled files"
+
+ JAVA_SRC_DIR="${JSP_API_SRC}"
+ JAVA_RESOURCE_DIRS="${JSP_API_RESOURCES}"
+ JAVA_JAR_FILENAME="${JSP_API_JAR}"
+ JAVA_GENTOO_CLASSPATH_EXTRA="servlet-api.jar:el-api.jar"
+ java-pkg-simple_src_compile
+}
+
+src_install() {
+ JAVA_SRC_DIR="${SERVLET_API_SRC}"
+ JAVA_JAR_FILENAME="${SERVLET_API_JAR}"
+ java-pkg-simple_src_install
+
+ JAVA_SRC_DIR="${EL_API_SRC}"
+ JAVA_JAR_FILENAME="${EL_API_JAR}"
+ java-pkg-simple_src_install
+
+ JAVA_SRC_DIR="${JSP_API_SRC}"
+ JAVA_JAR_FILENAME="${JSP_API_JAR}"
+ java-pkg-simple_src_install
+}