From 3e54188b375ca5be53aa15fc99ce5e634dad27b8 Mon Sep 17 00:00:00 2001 From: "Volkmar W. Pogatzki" Date: Sat, 22 Apr 2023 15:48:22 +0200 Subject: dev-java/java-service-wrapper: do not directly call java-run-tool Closes: https://bugs.gentoo.org/878869 Signed-off-by: Volkmar W. Pogatzki Signed-off-by: Florian Schmaus --- ...ce-wrapper-3.5.25-gentoo-wrapper-defaults.patch | 25 ++++++ .../java-service-wrapper-3.5.50-r1.ebuild | 94 ++++++++++++++++++++++ .../java-service-wrapper-3.5.50.ebuild | 90 --------------------- 3 files changed, 119 insertions(+), 90 deletions(-) create mode 100644 dev-java/java-service-wrapper/files/java-service-wrapper-3.5.25-gentoo-wrapper-defaults.patch create mode 100644 dev-java/java-service-wrapper/java-service-wrapper-3.5.50-r1.ebuild delete mode 100644 dev-java/java-service-wrapper/java-service-wrapper-3.5.50.ebuild (limited to 'dev-java/java-service-wrapper') diff --git a/dev-java/java-service-wrapper/files/java-service-wrapper-3.5.25-gentoo-wrapper-defaults.patch b/dev-java/java-service-wrapper/files/java-service-wrapper-3.5.25-gentoo-wrapper-defaults.patch new file mode 100644 index 000000000000..135c5a1ae8bf --- /dev/null +++ b/dev-java/java-service-wrapper/files/java-service-wrapper-3.5.25-gentoo-wrapper-defaults.patch @@ -0,0 +1,25 @@ +|Original version of this patch by Ralph Sennhauser +|Updated version for 3.5.25 by tomboy64 +| +|Added in 3.5.4, make false default for Gentoo +| +|* Add a new wrapper.java.command.resolve property to control whether or not the +| Wrapper tries to resolve any symbolic links in the Java command, specified +| with the wrapper.java.command property. Historically, it has always done so, +| but some jvm started applications like run-java-tool on Gentoo will fail if +| it is run directly as they have a check to make sure it is launched via a +| symbolic link. +| +# https://bugs.gentoo.org/878869 +--- a/src/c/wrapper.c.old 2014-07-21 09:12:55.000000000 +0200 ++++ b/src/c/wrapper.c 2014-07-21 09:13:22.000000000 +0200 +@@ -4908,7 +4908,7 @@ + if (!path) { + log_printf(WRAPPER_SOURCE_WRAPPER, LEVEL_WARN, TEXT("The configured wrapper.java.command could not be found, attempting to launch anyway: %s"), *para); + } else { +- replacePath = getBooleanProperty(properties, TEXT("wrapper.java.command.resolve"), TRUE); ++ replacePath = getBooleanProperty(properties, TEXT("wrapper.java.command.resolve"), FALSE); + if (replacePath == TRUE) { + free(*para); + *para = malloc((_tcslen(path) + 1) * sizeof(TCHAR)); + diff --git a/dev-java/java-service-wrapper/java-service-wrapper-3.5.50-r1.ebuild b/dev-java/java-service-wrapper/java-service-wrapper-3.5.50-r1.ebuild new file mode 100644 index 000000000000..8fdfe9ac2063 --- /dev/null +++ b/dev-java/java-service-wrapper/java-service-wrapper-3.5.50-r1.ebuild @@ -0,0 +1,94 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +JAVA_PKG_IUSE="doc source test" +inherit java-pkg-2 java-pkg-simple toolchain-funcs java-ant-2 +JAVA_TESTING_FRAMEWORKS="junit-4" + +DESCRIPTION="A wrapper that makes it possible to install a Java Application as daemon" +HOMEPAGE="https://wrapper.tanukisoftware.com" +SRC_URI="https://download.tanukisoftware.com/wrapper/${PV}/wrapper_${PV}_src.tar.gz" + +LICENSE="tanuki-community" +SLOT="0" +KEYWORDS="amd64 ~arm ~arm64 x86" +RESTRICT="!test? ( test )" + +RDEPEND=">=virtual/jre-1.8:*" +DEPEND=" + >=virtual/jdk-1.8:* + test? ( + dev-java/junit:4 + dev-util/cunit + ) +" +BDEPEND="virtual/jdk" + +S="${WORKDIR}/wrapper_${PV}_src" + +JAVA_SRC_DIR="src/java/" +JAVA_JAR_FILENAME="wrapper.jar" +JAVA_TEST_SRC_DIR="src/test" +JAVA_TEST_GENTOO_CLASSPATH="junit-4" + +PATCHES=( + "${FILESDIR}"/java-service-wrapper-3.5.25-gentoo-wrapper-defaults.patch +) + +src_prepare() { + default + + # replaces as-needed.patch + sed -i \ + -e 's/gcc -O3/$(CC)/g' \ + -e 's/ -pthread/ $(CFLAGS) $(LDFLAGS) -pthread/g' \ + -e 's/ -shared/ $(LDFLAGS) -shared/g' \ + -e 's/$(TEST)\/testsuite/testsuite/g' \ + src/c/Makefile-*.make || die + + cp "${S}/src/c/Makefile-linux-armel-32.make" "${S}/src/c/Makefile-linux-arm-32.make" + java-pkg-2_src_prepare + + # disable tests by default (they are only enabled by default on amd64) + sed -e "s/\(all: init wrapper libwrapper.so\) testsuite/\1/g" \ + -i src/c/Makefile-linux-x86-64.make || die + + # re-enable tests on all platforms if requested + if use test; then + grep "testsuite_SOURCE" "src/c/Makefile-linux-x86-64.make" | tee -a src/c/Makefile-*.make + assert + echo 'all: testsuite' | tee -a src/c/Makefile-*.make + assert + fi +} + +src_compile() { + tc-export CC + + pushd "${T}" || die + echo 'public class GetArchDataModel{public static void main(String[] args){System.out.println(System.getProperty("sun.arch.data.model"));}}' \ + > GetArchDataModel.java || die + ejavac GetArchDataModel.java + local BITS + BITS="$(java GetArchDataModel)" || die "Failed to identify sun.arch.data.model property" + popd || die + eant -Dbits="${BITS}" compile-c + + java-pkg-simple_src_compile +} + +src_test() { + src/c/testsuite --basic || die + java-pkg-simple_src_test +} + +src_install() { + java-pkg-simple_src_install + java-pkg_doso lib/libwrapper.so + + dobin bin/wrapper + dodoc README*.txt + dodoc doc/revisions.txt +} diff --git a/dev-java/java-service-wrapper/java-service-wrapper-3.5.50.ebuild b/dev-java/java-service-wrapper/java-service-wrapper-3.5.50.ebuild deleted file mode 100644 index 261d3bf92668..000000000000 --- a/dev-java/java-service-wrapper/java-service-wrapper-3.5.50.ebuild +++ /dev/null @@ -1,90 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -JAVA_PKG_IUSE="doc source test" -inherit java-pkg-2 java-pkg-simple toolchain-funcs java-ant-2 -JAVA_TESTING_FRAMEWORKS="junit-4" - -DESCRIPTION="A wrapper that makes it possible to install a Java Application as daemon" -HOMEPAGE="https://wrapper.tanukisoftware.com" -SRC_URI="https://download.tanukisoftware.com/wrapper/${PV}/wrapper_${PV}_src.tar.gz" - -LICENSE="tanuki-community" -SLOT="0" -KEYWORDS="amd64 ~arm ~arm64 x86" -RESTRICT="!test? ( test )" - -RDEPEND=">=virtual/jre-1.8:*" -DEPEND=" - >=virtual/jdk-1.8:* - test? ( - dev-java/junit:4 - dev-util/cunit - ) -" -BDEPEND="virtual/jdk" - -S="${WORKDIR}/wrapper_${PV}_src" - -JAVA_SRC_DIR="src/java/" -JAVA_JAR_FILENAME="wrapper.jar" -JAVA_TEST_SRC_DIR="src/test" -JAVA_TEST_GENTOO_CLASSPATH="junit-4" - -src_prepare() { - default - - # replaces as-needed.patch - sed -i \ - -e 's/gcc -O3/$(CC)/g' \ - -e 's/ -pthread/ $(CFLAGS) $(LDFLAGS) -pthread/g' \ - -e 's/ -shared/ $(LDFLAGS) -shared/g' \ - -e 's/$(TEST)\/testsuite/testsuite/g' \ - src/c/Makefile-*.make || die - - cp "${S}/src/c/Makefile-linux-armel-32.make" "${S}/src/c/Makefile-linux-arm-32.make" - java-pkg-2_src_prepare - - # disable tests by default (they are only enabled by default on amd64) - sed -e "s/\(all: init wrapper libwrapper.so\) testsuite/\1/g" \ - -i src/c/Makefile-linux-x86-64.make || die - - # re-enable tests on all platforms if requested - if use test; then - grep "testsuite_SOURCE" "src/c/Makefile-linux-x86-64.make" | tee -a src/c/Makefile-*.make - assert - echo 'all: testsuite' | tee -a src/c/Makefile-*.make - assert - fi -} - -src_compile() { - tc-export CC - - pushd "${T}" || die - echo 'public class GetArchDataModel{public static void main(String[] args){System.out.println(System.getProperty("sun.arch.data.model"));}}' \ - > GetArchDataModel.java || die - ejavac GetArchDataModel.java - local BITS - BITS="$(java GetArchDataModel)" || die "Failed to identify sun.arch.data.model property" - popd || die - eant -Dbits="${BITS}" compile-c - - java-pkg-simple_src_compile -} - -src_test() { - src/c/testsuite --basic || die - java-pkg-simple_src_test -} - -src_install() { - java-pkg-simple_src_install - java-pkg_doso lib/libwrapper.so - - dobin bin/wrapper - dodoc README*.txt - dodoc doc/revisions.txt -} -- cgit v1.2.3