[packages/rpm] add java_min_classdataversion support

glen glen at pld-linux.org
Tue Jan 10 17:06:08 CET 2017


commit e9576b98b1c166be5e164c20df8d8659bb0431be
Author: Elan Ruusamäe <glen at delfi.ee>
Date:   Tue Jan 10 18:05:17 2017 +0200

    add java_min_classdataversion support
    
    http://lists.pld-linux.org/mailman/pipermail/pld-devel-en/2017-January/025273.html

 rpm-java-requires  | 19 +++++++++++++++----
 rpm-javadeps.patch |  2 +-
 rpm.spec           |  2 +-
 3 files changed, 17 insertions(+), 6 deletions(-)
---
diff --git a/rpm.spec b/rpm.spec
index 8901531..2e537c1 100644
--- a/rpm.spec
+++ b/rpm.spec
@@ -51,7 +51,7 @@ Summary(ru.UTF-8):	Менеджер пакетов от RPM
 Summary(uk.UTF-8):	Менеджер пакетів від RPM
 Name:		rpm
 Version:	5.4.15
-Release:	38
+Release:	39
 License:	LGPL v2.1
 Group:		Base
 # http://rpm5.org/files/rpm/rpm-5.4/rpm-5.4.15-0.20140824.src.rpm
diff --git a/rpm-java-requires b/rpm-java-requires
old mode 100644
new mode 100755
index dc069c8..8bbac6f
--- a/rpm-java-requires
+++ b/rpm-java-requires
@@ -16,9 +16,23 @@ export PATH="/sbin:/usr/sbin:/bin:/usr/bin"
 # xsltproc for eclipse feature.xml
 : ${xsltproc=/usr/bin/xsltproc}
 
+# "%define java_min_classdataversion 51.0" in spec to minimum version to be 51.0
+: ${MIN_CLASSDATAVERSION=}
+
 # save $- state, to enable in functions
 debug=$-
 
+javaclassversionfilter() {
+	if [ "$MIN_CLASSDATAVERSION" ]; then
+		set -- $* "$MIN_CLASSDATAVERSION"
+	fi
+
+	local v
+	for v in $*; do
+		echo "java(ClassDataVersion) >= $v"
+	done | sort -V | tail -n 1
+}
+
 javaclassversion() {
 	set -$debug
 	local mode=$1; shift
@@ -33,10 +47,7 @@ javaclassversion() {
 		return 1
 	fi
 
-	local v
-	for v in $classver; do
-		echo "java(ClassDataVersion) >= $v"
-	done
+	javaclassversionfilter $classver
 	return 0
 }
 
diff --git a/rpm-javadeps.patch b/rpm-javadeps.patch
index 9a88b49..3e8303c 100644
--- a/rpm-javadeps.patch
+++ b/rpm-javadeps.patch
@@ -20,7 +20,7 @@
 -%__java_provides	%{_rpmhome}/javadeps.sh --provides
 -%__java_requires	%{_rpmhome}/javadeps.sh --requires
 +%__java_provides	%{nil}
-+%__java_requires	env RPM_BUILD_ROOT=%{buildroot} %{_rpmhome}/java-find-requires
++%__java_requires	env RPM_BUILD_ROOT=%{buildroot} MIN_CLASSDATAVERSION=%{?java_min_classdataversion} %{_rpmhome}/java-find-requires
  
  #	The value of CLASSPATH in build scriptlets (iff configured).
  #	
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/rpm.git/commitdiff/e9576b98b1c166be5e164c20df8d8659bb0431be



More information about the pld-cvs-commit mailing list