diff --git a/Use-RPM_OPT_FLAGS-on-s390x.patch b/Use-RPM_OPT_FLAGS-on-s390x.patch new file mode 100644 index 0000000000000000000000000000000000000000..41c8f1768f113cd826b8f6563e83c21a50035aa4 --- /dev/null +++ b/Use-RPM_OPT_FLAGS-on-s390x.patch @@ -0,0 +1,25 @@ +From 7e5334b655c05abb138da742c26df875a0d6ec0c Mon Sep 17 00:00:00 2001 +From: Troy Dawson +Date: Tue, 27 Feb 2018 11:54:16 -0600 +Subject: [PATCH] Use RPM_OPT_FLAGS on s390x + +--- + src/c/Makefile-linux-s390x-64.make | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/c/Makefile-linux-s390x-64.make b/src/c/Makefile-linux-s390x-64.make +index 4360f38..08c097f 100644 +--- a/src/c/Makefile-linux-s390x-64.make ++++ b/src/c/Makefile-linux-s390x-64.make +@@ -23,7 +23,7 @@ + + # This makefile is inprogess. It builds, but the resulting libwrapper.so does not yet work. + # If you know how to fix it then please help out. +-COMPILE = gcc -O3 -fPIC -Wall --pedantic ++COMPILE = gcc ${RPM_OPT_FLAGS} -fPIC --pedantic + + INCLUDE=$(JAVA_HOME)/include + +-- +2.14.2 + diff --git a/java-service-wrapper-3.2.4-cflags.patch b/java-service-wrapper-3.2.4-cflags.patch new file mode 100644 index 0000000000000000000000000000000000000000..e0c181eeb586b373d32e676cd3ae6bada01d2561 --- /dev/null +++ b/java-service-wrapper-3.2.4-cflags.patch @@ -0,0 +1,52 @@ +Index: ivertex-yaja-wrapper-3290d306074a/src/c/Makefile-linux-ppc-64.make +=================================================================== +--- ivertex-yaja-wrapper-3290d306074a.orig/src/c/Makefile-linux-ppc-64.make ++++ ivertex-yaja-wrapper-3290d306074a/src/c/Makefile-linux-ppc-64.make +@@ -23,7 +23,7 @@ + + # This makefile is inprogess. It builds, but the resulting libwrapper.so does not yet work. + # If you know how to fix it then please help out. +-COMPILE = gcc -O3 -m64 -fPIC --pedantic ++COMPILE = gcc ${RPM_OPT_FLAGS} -fPIC --pedantic + + INCLUDE=$(JAVA_HOME)/include + +Index: ivertex-yaja-wrapper-3290d306074a/src/c/Makefile-linux-x86-32.make +=================================================================== +--- ivertex-yaja-wrapper-3290d306074a.orig/src/c/Makefile-linux-x86-32.make ++++ ivertex-yaja-wrapper-3290d306074a/src/c/Makefile-linux-x86-32.make +@@ -21,7 +21,7 @@ + # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + # OTHER DEALINGS IN THE SOFTWARE. + +-COMPILE = gcc -O3 -Wall --pedantic ++COMPILE = gcc ${RPM_OPT_FLAGS} -fPIC --pedantic + + INCLUDE=$(JAVA_HOME)/include + +Index: ivertex-yaja-wrapper-3290d306074a/src/c/Makefile-linux-x86-64.make +=================================================================== +--- ivertex-yaja-wrapper-3290d306074a.orig/src/c/Makefile-linux-x86-64.make ++++ ivertex-yaja-wrapper-3290d306074a/src/c/Makefile-linux-x86-64.make +@@ -23,7 +23,7 @@ + + # This makefile is inprogess. It builds, but the resulting libwrapper.so does not yet work. + # If you know how to fix it then please help out. +-COMPILE = gcc -O3 -fPIC -Wall --pedantic ++COMPILE = gcc ${RPM_OPT_FLAGS} -fPIC --pedantic + + INCLUDE=$(JAVA_HOME)/include + +Index: ivertex-yaja-wrapper-3290d306074a/src/c/Makefile-linux-arm-32.make +=================================================================== +--- ivertex-yaja-wrapper-3290d306074a.orig/src/c/Makefile-linux-arm-32.make ++++ ivertex-yaja-wrapper-3290d306074a/src/c/Makefile-linux-arm-32.make +@@ -23,7 +23,7 @@ + + # This makefile is inprogess. It builds, but the resulting libwrapper.so does not yet work. + # If you know how to fix it then please help out. +-COMPILE = gcc -O3 -fPIC -Wall --pedantic ++COMPILE = gcc ${RPM_OPT_FLAGS} -fPIC --pedantic + + INCLUDE=$(JAVA_HOME)/include + diff --git a/java-service-wrapper-3.2.4-docbuild.patch b/java-service-wrapper-3.2.4-docbuild.patch new file mode 100644 index 0000000000000000000000000000000000000000..cb49dc2bc994a71bce9edfd8ec5be88f926f68a4 --- /dev/null +++ b/java-service-wrapper-3.2.4-docbuild.patch @@ -0,0 +1,57 @@ +Doc build targets brought back from upstream 3.2.3 source tarball. + +--- build.xml.orig 2010-09-28 08:10:42.000000000 +0300 ++++ build.xml 2011-05-20 00:13:42.133223006 +0300 +@@ -26,6 +26,12 @@ + possible locations of the tools.jar file. --> + + ++ ++ ++ ++ ++ + + + +@@ -732,6 +738,39 @@ + description="default development build task"/> + + ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + diff --git a/java-service-wrapper-3.2.4-jnilibpath.patch b/java-service-wrapper-3.2.4-jnilibpath.patch new file mode 100644 index 0000000000000000000000000000000000000000..9bad0f77ed44ecad0b46da23c1cc575089d794fc --- /dev/null +++ b/java-service-wrapper-3.2.4-jnilibpath.patch @@ -0,0 +1,12 @@ +diff -up ivertex-java-service-wrapper-637f7cc19e33/src/java/org/tanukisoftware/wrapper/WrapperManager.java~ ivertex-java-service-wrapper-637f7cc19e33/src/java/org/tanukisoftware/wrapper/WrapperManager.java +--- ivertex-java-service-wrapper-637f7cc19e33/src/java/org/tanukisoftware/wrapper/WrapperManager.java~ 2010-09-28 08:10:42.000000000 +0300 ++++ ivertex-java-service-wrapper-637f7cc19e33/src/java/org/tanukisoftware/wrapper/WrapperManager.java 2011-04-07 01:38:27.273480672 +0300 +@@ -924,7 +924,7 @@ public final class WrapperManager + { + try + { +- System.loadLibrary( name ); ++ System.load( new File( "@LIBPATH@", file ).toString() ); + + if ( m_debug ) + { diff --git a/java-service-wrapper-3.2.5-docs.tar.bz2 b/java-service-wrapper-3.2.5-docs.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..7d953bf9b31c2295b27d46c81d670ecf52ed6eb7 Binary files /dev/null and b/java-service-wrapper-3.2.5-docs.tar.bz2 differ diff --git a/java-service-wrapper-3.2.5-rhbz1037144.patch b/java-service-wrapper-3.2.5-rhbz1037144.patch new file mode 100644 index 0000000000000000000000000000000000000000..8e574d05268d6626d2c05c123c637908d2da9b9f --- /dev/null +++ b/java-service-wrapper-3.2.5-rhbz1037144.patch @@ -0,0 +1,11 @@ +--- src/c/logger.c~ 2011-10-08 21:57:01.000000000 +0200 ++++ src/c/logger.c 2014-03-07 14:43:55.922468885 +0100 +@@ -871,7 +871,7 @@ + */ + void generateLogFileName(char *buffer, const char *template, const char *nowDate, const char *rollNum ) { + /* Copy the template to the buffer to get started. */ +- sprintf(buffer, template); ++ strcpy(buffer, template); + + /* Handle the date token. */ + if (strstr(buffer, "YYYYMMDD")) { diff --git a/java-service-wrapper.spec b/java-service-wrapper.spec new file mode 100644 index 0000000000000000000000000000000000000000..cbef8a76b6ae619bda0920602ee17704d4eedc57 --- /dev/null +++ b/java-service-wrapper.spec @@ -0,0 +1,92 @@ +%global javaver 1.7 +%global hgrev 3290d306074a +%global pname yaja-wrapper +%if ! 0%{?__isa_bits} +%ifarch x86_64 ia64 ppc64 sparc64 s390x alpha ppc64le aarch64 +%global __isa_bits 64 +%else +%global __isa_bits 32 +%endif +%endif +%global __provides_exclude_from ^%{_libdir}/%{name}/.*\.so$ +%bcond_with docs +%global cocoon cocoon-2.0.4 +Name: java-service-wrapper +Version: 3.2.5 +Release: 1 +Summary: Java service wrapper +License: MIT +URL: https://bitbucket.org/ivertex/yaja-wrapper +Source0: https://bitbucket.org/ivertex/yaja-wrapper/get/release-3_2_5.tar.bz2 +Source1: %{name}.template.init +Source2: %{name}-%{version}-docs.tar.bz2 +%if %{with docs} +Source3: http://archive.apache.org/dist/cocoon/BINARIES/%{cocoon}-bin.tar.gz +%endif +Source4: http://repo1.maven.org/maven2/tanukisoft/wrapper/3.2.3/wrapper-3.2.3.pom +Patch0: %{name}-3.2.4-cflags.patch +Patch1: %{name}-3.2.4-jnilibpath.patch +Patch2: %{name}-3.2.4-docbuild.patch +Patch3: %{name}-3.2.5-rhbz1037144.patch +Patch98: Use-RPM_OPT_FLAGS-on-s390x.patch +Patch99: ppc64le-support.patch +BuildRequires: ant javapackages-local gcc make +%description +The Java Service Wrapper enables a Java application to be run as a +Unix daemon. It also monitors the health of your application and JVM. + +%package javadoc +Summary: API documentation for %{name} +BuildArch: noarch +%description javadoc +API documentation for %{name}. + +%prep +%setup -q -n ivertex-%{pname}-%{hgrev} -a 2 +sed '//s/>.*%{version}pom.xml +install -pm 644 %{SOURCE1} doc/template.init +%patch0 -p1 +sed -e 's|@LIBPATH@|%{_libdir}/%{name}|' %{PATCH1} | %{__patch} -p1 -F 0 +%patch2 -p0 +%patch3 +%patch98 -p1 +%patch99 -p1 +%if %{with docs} +mkdir tools ; cd tools +tar xf %{SOURCE3} +unzip -q %{cocoon}/cocoon.war ; mv WEB-INF/lib %{cocoon}/ +cd .. +%endif +(cd src/c; cp Makefile-linux-ppc64le-64.make Makefile-linux-aarch64-64.make) +(cd src/c; cp Makefile-linux-arm-32.make Makefile-linux-aarch32-32.make) + +%build +%ant -Dbits=%{__isa_bits} -Djavac.target.version=%{javaver} +%javadoc -sourcepath src/java -Xdoclint:none -d javadoc -link %{_javadocdir}/java -author \ + -windowtitle "Java Service Wrapper API" -doctitle "Java Service Wrapper" \ + -version $(find src/java -name "*.java" -not -path "*/test/*") +%if %{with docs} +rm -r doc/english +%ant -Dbits=%{__isa_bits} doc +%endif + +%install +install -Dpm 755 bin/wrapper $RPM_BUILD_ROOT%{_sbindir}/java-service-wrapper +install -dm 755 $RPM_BUILD_ROOT%{_libdir}/%{name} +install -pm 755 lib/libwrapper.so $RPM_BUILD_ROOT%{_libdir}/%{name} +%mvn_file : %{name} %{_libdir}/%{name}/wrapper +%mvn_artifact pom.xml lib/wrapper.jar +%mvn_install -J javadoc + +%files -f .mfiles +%doc AboutThisRepository.txt doc/ +%{_sbindir}/java-service-wrapper +%{_libdir}/%{name}/ +%license doc/license.txt + +%files javadoc -f .mfiles-javadoc +%license doc/license.txt + +%changelog +* Wed Oct 28 2020 shaoqiang kang - 3.2.5-1 +- Package init diff --git a/java-service-wrapper.template.init b/java-service-wrapper.template.init new file mode 100644 index 0000000000000000000000000000000000000000..7271740c6d28cddd5a07d485ae7998fbe04e972d --- /dev/null +++ b/java-service-wrapper.template.init @@ -0,0 +1,79 @@ +#!/bin/sh +# +# chkconfig: - 71 29 +# description: TODO + +### BEGIN INIT INFO +# Provides: TODO +# Required-Start: $local_fs $syslog +# Required-Stop: $local_fs $syslog +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: TODO +### END INIT INFO + +. /etc/rc.d/init.d/functions + +# Remember to symlink $exec to the wrapper executable +exec=/usr/sbin/TODO +prog=${exec##*/} +lockfile=/var/lock/subsys/$prog +statusfile=/var/run/$prog/wrapper.status +javastatusfile=/var/run/$prog/java.status +logfile=/var/log/$prog/wrapper.log +user=$prog + +[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog + +OPTS=/etc/$prog.wrapper.conf +OPTS="$OPTS wrapper.ntservice.name=$prog wrapper.logfile=$logfile" +[ -n "$statusfile" ] && OPTS="$OPTS wrapper.statusfile=$statusfile" +[ -n "$javastatusfile" ] && OPTS="$OPTS wrapper.java.statusfile=$javastatusfile" + +start() { + max_fd=$(ulimit -H -n 2>/dev/null) + [ $? -eq 0 -a -n "$max_fd" ] && ulimit -n "$max_fd" + echo -n $"Starting $prog: " + daemon --user=$user $exec $OPTS + retval=$? + echo + [ $retval -eq 0 ] && touch $lockfile + return $retval +} + +stop() { + echo -n $"Stopping $prog: " + killproc $prog + retval=$? + echo + [ $retval -eq 0 ] && rm -f $lockfile + return $retval +} + +restart() { + stop + start +} + +case "$1" in + start|stop|restart) + $1 + ;; + reload|force-reload) + restart + ;; + status) + status $prog + echo -n $"Wrapper status: " + [ -f "$statusfile" ] && cat "$statusfile" 2>/dev/null || echo UNKNOWN + echo -n $"Java status: " + [ -f "$javastatusfile" ] && \ + cat "$javastatusfile" 2>/dev/null || echo UNKNOWN + ;; + condrestart|try-restart) + [ ! -f $lockfile ] || restart + ;; + *) + echo $"Usage: $0 {start|stop|status|restart|try-restart|reload|force-reload}" + exit 2 +esac diff --git a/java-service-wrapper.yaml b/java-service-wrapper.yaml new file mode 100644 index 0000000000000000000000000000000000000000..00bbaf050db91e87f0ad529e5c29027a1bf150ae --- /dev/null +++ b/java-service-wrapper.yaml @@ -0,0 +1,4 @@ +version_control: NA +src_repo: NA +tag_prefix: NA +seperator: NA diff --git a/ppc64le-support.patch b/ppc64le-support.patch new file mode 100644 index 0000000000000000000000000000000000000000..7006b2f2501ce1655eb8c650a0f9ebfc27445779 --- /dev/null +++ b/ppc64le-support.patch @@ -0,0 +1,68 @@ +diff -Naur ivertex-yaja-wrapper-3290d306074a.orig/src/c/Makefile-linux-ppc64le-64.make ivertex-yaja-wrapper-3290d306074a/src/c/Makefile-linux-ppc64le-64.make +--- ivertex-yaja-wrapper-3290d306074a.orig/src/c/Makefile-linux-ppc64le-64.make 1969-12-31 18:00:00.000000000 -0600 ++++ ivertex-yaja-wrapper-3290d306074a/src/c/Makefile-linux-ppc64le-64.make 2014-03-17 16:35:25.920002695 -0500 +@@ -0,0 +1,64 @@ ++# Copyright (c) 1999, 2007 Tanuki Software Inc. ++# ++# Permission is hereby granted, free of charge, to any person ++# obtaining a copy of the Java Service Wrapper and associated ++# documentation files (the "Software"), to deal in the Software ++# without restriction, including without limitation the rights ++# to use, copy, modify, merge, publish, distribute, sub-license, ++# and/or sell copies of the Software, and to permit persons to ++# whom the Software is furnished to do so, subject to the ++# following conditions: ++# ++# The above copyright notice and this permission notice shall be ++# included in all copies or substantial portions of the Software. ++# ++# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, ++# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES ++# OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++# NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ++# HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, ++# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++# OTHER DEALINGS IN THE SOFTWARE. ++ ++# This makefile is inprogess. It builds, but the resulting libwrapper.so does not yet work. ++# If you know how to fix it then please help out. ++COMPILE = gcc ${RPM_OPT_FLAGS} -fPIC --pedantic ++ ++INCLUDE=$(JAVA_HOME)/include ++ ++DEFS = -I$(INCLUDE) -I$(INCLUDE)/linux ++ ++wrapper_SOURCE = wrapper.c wrapperinfo.c wrappereventloop.c wrapper_unix.c property.c logger.c ++ ++libwrapper_so_OBJECTS = wrapperjni_unix.o wrapperinfo.o wrapperjni.o ++ ++BIN = ../../bin ++LIB = ../../lib ++ ++all: init wrapper libwrapper.so ++ ++clean: ++ rm -f *.o ++ ++cleanall: clean ++ rm -rf *~ .deps ++ rm -f $(BIN)/wrapper $(LIB)/libwrapper.so ++ ++init: ++ if test ! -d .deps; then mkdir .deps; fi ++ ++wrapper: $(wrapper_SOURCE) ++ $(COMPILE) -pthread -lm $(wrapper_SOURCE) -o $(BIN)/wrapper ++ ++libwrapper.so: $(libwrapper_so_OBJECTS) ++ ${COMPILE} -shared $(libwrapper_so_OBJECTS) -o $(LIB)/libwrapper.so ++ ++%.o: %.c ++ @echo '$(COMPILE) -c $<'; \ ++ $(COMPILE) $(DEFS) -Wp,-MD,.deps/$(*F).pp -c $< ++ @-cp .deps/$(*F).pp .deps/$(*F).P; \ ++ tr ' ' '\012' < .deps/$(*F).pp \ ++ | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ ++ >> .deps/$(*F).P; \ ++ rm .deps/$(*F).pp diff --git a/release-3_2_5.tar.bz2 b/release-3_2_5.tar.bz2 new file mode 100644 index 0000000000000000000000000000000000000000..f1d627446999026099ae29eeab73da6d2f5a2da5 Binary files /dev/null and b/release-3_2_5.tar.bz2 differ diff --git a/wrapper-3.2.3.pom b/wrapper-3.2.3.pom new file mode 100644 index 0000000000000000000000000000000000000000..edca7e46cf3b61e09dd829836f76f2ee0f1bfc72 --- /dev/null +++ b/wrapper-3.2.3.pom @@ -0,0 +1,19 @@ + + 4.0.0 + tanukisoft + wrapper + Java Service Wrapper + 3.2.3 + jar + http://wrapper.tanukisoftware.org/ + + + Tanuki Software license + http://wrapper.tanukisoftware.org/doc/english/license.html + + + + http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/wrapper/ + + +