!1 package init

From: @kang_xiao_qiang
Reviewed-by: @rita_dong
Signed-off-by: @rita_dong
This commit is contained in:
openeuler-ci-bot 2020-10-31 20:10:22 +08:00 committed by Gitee
commit f8db1e4b2f
12 changed files with 419 additions and 0 deletions

View File

@ -0,0 +1,25 @@
From 7e5334b655c05abb138da742c26df875a0d6ec0c Mon Sep 17 00:00:00 2001
From: Troy Dawson <tdawson@redhat.com>
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

View File

@ -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

View File

@ -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. -->
<pathelement location="${java.home}/lib/tools.jar"/>
<pathelement location="${java.home}/../lib/tools.jar"/>
+
+ <!-- Cocoon docs. The directory is set as it is so the build will work when
+ the cocoon files are not available. -->
+ <fileset dir="${basedir}/tools/">
+ <include name="cocoon-${cocoon.dist.version}/lib/*.jar" />
+ </fileset>
</path>
<path id="test.class.path">
@@ -732,6 +738,39 @@
description="default development build task"/>
<!-- =================================================================== -->
+ <!-- Documentation target -->
+ <!-- =================================================================== -->
+ <target name="doc-src-test" depends="init:msg">
+ <available file="${src.dir}/documentation/english.uris" property="doc-src.present"/>
+ </target>
+ <target name="doc" depends="doc-src-test" if="doc-src.present"
+ description="generates the Wrapper documentation">
+
+ <mkdir dir="${build.dir}"/>
+ <mkdir dir="${build.dir}/work"/>
+ <mkdir dir="${doc.dir}"/>
+
+ <fixcrlf eol="lf" destdir="${context.dir}/xdocs/english" srcdir="${src.dir}/conf">
+ <include name="wrapper.conf.in"/>
+ </fixcrlf>
+
+ <java classname="org.apache.cocoon.Main" fork="true">
+ <jvmarg value="-Xmx256M"/>
+ <arg value="-c${context.dir}/"/>
+ <arg value="-d${doc.dir}"/>
+ <arg value="-w${build.dir}/work"/>
+ <arg value="-uINFO"/>
+ <arg value="-f${context.dir}/english.uris"/>
+ <classpath>
+ <path refid="tools.class.path"/>
+ </classpath>
+ </java>
+
+ <copy tofile="${doc.dir}/english/index.html"
+ file="${doc.dir}/english/introduction.html"/>
+ </target>
+
+ <!-- =================================================================== -->
<!-- Release (Common) -->
<!-- =================================================================== -->
<target name="release-common" depends="test">

View File

@ -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 )
{

Binary file not shown.

View File

@ -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")) {

92
java-service-wrapper.spec Normal file
View File

@ -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 '/<version>/s/>.*</>%{version}</' %{SOURCE4} >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 <kangshaoqiang1@huawei.com> - 3.2.5-1
- Package init

View File

@ -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

View File

@ -0,0 +1,4 @@
version_control: NA
src_repo: NA
tag_prefix: NA
seperator: NA

68
ppc64le-support.patch Normal file
View File

@ -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

BIN
release-3_2_5.tar.bz2 Normal file

Binary file not shown.

19
wrapper-3.2.3.pom Normal file
View File

@ -0,0 +1,19 @@
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>tanukisoft</groupId>
<artifactId>wrapper</artifactId>
<name>Java Service Wrapper</name>
<version>3.2.3</version>
<packaging>jar</packaging>
<url>http://wrapper.tanukisoftware.org/</url>
<licenses>
<license>
<name>Tanuki Software license</name>
<url>http://wrapper.tanukisoftware.org/doc/english/license.html</url>
</license>
</licenses>
<scm>
<url>http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/wrapper/</url>
</scm>
</project>