Separation of axis+trustmanager-specific code:
authorFrantišek Dvořák <valtri@civ.zcu.cz>
Tue, 26 Feb 2013 13:35:13 +0000 (13:35 +0000)
committerFrantišek Dvořák <valtri@civ.zcu.cz>
Tue, 26 Feb 2013 14:18:26 +0000 (15:18 +0100)
- jar file split to client, axis and examples
- jar files renamed
- subpackages for rpm and Debian

L&B java client "core" doesn't need trustmanager and axis 1.4 dependencies anymore.

org.glite.lb.client-java/Makefile
org.glite.lb.client-java/project/debian.control
org.glite.lb.client-java/project/debian.glite-lb-client-java-examples.dirs [moved from org.glite.lb.client-java/project/debian.glite-lb-client-java.dirs with 100% similarity]
org.glite.lb.client-java/project/debian.glite-lb-client-java-examples.install [new file with mode: 0644]
org.glite.lb.client-java/project/debian.glite-lb-client-java.install [deleted file]
org.glite.lb.client-java/project/debian.libglite-lb-client-axis-java.dirs [new file with mode: 0644]
org.glite.lb.client-java/project/debian.libglite-lb-client-axis-java.install [new file with mode: 0644]
org.glite.lb.client-java/project/debian.libglite-lb-client-java.dirs [new file with mode: 0644]
org.glite.lb.client-java/project/debian.libglite-lb-client-java.install [new file with mode: 0644]
org.glite.lb.client-java/project/debian.rules
org.glite.lb.client-java/project/glite-lb-client-java.spec

index 0f67aa7..d776ac7 100644 (file)
@@ -15,6 +15,11 @@ version=${module.version}
 FULL_EXAMPLES := $(addprefix ${top_srcdir}/examples/,SSLClient.java SSLServer.java QueryDemo.java NotificationExample.java CreamTest.java)
 SSL_EXAMPLES := $(addprefix ${top_srcdir}/examples/simple-ssl/,MyX509KeyManager.java MyX509TrustManager.java ExampleSSLSocketFactory.java LBClientSSL.java)
 TM_EXAMPLES := $(addprefix ${top_srcdir}/examples/simple-trustmanager/,LBClientTM.java)
+CORE_SOURCES:=Context.java ContextIL.java Escape.java Event.java ILFileWriter.java ILProto.java LBException.java Level.java Timeval.java Sources.java SeqCode.java
+AXIS_SOURCES:=ContextDirect.java ContextLL.java EventConvertor.java Job.java LBCredentials.java NotifParser.java Notification.java SSL.java SSLSend.java ServerConnection.java
+
+CORE_CLASSES=$(CORE_SOURCES:.java=.class)
+AXIS_CLASSES=$(AXIS_SOURCES:.java=.class) ServerConnection$$1.class ServerConnection$$QueryResultsFlag.class
 
 SOURCES=\
        examples/*.java examples/*/*.java \
@@ -24,7 +29,7 @@ SOURCES=\
        Makefile
 SOURCES_EXEC=project/list-jars.sh project/genEventTypes.pl
 
-VPATH := ${top_srcdir}/src/org/glite/lb ${top_srcdir}/examples ${top_srcdir}/examples/simple-ssl ${top_srcdir}/examples/simple-trustmanager
+VPATH := ${top_srcdir}/src/org/glite/lb ${top_srcdir}/examples ${top_srcdir}/examples/simple-ssl ${top_srcdir}/examples/simple-trustmanager build/org/glite/lb build/classes/org/glite/lb
 
 JAVAC:=${jdk_prefix}/bin/javac
 JAVAH:=${jdk_prefix}/bin/javah
