[packages/norm] - updated to 1.5.8 (as 1.5r8 to avoid epoch bump) - added c++ patch (fix invalid bool to pointer cas

qboosh qboosh at pld-linux.org
Fri Apr 12 20:01:17 CEST 2019


commit 7ccaa50b7f4916b9a3576cff574bc08d47d05312
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Fri Apr 12 20:01:15 2019 +0200

    - updated to 1.5.8 (as 1.5r8 to avoid epoch bump)
    - added c++ patch (fix invalid bool to pointer cast)
    - added link patch (fix JNI library linking with libnorm)

 norm-c++.patch  | 11 +++++++++++
 norm-link.patch | 11 +++++++++++
 norm.spec       | 24 ++++++++++++++++++------
 3 files changed, 40 insertions(+), 6 deletions(-)
---
diff --git a/norm.spec b/norm.spec
index 01d3f06..c0c4e38 100644
--- a/norm.spec
+++ b/norm.spec
@@ -6,13 +6,18 @@
 Summary:	NACK-Oriented Reliable Multicast library
 Summary(pl.UTF-8):	Biblioteka NACK-Oriented Reliable Multicast
 Name:		norm
-Version:	1.5r6
-Release:	2
+# upstream changed versioning scheme 1.5r6 -> 1.5.7, but rpm says thay 1.5r6 > 1.5.8
+# so let's delay switching to avoid epoch bumps until 1.6.x series
+Version:	1.5r8
+%define	fver	%(echo %{version} | tr r .)
+Release:	1
 License:	BSD
 Group:		Libraries
-Source0:	http://downloads.pf.itd.nrl.navy.mil/norm/src-%{name}-%{version}.tgz
-# Source0-md5:	e9a5c735ce4ec5b8c3597e4706c1e5a9
-URL:		http://www.nrl.navy.mil/itd/ncs/products/norm
+Source0:	https://downloads.pf.itd.nrl.navy.mil/norm/src-%{name}-%{fver}.tgz
+# Source0-md5:	6c4da91ea600643005297d8b6e8e1a04
+Patch0:		%{name}-c++.patch
+Patch1:		%{name}-link.patch
+URL:		https://www.nrl.navy.mil/itd/ncs/products/norm
 %{?with_java:BuildRequires:	jdk}
 BuildRequires:	libstdc++-devel
 %{?with_python:BuildRequires:	python-devel >= 1:2.5}
@@ -67,7 +72,9 @@ głównym pakiecie. Zawiera także kilka dodatkowych modułów w pakiecie
 extra; pozwalają one na wykorzystanie NORM na wyższym poziomie.
 
 %prep
-%setup -q
+%setup -q -n %{name}-%{fver}
+%patch0 -p1
+%patch1 -p1
 
 %build
 %waf configure \
@@ -103,6 +110,9 @@ rm -rf $RPM_BUILD_ROOT
 %post	-p /sbin/ldconfig
 %postun	-p /sbin/ldconfig
 
+%post	-n java-norm -p /sbin/ldconfig
+%postun	-n java-norm -p /sbin/ldconfig
+
 %files
 %defattr(644,root,root,755)
 %doc LICENSE.TXT README.TXT TODO.TXT VERSION.TXT
@@ -121,6 +131,8 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 %doc README-Java.txt
 %attr(755,root,root) %{_libdir}/libProtolibJni.so
+%attr(755,root,root) %{_libdir}/libmil_navy_nrl_norm.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libmil_navy_nrl_norm.so.1
 %attr(755,root,root) %{_libdir}/libmil_navy_nrl_norm.so
 %{_javadir}/norm.jar
 %endif
diff --git a/norm-c++.patch b/norm-c++.patch
new file mode 100644
index 0000000..0c58a7b
--- /dev/null
+++ b/norm-c++.patch
@@ -0,0 +1,11 @@
+--- norm-1.5.8/src/java/jni/normInstanceJni.cpp.orig	2018-05-03 20:16:54.000000000 +0200
++++ norm-1.5.8/src/java/jni/normInstanceJni.cpp	2019-04-12 15:49:16.266929530 +0200
+@@ -182,7 +182,7 @@
+   
+   if (env->GetArrayLength(array) <= event.type) {
+     env->ThrowNew((jclass)env->NewLocalRef(jw_IOException), "Invalid NORM event type (NormEventType.java out of sync with NORM API event header?)");
+-    return false;
++    return NULL;
+   }
+       
+   jobject type = env->GetObjectArrayElement(array, event.type);
diff --git a/norm-link.patch b/norm-link.patch
new file mode 100644
index 0000000..76890a6
--- /dev/null
+++ b/norm-link.patch
@@ -0,0 +1,11 @@
+--- norm-1.5.8/wscript.orig	2018-07-07 19:10:14.000000000 +0200
++++ norm-1.5.8/wscript	2019-04-12 18:09:25.511372745 +0200
+@@ -132,7 +132,7 @@
+     if ctx.env.BUILD_JAVA:
+         ctx.shlib(
+             target = 'mil_navy_nrl_norm',
+-            use = ['norm_shlib', 'JAVA'],
++            use = ['norm', 'JAVA'],
+ 		    vnum = VERSION,
+             source = ['src/java/jni/{0}.cpp'.format(x) for x in [
+                 'normJni',
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/norm.git/commitdiff/7ccaa50b7f4916b9a3576cff574bc08d47d05312



More information about the pld-cvs-commit mailing list