@@ -53,7 +58,7 @@ compile-java-axis: genws
                build/axis/org/glite/wsdl/elements/lb/*.java \
                build/axis/holders/StringArrayHolder.java
 
-compile-java-lb: Event.java Timeval.java Sources.java Level.java SeqCode.java Escape.java
+compile-java-lb: $(CORE_SOURCES)
        -mkdir -p build/classes
        ${JAVAC} \
                -classpath ${jakarta-commons-lang_jar}:${jobid_classpath}:${trustmanager_classpath}:${utiljava_prefix}/share/java/glite-security-util-java.jar:${axis_classpath}:build/classes \
@@ -65,17 +70,21 @@ compile-java-gen: genevents
                -d build \
                build/gen/*.java
 
-compile-java-lb2: Context.java ContextDirect.java ContextIL.java ContextLL.java EventConvertor.java ILFileWriter.java ILProto.java Job.java LBCredentials.java LBException.java NotifParser.java Notification.java SSL.java SSLSend.java ServerConnection.java
+compile-java-lb2: $(AXIS_SOURCES)
        ${JAVAC} \
                -classpath ${jakarta-commons-lang_jar}:${jobid_classpath}:${trustmanager_classpath}:${utiljava_prefix}/share/java/glite-security-util-java.jar:${axis_classpath}:build:build/classes \
                -d build/classes $+
 
-build-jar: lb-client-java.jar
+build-jar: glite-lb-client-java.jar glite-lb-client-java-axis.jar glite-lb-client-java-examples.jar
+
+glite-lb-client-java.jar: compile-java-lb
+       cd build && ${jdk_prefix}/bin/jar cf $@ org/glite/lb
+       ${jdk_prefix}/bin/jar i build/$@
 
-lb-client-java.jar:
-       cd build && ${jdk_prefix}/bin/jar cf lb-client-java.jar holders org
-       cd build/classes && ${jdk_prefix}/bin/jar uf ../lb-client-java.jar org
-       ${jdk_prefix}/bin/jar i build/lb-client-java.jar
+glite-lb-client-java-axis.jar: genws compile-java-lb2
+       cd build/classes && ${jdk_prefix}/bin/jar cf ../$@ $(addprefix org/glite/lb/,$(AXIS_CLASSES))
+       cd build && ${jdk_prefix}/bin/jar uf $@ holders org/glite/wsdl
+       ${jdk_prefix}/bin/jar i build/$@
 
 build-c:
        ${JAVAH} -classpath build:build/classes -jni -d build org.glite.lb.ContextIL
@@ -94,7 +103,9 @@ build/classes/examples: ${FULL_EXAMPLES} ${SSL_EXAMPLES} ${TM_EXAMPLES}
        cp ${FULL_EXAMPLES} build/classes/examples/src
        cp ${SSL_EXAMPLES} build/classes/examples/src/simple-ssl
        cp ${TM_EXAMPLES} build/classes/examples/src/simple-trustmanager
-       cd build/classes/examples && ${jdk_prefix}/bin/jar cfi lb-client-java-examples.jar src org $(addsuffix .class,$(basename $(notdir ${FULL_EXAMPLES}))) && ${jdk_prefix}/bin/jar i lb-client-java-examples.jar
+
+glite-lb-client-java-examples.jar: examples
+       cd build/classes/examples && ${jdk_prefix}/bin/jar cf $@ src org $(addsuffix .class,$(basename $(notdir ${FULL_EXAMPLES}))) && ${jdk_prefix}/bin/jar i $@
 
 genevents: build/gen
 
@@ -115,8 +126,9 @@ stage:
 
 install:
        mkdir -p ${DESTDIR}${PREFIX}${prefix}/share/java
-       cp build/lb-client-java.jar ${DESTDIR}${PREFIX}${prefix}/share/java
-       cp build/classes/examples/lb-client-java-examples.jar ${DESTDIR}${PREFIX}${prefix}/share/java
+       cp build/glite-lb-client-java.jar ${DESTDIR}${PREFIX}${prefix}/share/java
+       cp build/glite-lb-client-java-axis.jar ${DESTDIR}${PREFIX}${prefix}/share/java
+       cp build/classes/examples/glite-lb-client-java-examples.jar ${DESTDIR}${PREFIX}${prefix}/share/java
        cd build/c && $(MAKE) install PREFIX=${PREFIX}
 
 clean:
index 990e32d..d125c60 100644 (file)
@@ -4,14 +4,29 @@ Maintainer: @MAINTAINER@
 Uploaders: @UPLOADERS@
 Build-Depends: debhelper (>= 7.0.50~), ant, default-jdk, emi-trustmanager, emi-trustmanager-axis, glite-jobid-api-java, glite-lb-types, glite-lb-ws-interface, libaxis-java, libcommons-lang-java, libtool
 Standards-Version: 3.9.1
-Section: misc
+Section: java
 Homepage: @URL@
 DM-Upload-Allowed: yes
 @DEBIAN_VCS@
 
-Package: glite-lb-client-java
-Section: misc
+Package: libglite-lb-client-java
+Section: java
 Architecture: any
-Depends: ${misc:Depends}, emi-trustmanager-axis, emi-trustmanager, glite-jobid-api-java, libcommons-lang-java
+Depends: ${misc:Depends}, glite-jobid-api-java, libcommons-lang-java
 Description: @SUMMARY@
 @DEBIAN_DESCRIPTION@
+
+Package: libglite-lb-client-axis-java
+Section: java
+Architecture: all
+Depends: ${misc:Depends}, emi-trustmanager-axis, emi-trustmanager, glite-jobid-api-java, libcommons-lang-java, libglite-lb-client-java
+Description: Axis 1.4 flavor of Java L&B client
+ This package contains java L&B client library based on Axis 1.4.
+
+Package: glite-lb-client-java-examples
+Section: java
+Architecture: all
+Depends: ${misc:Depends}, emi-trustmanager-axis, emi-trustmanager, glite-jobid-api-java, libglite-lb-client-java, libglite-lb-client-axis
+Description: Java L&B client examples
+ This package contains java L&B client examples for Axis 1.4. For the
+ communication is used trustmanager or pure SSL.
diff --git a/org.glite.lb.client-java/project/debian.glite-lb-client-java-examples.install b/org.glite.lb.client-java/project/debian.glite-lb-client-java-examples.install
new file mode 100644 (file)
index 0000000..c3ddf73
--- /dev/null
@@ -0,0 +1 @@
+usr/share/java/glite-lb-client-java-examples.jar
diff --git a/org.glite.lb.client-java/project/debian.glite-lb-client-java.install b/org.glite.lb.client-java/project/debian.glite-lb-client-java.install
deleted file mode 100644 (file)
index ec8a5cc..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-usr/lib/*
-usr/share/java/*.jar
diff --git a/org.glite.lb.client-java/project/debian.libglite-lb-client-axis-java.dirs b/org.glite.lb.client-java/project/debian.libglite-lb-client-axis-java.dirs
new file mode 100644 (file)
index 0000000..13c9f03
--- /dev/null
@@ -0,0 +1 @@
+usr/share/java
diff --git a/org.glite.lb.client-java/project/debian.libglite-lb-client-axis-java.install b/org.glite.lb.client-java/project/debian.libglite-lb-client-axis-java.install
new file mode 100644 (file)
index 0000000..9b46bae
--- /dev/null
@@ -0,0 +1 @@
+usr/share/java/glite-lb-client-java-axis.jar
diff --git a/org.glite.lb.client-java/project/debian.libglite-lb-client-java.dirs b/org.glite.lb.client-java/project/debian.libglite-lb-client-java.dirs
new file mode 100644 (file)
index 0000000..13c9f03
--- /dev/null
@@ -0,0 +1 @@
+usr/share/java
diff --git a/org.glite.lb.client-java/project/debian.libglite-lb-client-java.install b/org.glite.lb.client-java/project/debian.libglite-lb-client-java.install
new file mode 100644 (file)
index 0000000..621cf81
--- /dev/null
@@ -0,0 +1,2 @@
+usr/lib/*
+usr/share/java/glite-lb-client-java.jar
index 6a7a8c7..035e595 100644 (file)
@@ -3,6 +3,10 @@
 
 -include /usr/share/dpkg/buildflags.mk
 
+p_lib=libglite-lb-client-java
+p_axis=libglite-lb-client-axis-java
+p_examples=glite-lb-client-java-examples
+
 # Uncomment this to turn on verbose mode.
 export DH_VERBOSE=1
 
@@ -36,6 +40,10 @@ install: build-stamp
        dh_prep
        dh_installdirs
        $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp
+       mkdir -p debian/$(p_axis)/usr/share/doc
+       mkdir -p debian/$(p_examples)/usr/share/doc
+       ln -s $(p_lib) debian/$(p_axis)/usr/share/doc/$(p_axis)
+       ln -s $(p_lib) debian/$(p_examples)/usr/share/doc/$(p_examples)
        rm -vf debian/tmp/usr/lib/*.la
        rm -vf debian/tmp/usr/lib/*.a
 
index 8c999a9..758feb2 100644 (file)
@@ -24,16 +24,51 @@ BuildRequires:  glite-lb-types
 BuildRequires:  glite-lb-ws-interface
 BuildRequires:  jakarta-commons-lang
 BuildRequires:  java-devel
+BuildRequires:  jpackage-utils
 BuildRequires:  libtool
-Requires:       emi-trustmanager-axis
-Requires:       emi-trustmanager
 Requires:       glite-jobid-api-java
 Requires:       jakarta-commons-lang
+Requires:       jpackage-utils
 
 %description
 @DESCRIPTION@
 
 
+%package        axis
+Summary:        Axis 1.4 flavor of Java L&B client
+Group:          System Environment/Libraries
+Requires:       %{name} = %{version}-%{release}
+Requires:       emi-trustmanager-axis
+Requires:       emi-trustmanager
+Requires:       glite-jobid-api-java
+Requires:       jakarta-commons-lang
+Requires:       jpackage-utils
+%if 0%{?rhel} >= 6
+BuildArch:      noarch
+%endif
+
+%description    axis
+This package contains java L&B client library based on Axis 1.4.
+
+
+%package        examples
+Summary:        Java L&B client examples
+Group:          Applications/Communications
+Requires:       %{name} = %{version}-%{release}
+Requires:       %{name}-axis
+Requires:       emi-trustmanager-axis
+Requires:       emi-trustmanager
+Requires:       glite-jobid-api-java
+Requires:       jpackage-utils
+%if 0%{?rhel} >= 6
+BuildArch:      noarch
+%endif
+
+%description    examples
+This package contains java L&B client examples for Axis 1.4. For the
+communication is used trustmanager or pure SSL.
+
+
 %prep
 %setup -q
 
@@ -72,8 +107,15 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/libglite_lb_sendviasocket.so
 %{_libdir}/libglite_lb_sendviasocket.so.0
 %{_libdir}/libglite_lb_sendviasocket.so.0.0.0
-/usr/share/java/lb-client-java.jar
-/usr/share/java/lb-client-java-examples.jar
+%{_javadir}/%{name}.jar
+
+%files axis
+%defattr(-,root,root)
+%{_javadir}/%{name}-axis.jar
+
+%files examples
+%defattr(-,root,root)
+%{_javadir}/%{name}-examples.jar
 
 
 %changelog