msrb pushed to javapackages-tools (master). "Merge branch 'master' into jenkins (..more)"

notifications at fedoraproject.org notifications at fedoraproject.org
Thu Apr 9 08:35:31 UTC 2015


>From d27d04c3073d30ed7b4e7460095bb2682f4d3403 Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb at redhat.com>
Date: Fri, 9 May 2014 14:05:32 +0200
Subject: Improve support for SCLs


diff --git a/0003-macros-Fix-add_maven_depmap-for-SCL-usage.patch b/0003-macros-Fix-add_maven_depmap-for-SCL-usage.patch
new file mode 100644
index 0000000..ccc56d1
--- /dev/null
+++ b/0003-macros-Fix-add_maven_depmap-for-SCL-usage.patch
@@ -0,0 +1,38 @@
+From cf8978c21d0a6f0bf9a00983f123597c8bb331b6 Mon Sep 17 00:00:00 2001
+From: Michal Srb <msrb at redhat.com>
+Date: Wed, 12 Feb 2014 18:24:13 +0100
+Subject: [PATCH 2/3] [macros] Fix add_maven_depmap for SCL usage
+
+Use %{pkg_name} when calling without arguments
+Let's make sure we install fragment file without prefix
+---
+ etc/macros.fjava | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/etc/macros.fjava b/etc/macros.fjava
+index bdfd624..e2a41e6 100644
+--- a/etc/macros.fjava
++++ b/etc/macros.fjava
+@@ -52,8 +52,8 @@
+ set -e \
+ # default values \
+ %if %# == 0 \
+-   _pompart="JPP-%{name}.pom" \
+-   _jarpart="%{name}.jar" \
++   _pompart="JPP-%{?scl:%{pkg_name}}%{!?scl:%{name}}.pom" \
++   _jarpart="%{?scl:%{pkg_name}}%{!?scl:%{name}}.jar" \
+ %else \
+    _pompart="%1" \
+    _jarpart="%2" \
+@@ -67,7 +67,7 @@ for _dir in %{_jnidir} %{_javajnidir} %{_javadir}; do \
+ done \
+ python -m %{javadir}-utils/maven_depmap %{-a} %{-v*:-r %{-v*}} \\\
+           -p "%{_prefix}" -n "%{?scl}" \\\
+-          %{buildroot}%{_mavendepmapfragdir}/%{name}%{-f*:-%{-f*}} \\\
++          %{buildroot}%{_mavendepmapfragdir}/%{?scl:%{pkg_name}}%{!?scl:%{name}}%{-f*:-%{-f*}} \\\
+           %{buildroot}%{_mavenpomdir}/$_pompart \\\
+ %if %# == 2 \
+           "${_jpath}" \\\
+-- 
+1.8.5.3
+
diff --git a/0004-macros-Fix-xmvn-install-for-SCL-usage.patch b/0004-macros-Fix-xmvn-install-for-SCL-usage.patch
new file mode 100644
index 0000000..26472e2
--- /dev/null
+++ b/0004-macros-Fix-xmvn-install-for-SCL-usage.patch
@@ -0,0 +1,26 @@
+From 8c19c2aeaf637d39ade97c6b644ca174b3a8a8d0 Mon Sep 17 00:00:00 2001
+From: Stanislav Ochotnicky <sochotnicky at redhat.com>
+Date: Tue, 11 Feb 2014 11:33:17 +0100
+Subject: [PATCH 3/3] [macros] Fix xmvn-install for SCL usage
+
+The passed package name was incorrect for xmvn-install
+---
+ etc/macros.xmvn | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/etc/macros.xmvn b/etc/macros.xmvn
+index 5ec8123..707dac2 100644
+--- a/etc/macros.xmvn
++++ b/etc/macros.xmvn
+@@ -141,7 +141,7 @@
+ # buildroot. It is intended to be placed in %install section of spec file.
+ #
+ %mvn_install(J:X) \
+-xmvn-install %{?-X} -R .xmvn-reactor -n "${RPM_PACKAGE_NAME}" -d "%{buildroot}" \
++xmvn-install %{?-X} -R .xmvn-reactor -n %{?scl:%{pkg_name}}%{!?scl:%{name}} -d "%{buildroot}" \
+ jdir="%{-J*:%{-J*}}%{!-J*:target/site/apidocs}" \
+ if [ -d "${jdir}" ]; then \
+    install -dm755 %{buildroot}%{_javadocdir}/%{name} \
+-- 
+1.8.5.3
+
diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index ab82f97..b1dbe8a 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -1,6 +1,6 @@
 Name:           javapackages-tools
 Version:        3.5.0
-Release:        6%{?dist}
+Release:        7%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
@@ -14,6 +14,9 @@ Patch0:         0001-Add-support-for-installing-hpi.patch
 Patch1:         0001-depgenerators-Switch-to-require-java-headless-instea.patch
 Patch2:         0002-test-Fix-testsuite-for-java-headless-change.patch
 
+Patch3:         0003-macros-Fix-add_maven_depmap-for-SCL-usage.patch
+Patch4:         0004-macros-Fix-xmvn-install-for-SCL-usage.patch
+
 BuildArch:      noarch
 
 BuildRequires:  jpackage-utils
@@ -124,6 +127,8 @@ Requires:       fedora-review
 %patch0 -p1
 %patch1 -p1
 %patch2 -p1
+%patch3 -p1
+%patch4 -p1
 
 %build
 %configure
@@ -161,6 +166,9 @@ popd
 
 
 %changelog
+* Wed Apr 30 2014 Michal Srb <msrb at redhat.com> - 3.5.0-7
+- Improve support for SCLs
+
 * Wed Apr 16 2014 Mikolaj Izdebski <mizdebsk at redhat.com> - 3.5.0-6
 - Add explicit maven-local requires on java-1.8.0-openjdk-devel
 
-- 
cgit v0.10.2


>From 5449a7daaf38a3001070e5ea9808d3320bdb6e73 Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb at redhat.com>
Date: Wed, 28 May 2014 08:13:24 +0200
Subject: Generate requires on POM artifacts with "pom" extension


diff --git a/0001-generate-correct-requires-on-poms.patch b/0001-generate-correct-requires-on-poms.patch
new file mode 100644
index 0000000..5805d06
--- /dev/null
+++ b/0001-generate-correct-requires-on-poms.patch
@@ -0,0 +1,28 @@
+From fdeb8bb300c10bfda861d602e84d2befd429d1c4 Mon Sep 17 00:00:00 2001
+From: Michal Srb <msrb at redhat.com>
+Date: Wed, 28 May 2014 08:08:42 +0200
+Subject: [PATCH] [maven.req] Generate correct requires on POMs
+
+All POM files in Rawhide should be fixed now
+---
+ depgenerators/maven.req | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/depgenerators/maven.req b/depgenerators/maven.req
+index 5bd6c34..eeab8d6 100755
+--- a/depgenerators/maven.req
++++ b/depgenerators/maven.req
+@@ -131,10 +131,6 @@ class TagBuilder:
+                         version=m_provided.version))
+                     break
+             else:
+-                # TODO: remove when not needed
+-                # do not generate requires like "a:b:pom:" yet
+-                if dependency.extension == "pom":
+-                    dependency.extension = ""
+                 print(dependency.get_rpm_str(dependency.version))
+ 
+         if unknown_deps:
+-- 
+1.9.3
+
diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index b1dbe8a..8a6e246 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -1,6 +1,6 @@
 Name:           javapackages-tools
 Version:        3.5.0
-Release:        7%{?dist}
+Release:        8%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
@@ -17,6 +17,8 @@ Patch2:         0002-test-Fix-testsuite-for-java-headless-change.patch
 Patch3:         0003-macros-Fix-add_maven_depmap-for-SCL-usage.patch
 Patch4:         0004-macros-Fix-xmvn-install-for-SCL-usage.patch
 
+Patch5:         0001-generate-correct-requires-on-poms.patch
+
 BuildArch:      noarch
 
 BuildRequires:  jpackage-utils
@@ -166,6 +168,9 @@ popd
 
 
 %changelog
+* Wed May 28 2014 Michal Srb <msrb at redhat.com> - 3.5.0-8
+- Generate requires on POM artifacts with "pom" extension
+
 * Wed Apr 30 2014 Michal Srb <msrb at redhat.com> - 3.5.0-7
 - Improve support for SCLs
 
-- 
cgit v0.10.2


>From de1e9d78736130eed8edb4bc94be85d1a5e112c3 Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb at redhat.com>
Date: Wed, 28 May 2014 08:50:00 +0200
Subject: Apply the patch from my previous commit


diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index 8a6e246..8c3e26c 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -1,6 +1,6 @@
 Name:           javapackages-tools
 Version:        3.5.0
-Release:        8%{?dist}
+Release:        9%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
@@ -131,6 +131,7 @@ Requires:       fedora-review
 %patch2 -p1
 %patch3 -p1
 %patch4 -p1
+%patch5 -p1
 
 %build
 %configure
@@ -168,6 +169,9 @@ popd
 
 
 %changelog
+* Wed May 28 2014 Michal Srb <msrb at redhat.com> - 3.5.0-9
+- Apply the patch from my previous commit
+
 * Wed May 28 2014 Michal Srb <msrb at redhat.com> - 3.5.0-8
 - Generate requires on POM artifacts with "pom" extension
 
-- 
cgit v0.10.2


>From d75a3d6933c2494f343a45757bc6053512b5b99e Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb at redhat.com>
Date: Thu, 29 May 2014 08:30:57 +0200
Subject: Add new sources for 4.0.0 and remove old patches


diff --git a/.gitignore b/.gitignore
index fa67ae2..9ca17cd 100644
--- a/.gitignore
+++ b/.gitignore
@@ -59,3 +59,4 @@
 /javapackages-3.4.1.tar.xz
 /javapackages-3.4.2.tar.xz
 /javapackages-3.5.0.tar.xz
+/javapackages-4.0.0.tar.xz
diff --git a/0001-Add-support-for-installing-hpi.patch b/0001-Add-support-for-installing-hpi.patch
deleted file mode 100644
index e5526a2..0000000
--- a/0001-Add-support-for-installing-hpi.patch
+++ /dev/null
@@ -1,85 +0,0 @@
-diff --git a/configs/configuration-20-rpmbuild-raw.xml b/configs/configuration-20-rpmbuild-raw.xml
-index eb99908..9ab7b30 100644
---- a/configs/configuration-20-rpmbuild-raw.xml
-+++ b/configs/configuration-20-rpmbuild-raw.xml
-@@ -37,6 +37,18 @@
-       </stereotypes>
-     </repository>
-     <repository>
-+      <id>jenkins-plugin</id>
-+      <type>jpp</type>
-+      <properties>
-+        <root>usr/share/jenkins/plugins</root>
-+      </properties>
-+      <stereotypes>
-+        <stereotype>
-+          <extension>hpi</extension>
-+        <stereotype>
-+      </stereotypes>
-+    </repository>
-+    <repository>
-       <id>base-jni</id>
-       <type>jpp</type>
-       <properties>
-diff --git a/configs/configuration-20-rpmbuild.xml b/configs/configuration-20-rpmbuild.xml
-index 5ecb4ba..7a7b543 100644
---- a/configs/configuration-20-rpmbuild.xml
-+++ b/configs/configuration-20-rpmbuild.xml
-@@ -49,6 +49,18 @@
-       </stereotypes>
-     </repository>
-     <repository>
-+      <id>jenkins-plugin</id>
-+      <type>jpp</type>
-+      <properties>
-+        <root>usr/share/jenkins/plugins</root>
-+      </properties>
-+      <stereotypes>
-+        <stereotype>
-+          <extension>hpi</extension>
-+        </stereotype>
-+      </stereotypes>
-+    </repository>
-+    <repository>
-       <id>base-jni</id>
-       <type>jpp</type>
-       <properties>
-diff --git a/configs/configuration-20.xml b/configs/configuration-20.xml
-index 1186b46..fa6798d 100644
---- a/configs/configuration-20.xml
-+++ b/configs/configuration-20.xml
-@@ -86,6 +86,18 @@
-       </stereotypes>
-     </repository>
-     <repository>
-+      <id>jenkins-plugin</id>
-+      <type>jpp</type>
-+      <properties>
-+        <root>usr/share/jenkins/plugins</root>
-+      </properties>
-+      <stereotypes>
-+        <stereotype>
-+          <extension>hpi</extension>
-+        </stereotype>
-+      </stereotypes>
-+    </repository>
-+    <repository>
-       <id>base-jni</id>
-       <type>jpp</type>
-       <properties>
-@@ -107,6 +119,7 @@
-           <repository>base-raw-pom</repository>
-           <repository>base-jar</repository>
-           <repository>base-jni</repository>
-+          <repository>jenkins-plugin</repository>
-         </repositories>
-       </configuration>
-     </repository>
-@@ -118,6 +131,7 @@
-           <repository>base-raw-pom</repository>
-           <repository>base-jni</repository>
-           <repository>base-jar</repository>
-+          <repository>jenkins-plugin</repository>
-         </repositories>
-       </configuration>
-     </repository>
diff --git a/0001-depgenerators-Switch-to-require-java-headless-instea.patch b/0001-depgenerators-Switch-to-require-java-headless-instea.patch
deleted file mode 100644
index 172ef22..0000000
--- a/0001-depgenerators-Switch-to-require-java-headless-instea.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 102fee5e1e7661356502ca89d6a73889b826af6b Mon Sep 17 00:00:00 2001
-From: Stanislav Ochotnicky <sochotnicky at redhat.com>
-Date: Wed, 29 Jan 2014 17:23:28 +0100
-Subject: [PATCH 01/15] [depgenerators] Switch to require java-headless instead
- java
-
----
- depgenerators/maven.req | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/depgenerators/maven.req b/depgenerators/maven.req
-index 5bd6c34..c161e3d 100755
---- a/depgenerators/maven.req
-+++ b/depgenerators/maven.req
-@@ -158,7 +158,7 @@ class TagBuilder:
-                             "%mvn_package {art} <package_name>\n".format(art=skipped)
-             raise Exception(skipped_msg)
- 
--        reqs = {'java': depmap.get_java_requires(),
-+        reqs = {'java-headless': depmap.get_java_requires(),
-                 'java-devel': depmap.get_java_devel_requires()}
-         for name, version in reqs.iteritems():
-             self.__process_jvm_req(name, version)
--- 
-1.8.5.3
-
diff --git a/0001-generate-correct-requires-on-poms.patch b/0001-generate-correct-requires-on-poms.patch
deleted file mode 100644
index 5805d06..0000000
--- a/0001-generate-correct-requires-on-poms.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From fdeb8bb300c10bfda861d602e84d2befd429d1c4 Mon Sep 17 00:00:00 2001
-From: Michal Srb <msrb at redhat.com>
-Date: Wed, 28 May 2014 08:08:42 +0200
-Subject: [PATCH] [maven.req] Generate correct requires on POMs
-
-All POM files in Rawhide should be fixed now
----
- depgenerators/maven.req | 4 ----
- 1 file changed, 4 deletions(-)
-
-diff --git a/depgenerators/maven.req b/depgenerators/maven.req
-index 5bd6c34..eeab8d6 100755
---- a/depgenerators/maven.req
-+++ b/depgenerators/maven.req
-@@ -131,10 +131,6 @@ class TagBuilder:
-                         version=m_provided.version))
-                     break
-             else:
--                # TODO: remove when not needed
--                # do not generate requires like "a:b:pom:" yet
--                if dependency.extension == "pom":
--                    dependency.extension = ""
-                 print(dependency.get_rpm_str(dependency.version))
- 
-         if unknown_deps:
--- 
-1.9.3
-
diff --git a/0002-test-Fix-testsuite-for-java-headless-change.patch b/0002-test-Fix-testsuite-for-java-headless-change.patch
deleted file mode 100644
index b2c3f4e..0000000
--- a/0002-test-Fix-testsuite-for-java-headless-change.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 7cf7e60b9ce308cf7d0cbbe3da142781ce736696 Mon Sep 17 00:00:00 2001
-From: Stanislav Ochotnicky <sochotnicky at redhat.com>
-Date: Wed, 29 Jan 2014 17:40:39 +0100
-Subject: [PATCH 02/15] [test] Fix testsuite for java-headless change
-
----
- test/maven_req_test.py | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/test/maven_req_test.py b/test/maven_req_test.py
-index 4551bb5..b99672f 100644
---- a/test/maven_req_test.py
-+++ b/test/maven_req_test.py
-@@ -26,7 +26,7 @@ class TestMavenReq(unittest.TestCase):
-     @mavenreq(["require-java/require.xml"])
-     def test_require_java(self, stdout, stderr, return_value):
-         self.assertEquals(return_value, 0, stderr)
--        self.assertEquals(stdout, "jpackage-utils\nmvn(org.apache.maven:maven-project)\njava >= 1:1.6\n")
-+        self.assertEquals(stdout, "jpackage-utils\nmvn(org.apache.maven:maven-project)\njava-headless >= 1:1.6\n")
- 
-     @mavenreq(["require-java-devel/require.xml"])
-     def test_require_java_devel(self, stdout, stderr, return_value):
-@@ -36,7 +36,7 @@ class TestMavenReq(unittest.TestCase):
-     @mavenreq(["require-java-both/require.xml"])
-     def test_require_java_both(self, stdout, stderr, return_value):
-         self.assertEquals(return_value, 0, stderr)
--        self.assertEquals(stdout, "jpackage-utils\nmvn(org.apache.maven:maven-project)\njava >= 1:1.6\njava-devel >= 1:1.6\n")
-+        self.assertEquals(stdout, "jpackage-utils\nmvn(org.apache.maven:maven-project)\njava-headless >= 1:1.6\njava-devel >= 1:1.6\n")
- 
-     @mavenreq(["require_parent/require.xml"])
-     def test_require_parent(self, stdout, stderr, return_value):
--- 
-1.8.5.3
-
diff --git a/0003-macros-Fix-add_maven_depmap-for-SCL-usage.patch b/0003-macros-Fix-add_maven_depmap-for-SCL-usage.patch
deleted file mode 100644
index ccc56d1..0000000
--- a/0003-macros-Fix-add_maven_depmap-for-SCL-usage.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From cf8978c21d0a6f0bf9a00983f123597c8bb331b6 Mon Sep 17 00:00:00 2001
-From: Michal Srb <msrb at redhat.com>
-Date: Wed, 12 Feb 2014 18:24:13 +0100
-Subject: [PATCH 2/3] [macros] Fix add_maven_depmap for SCL usage
-
-Use %{pkg_name} when calling without arguments
-Let's make sure we install fragment file without prefix
----
- etc/macros.fjava | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/etc/macros.fjava b/etc/macros.fjava
-index bdfd624..e2a41e6 100644
---- a/etc/macros.fjava
-+++ b/etc/macros.fjava
-@@ -52,8 +52,8 @@
- set -e \
- # default values \
- %if %# == 0 \
--   _pompart="JPP-%{name}.pom" \
--   _jarpart="%{name}.jar" \
-+   _pompart="JPP-%{?scl:%{pkg_name}}%{!?scl:%{name}}.pom" \
-+   _jarpart="%{?scl:%{pkg_name}}%{!?scl:%{name}}.jar" \
- %else \
-    _pompart="%1" \
-    _jarpart="%2" \
-@@ -67,7 +67,7 @@ for _dir in %{_jnidir} %{_javajnidir} %{_javadir}; do \
- done \
- python -m %{javadir}-utils/maven_depmap %{-a} %{-v*:-r %{-v*}} \\\
-           -p "%{_prefix}" -n "%{?scl}" \\\
--          %{buildroot}%{_mavendepmapfragdir}/%{name}%{-f*:-%{-f*}} \\\
-+          %{buildroot}%{_mavendepmapfragdir}/%{?scl:%{pkg_name}}%{!?scl:%{name}}%{-f*:-%{-f*}} \\\
-           %{buildroot}%{_mavenpomdir}/$_pompart \\\
- %if %# == 2 \
-           "${_jpath}" \\\
--- 
-1.8.5.3
-
diff --git a/0004-macros-Fix-xmvn-install-for-SCL-usage.patch b/0004-macros-Fix-xmvn-install-for-SCL-usage.patch
deleted file mode 100644
index 26472e2..0000000
--- a/0004-macros-Fix-xmvn-install-for-SCL-usage.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 8c19c2aeaf637d39ade97c6b644ca174b3a8a8d0 Mon Sep 17 00:00:00 2001
-From: Stanislav Ochotnicky <sochotnicky at redhat.com>
-Date: Tue, 11 Feb 2014 11:33:17 +0100
-Subject: [PATCH 3/3] [macros] Fix xmvn-install for SCL usage
-
-The passed package name was incorrect for xmvn-install
----
- etc/macros.xmvn | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/etc/macros.xmvn b/etc/macros.xmvn
-index 5ec8123..707dac2 100644
---- a/etc/macros.xmvn
-+++ b/etc/macros.xmvn
-@@ -141,7 +141,7 @@
- # buildroot. It is intended to be placed in %install section of spec file.
- #
- %mvn_install(J:X) \
--xmvn-install %{?-X} -R .xmvn-reactor -n "${RPM_PACKAGE_NAME}" -d "%{buildroot}" \
-+xmvn-install %{?-X} -R .xmvn-reactor -n %{?scl:%{pkg_name}}%{!?scl:%{name}} -d "%{buildroot}" \
- jdir="%{-J*:%{-J*}}%{!-J*:target/site/apidocs}" \
- if [ -d "${jdir}" ]; then \
-    install -dm755 %{buildroot}%{_javadocdir}/%{name} \
--- 
-1.8.5.3
-
diff --git a/sources b/sources
index f733f20..4a59577 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-c3eccf51b90a81e05b10e110fee603ed  javapackages-3.5.0.tar.xz
+58eb18136de46d69e30a1787aa874c3f  javapackages-4.0.0.tar.xz
-- 
cgit v0.10.2


>From e2f0c5d0ecb43090a6b6b90cead220f0791155f1 Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb at redhat.com>
Date: Thu, 29 May 2014 12:45:52 +0200
Subject: Backport patches for maven.req

- Remove com.sun:tools and sun.jdk:jconsole provides

diff --git a/0001-pom-Add-ability-to-read-parent-s-version.patch b/0001-pom-Add-ability-to-read-parent-s-version.patch
new file mode 100644
index 0000000..437fe56
--- /dev/null
+++ b/0001-pom-Add-ability-to-read-parent-s-version.patch
@@ -0,0 +1,34 @@
+From 0870cac2b02aef1e75aada3b4d235f76b0d4ee1e Mon Sep 17 00:00:00 2001
+From: Michal Srb <msrb at redhat.com>
+Date: Thu, 29 May 2014 10:23:07 +0200
+Subject: [PATCH 01/10] [pom] Add ability to read parent's version
+
+---
+ python/javapackages/pom.py | 11 +++++++++++
+ 1 file changed, 11 insertions(+)
+
+diff --git a/python/javapackages/pom.py b/python/javapackages/pom.py
+index 604728f..6c15813 100644
+--- a/python/javapackages/pom.py
++++ b/python/javapackages/pom.py
+@@ -95,6 +95,17 @@ class POM(object):
+             return gId.text.strip()
+ 
+     @property
++    def parentVersion(self):
++        """
++        version of the parent artifact of None
++        """
++        ver = self.__find('./pom:parent/pom:version')
++        if ver is None:
++            return None
++        else:
++            return ver.text.strip()
++
++    @property
+     def groupId(self):
+         """
+         Effective groupId of the pom Artifact taking into account parent groupId
+-- 
+1.9.3
+
diff --git a/0002-maven.req-Check-if-dependency-is-not-provided-by-sub.patch b/0002-maven.req-Check-if-dependency-is-not-provided-by-sub.patch
new file mode 100644
index 0000000..bd3e471
--- /dev/null
+++ b/0002-maven.req-Check-if-dependency-is-not-provided-by-sub.patch
@@ -0,0 +1,75 @@
+From 5224614066cfd01c02112a849fca3c7969202142 Mon Sep 17 00:00:00 2001
+From: Michal Srb <msrb at redhat.com>
+Date: Thu, 29 May 2014 10:24:39 +0200
+Subject: [PATCH 02/10] [maven.req] Check if dependency is not provided by
+ subpackage
+
+---
+ depgenerators/maven.req | 24 +++++++++++++++++-------
+ 1 file changed, 17 insertions(+), 7 deletions(-)
+
+diff --git a/depgenerators/maven.req b/depgenerators/maven.req
+index c81437b..eecb055 100755
+--- a/depgenerators/maven.req
++++ b/depgenerators/maven.req
+@@ -144,6 +144,15 @@ class TagBuilder(object):
+                 continue
+             self.print_mvn_requires(path)
+ 
++    def __is_provided_by_subpackage(self, dependency):
++        for provided in self.provided_artifacts:
++           if (provided.groupId == dependency.groupId and
++               provided.artifactId == dependency.artifactId and
++               provided.classifier == dependency.classifier and
++               provided.extension == dependency.extension):
++                return True
++        return False
++
+ 
+     def __generate_requires_from_pom(self, pomfile):
+         pom = POM(pomfile)
+@@ -151,6 +160,7 @@ class TagBuilder(object):
+         extensions = pom.get_extensions()
+         pgid = pom.parentGroupId
+         paid = pom.parentArtifactId
++        pver = pom.parentVersion
+ 
+         unresolvable = []
+ 
+@@ -158,7 +168,7 @@ class TagBuilder(object):
+         for p in plugins:
+             # TODO: namespaces
+             plug = Dependency(p.groupId, p.artifactId, requestedVersion=p.version)
+-            if resolve_artifact(plug.get_mvn_str()):
++            if resolve_artifact(plug.get_mvn_str()) or self.__is_provided_by_subpackage(plug):
+                 print(plug.get_rpm_str())
+             else:
+                 unresolvable.append(plug.get_mvn_str())
+@@ -173,18 +183,18 @@ class TagBuilder(object):
+         for e in extensions:
+             # TODO: namespaces
+             ext = Dependency(e.groupId, e.artifactId, requestedVersion=e.version)
+-            if resolve_artifact(ext.get_mvn_str()):
++            if resolve_artifact(ext.get_mvn_str()) or self.__is_provided_by_subpackage(ext):
+                 print(ext.get_rpm_str())
+             else:
+                 unresolvable.append(plug.get_mvn_str())
+ 
+-        if paid:
+-            parent_mvn_str = "{}:{}:pom:".format(pgid, paid)
+-            if resolve_artifact(parent_mvn_str):
++        if paid and pver:
++            parent_dep = Dependency(pgid, paid, requestedVersion=pver, extension="pom")
++            if resolve_artifact(parent_dep.get_mvn_str()) or self.__is_provided_by_subpackage(parent_dep):
+                 # TODO: namespaces
+-                print("mvn({})".format(parent_mvn_str))
++                print(parent_dep.get_rpm_str())
+             else:
+-                unresolvable.append(parent_mvn_str)
++                unresolvable.append(parent_dep.get_mvn_str())
+ 
+         if unresolvable:
+             raise Exception("Unable to generate requires on unresolvable artifact{}: {}"
+-- 
+1.9.3
+
diff --git a/0004-maven.req-Generate-versioned-deps-on-subpackages.patch b/0004-maven.req-Generate-versioned-deps-on-subpackages.patch
new file mode 100644
index 0000000..af506ff
--- /dev/null
+++ b/0004-maven.req-Generate-versioned-deps-on-subpackages.patch
@@ -0,0 +1,65 @@
+From 8cd3338ddfeef5965f05d5082695d9d72bcf4629 Mon Sep 17 00:00:00 2001
+From: Michal Srb <msrb at redhat.com>
+Date: Thu, 29 May 2014 11:28:57 +0200
+Subject: [PATCH 04/10] [maven.req] Generate versioned deps on subpackages
+
+---
+ depgenerators/maven.req | 19 ++++++++++++++-----
+ 1 file changed, 14 insertions(+), 5 deletions(-)
+
+diff --git a/depgenerators/maven.req b/depgenerators/maven.req
+index eecb055..56fd27f 100755
+--- a/depgenerators/maven.req
++++ b/depgenerators/maven.req
+@@ -150,8 +150,8 @@ class TagBuilder(object):
+                provided.artifactId == dependency.artifactId and
+                provided.classifier == dependency.classifier and
+                provided.extension == dependency.extension):
+-                return True
+-        return False
++                return provided.version
++        return None
+ 
+ 
+     def __generate_requires_from_pom(self, pomfile):
+@@ -168,8 +168,11 @@ class TagBuilder(object):
+         for p in plugins:
+             # TODO: namespaces
+             plug = Dependency(p.groupId, p.artifactId, requestedVersion=p.version)
+-            if resolve_artifact(plug.get_mvn_str()) or self.__is_provided_by_subpackage(plug):
++            aver = self.__is_provided_by_subpackage(plug)
++            if resolve_artifact(plug.get_mvn_str()):
+                 print(plug.get_rpm_str())
++            elif aver is not None:
++                print("{rpmstr} = {version}".format(rpmstr=plug.get_rpm_str(), version=aver))
+             else:
+                 unresolvable.append(plug.get_mvn_str())
+             for pd in p.dependencies:
+@@ -183,16 +186,22 @@ class TagBuilder(object):
+         for e in extensions:
+             # TODO: namespaces
+             ext = Dependency(e.groupId, e.artifactId, requestedVersion=e.version)
+-            if resolve_artifact(ext.get_mvn_str()) or self.__is_provided_by_subpackage(ext):
++            aver = self.__is_provided_by_subpackage(ext)
++            if resolve_artifact(ext.get_mvn_str()):
+                 print(ext.get_rpm_str())
++            elif aver is not None:
++                print("{rpmstr} = {version}".format(rpmstr=ext.get_rpm_str(), version=aver))
+             else:
+                 unresolvable.append(plug.get_mvn_str())
+ 
+         if paid and pver:
+             parent_dep = Dependency(pgid, paid, requestedVersion=pver, extension="pom")
+-            if resolve_artifact(parent_dep.get_mvn_str()) or self.__is_provided_by_subpackage(parent_dep):
++            aver = self.__is_provided_by_subpackage(parent_dep)
++            if resolve_artifact(parent_dep.get_mvn_str()):
+                 # TODO: namespaces
+                 print(parent_dep.get_rpm_str())
++            elif aver is not None:
++                print("{rpmstr} = {version}".format(rpmstr=parent_dep.get_rpm_str(), version=aver))
+             else:
+                 unresolvable.append(parent_dep.get_mvn_str())
+ 
+-- 
+1.9.3
+
diff --git a/0006-maven.req-Fix-self-dependency-detection-code.patch b/0006-maven.req-Fix-self-dependency-detection-code.patch
new file mode 100644
index 0000000..92dc6aa
--- /dev/null
+++ b/0006-maven.req-Fix-self-dependency-detection-code.patch
@@ -0,0 +1,31 @@
+From 424bba5b517fa1c458d7f11b10e577ba59585bd2 Mon Sep 17 00:00:00 2001
+From: Mikolaj Izdebski <mizdebsk at redhat.com>
+Date: Thu, 29 May 2014 13:08:11 +0200
+Subject: [PATCH 06/10] [maven.req] Fix self-dependency detection code
+
+---
+ depgenerators/maven.req | 5 +----
+ 1 file changed, 1 insertion(+), 4 deletions(-)
+
+diff --git a/depgenerators/maven.req b/depgenerators/maven.req
+index 56fd27f..a42162e 100755
+--- a/depgenerators/maven.req
++++ b/depgenerators/maven.req
+@@ -242,13 +242,10 @@ class TagBuilder(object):
+                     for compatVer in provided.compatVersions:
+                         if dependency.resolvedVersion == compatVer:
+                             return True
+-                        else:
+-                            return False
+                 elif (not dependency.resolvedVersion and
+                     not provided.is_compat()):
+                     return True
+-                else:
+-                    return False
++        return False
+ 
+ 
+     def filter_requires(self, requires):
+-- 
+1.9.3
+
diff --git a/0008-Fix-javapackages-metadata.xml.patch b/0008-Fix-javapackages-metadata.xml.patch
new file mode 100644
index 0000000..7e06c9f
--- /dev/null
+++ b/0008-Fix-javapackages-metadata.xml.patch
@@ -0,0 +1,26 @@
+From a48fe9f51512fe367d44519e41c94b24ef8af983 Mon Sep 17 00:00:00 2001
+From: Mikolaj Izdebski <mizdebsk at redhat.com>
+Date: Thu, 29 May 2014 13:38:56 +0200
+Subject: [PATCH 08/10] Fix javapackages-metadata.xml
+
+s/com.jdk:jconsole/sun.jdk:jconsole/
+---
+ etc/javapackages-metadata.xml | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/etc/javapackages-metadata.xml b/etc/javapackages-metadata.xml
+index 6f6c98e..1126a69 100644
+--- a/etc/javapackages-metadata.xml
++++ b/etc/javapackages-metadata.xml
+@@ -9,7 +9,7 @@
+             <path>${JAVA_HOME}/../lib/tools.jar</path>
+         </artifact>
+         <artifact>
+-            <groupId>com.jdk</groupId>
++            <groupId>sun.jdk</groupId>
+             <artifactId>jconsole</artifactId>
+             <version>SYSTEM</version>
+             <path>${JAVA_HOME}/../lib/jconsole.jar</path>
+-- 
+1.9.3
+
diff --git a/0010-maven.req-When-generating-req-from-POM-file-do-not-b.patch b/0010-maven.req-When-generating-req-from-POM-file-do-not-b.patch
new file mode 100644
index 0000000..6b9a279
--- /dev/null
+++ b/0010-maven.req-When-generating-req-from-POM-file-do-not-b.patch
@@ -0,0 +1,55 @@
+From 52525455278ad5801cf89a768b81499229af1f68 Mon Sep 17 00:00:00 2001
+From: Michal Srb <msrb at redhat.com>
+Date: Thu, 29 May 2014 13:45:52 +0200
+Subject: [PATCH 10/10] [maven.req] When generating req from POM file, do not
+ blindly take first POM file, but iterate over all of them and pick the right
+ one
+
+---
+ depgenerators/maven.req | 23 ++++++++++++++++++++---
+ 1 file changed, 20 insertions(+), 3 deletions(-)
+
+diff --git a/depgenerators/maven.req b/depgenerators/maven.req
+index aea1dd4..dea89d7 100755
+--- a/depgenerators/maven.req
++++ b/depgenerators/maven.req
+@@ -137,7 +137,9 @@ class TagBuilder(object):
+ 
+         if os.path.exists(XMVN_RESOLVE_PATH):
+             if is_it_pom_only_pkg(paths[0]):
+-                self.__generate_requires_from_pom(ppaths[0])
++                poms = self.__find_poms_for_metadata(ppaths, paths[0])
++                for p in poms:
++                    self.__generate_requires_from_pom(p)
+ 
+         for path in paths:
+             if path.endswith(".pom"):
+@@ -154,8 +156,23 @@ class TagBuilder(object):
+         return None
+ 
+ 
+-    def __generate_requires_from_pom(self, pomfile):
+-        pom = POM(pomfile)
++    # TODO: move functions like this to some POMUtils, or similar module
++    def __find_poms_for_metadata(self, pom_paths, metadata_path):
++        poms = []
++        depmap = Depmap([metadata_path])
++        provided = depmap.get_provided_artifacts()
++        for prov in provided:
++            for p in pom_paths:
++                pom = POM(p)
++                if (pom.groupId == prov.groupId and
++                    pom.artifactId == prov.artifactId and
++                    pom.version == prov.version):
++
++                    poms.append(pom)
++                    break
++        return poms
++
++    def __generate_requires_from_pom(self, pom):
+         plugins = pom.get_plugins()
+         extensions = pom.get_extensions()
+         pgid = pom.parentGroupId
+-- 
+1.9.3
+
diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index 48a6e0a..c18ca57 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -1,6 +1,6 @@
 Name:           javapackages-tools
 Version:        4.0.0
-Release:        1%{?dist}
+Release:        2%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
@@ -8,6 +8,14 @@ License:        BSD
 URL:            https://fedorahosted.org/javapackages/
 Source0:        https://fedorahosted.org/released/javapackages/javapackages-%{version}.tar.xz
 
+Patch0:         0001-pom-Add-ability-to-read-parent-s-version.patch
+Patch1:         0002-maven.req-Check-if-dependency-is-not-provided-by-sub.patch
+Patch2:         0004-maven.req-Generate-versioned-deps-on-subpackages.patch
+Patch3:         0006-maven.req-Fix-self-dependency-detection-code.patch
+Patch4:         0008-Fix-javapackages-metadata.xml.patch
+Patch5:         0010-maven.req-When-generating-req-from-POM-file-do-not-b.patch
+
+
 BuildArch:      noarch
 
 BuildRequires:  asciidoc
@@ -30,10 +38,6 @@ Requires:       python-javapackages = %{version}-%{release}
 Provides:       jpackage-utils = %{version}-%{release}
 Obsoletes:      jpackage-utils < %{version}-%{release}
 
-# Workaround for rhbz#1091385
-Provides:       mvn(com.sun:tools)
-Provides:       mvn(sun.jdk:jconsole)
-
 %description
 This package provides macros and scripts to support Java packaging.
 
@@ -133,6 +137,13 @@ This package provides non-essential macros and scripts to support Java packaging
 %prep
 %setup -q -n javapackages-%{version}
 
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
+%patch3 -p1
+%patch4 -p1
+%patch5 -p1
+
 %build
 %configure
 ./build
@@ -172,6 +183,10 @@ popd
 %doc LICENSE
 
 %changelog
+* Thu May 29 2014 Michal Srb <msrb at redhat.com> - 4.0.0-2
+- Backport patches for maven.req
+- Remove com.sun:tools and sun.jdk:jconsole provides
+
 * Thu May 29 2014 Michal Srb <msrb at redhat.com> - 4.0.0-1
 - Update to 4.0.0
 
-- 
cgit v0.10.2


>From adfc4ad28293fc82a88fad38f3f85876e213897b Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb at redhat.com>
Date: Thu, 29 May 2014 16:24:04 +0200
Subject: Add BR: javapackages-tools

no prov generator = no provides

diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index c18ca57..9ccd59b 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -1,6 +1,6 @@
 Name:           javapackages-tools
 Version:        4.0.0
-Release:        2%{?dist}
+Release:        3%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
@@ -28,6 +28,7 @@ BuildRequires:  scl-utils-build
 BuildRequires:  python-nose
 BuildRequires:  dia
 BuildRequires:  PyXB >= 1.2.3
+BuildRequires:  javapackages-tools >= 4.0.0
 
 Requires:       coreutils
 Requires:       libxslt
@@ -183,6 +184,9 @@ popd
 %doc LICENSE
 
 %changelog
+* Thu May 29 2014 Michal Srb <msrb at redhat.com> - 4.0.0-3
+- Add BR: javapackages-tools
+
 * Thu May 29 2014 Michal Srb <msrb at redhat.com> - 4.0.0-2
 - Backport patches for maven.req
 - Remove com.sun:tools and sun.jdk:jconsole provides
-- 
cgit v0.10.2


>From ca531689703a8235299b6da951cf65471a70fa87 Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb at redhat.com>
Date: Fri, 30 May 2014 08:34:01 +0200
Subject: Backport patch which adds support for "disableEffectivePom" property


diff --git a/add-support-for-xmvn.resolver.disableEffectivePom-property.patch b/add-support-for-xmvn.resolver.disableEffectivePom-property.patch
new file mode 100644
index 0000000..63a6561
--- /dev/null
+++ b/add-support-for-xmvn.resolver.disableEffectivePom-property.patch
@@ -0,0 +1,112 @@
+diff --git a/java-utils/maven_depmap.py b/java-utils/maven_depmap.py
+index 9377725..c80ff5b 100644
+--- a/java-utils/maven_depmap.py
++++ b/java-utils/maven_depmap.py
+@@ -280,6 +280,7 @@ if __name__ == "__main__":
+     if namespace:
+         artifact.namespace = namespace
+ 
++    artifact.properties["xmvn.resolver.disableEffectivePom"] = "true"
+ 
+ 
+     buildroot = os.environ.get('RPM_BUILD_ROOT')
+diff --git a/java-utils/mvn_artifact.py b/java-utils/mvn_artifact.py
+index e5e2731..9c0d55a 100644
+--- a/java-utils/mvn_artifact.py
++++ b/java-utils/mvn_artifact.py
+@@ -45,8 +45,6 @@ from javapackages.pom import *
+ from lxml import etree
+ import pyxb
+ 
+-from xml.dom.minidom import getDOMImplementation
+-
+ 
+ usage="usage: %prog [options] <MVN spec | POM path> [artifact path]"
+ epilog="""
+@@ -117,21 +115,17 @@ def add_artifact_elements(root, uart, ppath=None, jpath=None):
+     for path in [ppath, jpath]:
+         if path:
+             a = uart.to_metadata()
++            props = []
+             if path is ppath:
+                 if not is_it_ivy_file(ppath):
+                     a.extension = "pom"
+                 else:
+                     a.extension = os.path.splitext(pom_path)[1][1:]
+-
+-                    # add property "type"
+-                    domimpl = getDOMImplementation()
+-                    doc = domimpl.createDocument(None, None, None)
+-                    ty = doc.createElement('type')
+-                    te = doc.createTextNode('ivy')
+-                    ty.appendChild(te)
+-                    a.properties = pyxb.BIND(ty)
++                    props.append(Depmap.build_property('type', 'ivy'))
+ 
+             a.path = os.path.abspath(path)
++            props.append(Depmap.build_property('xmvn.resolver.disableEffectivePom', 'true'))
++            a.properties = pyxb.BIND(*props)
+             artifacts.append(a)
+ 
+     if root.artifacts is None:
+diff --git a/python/javapackages/artifact.py b/python/javapackages/artifact.py
+index ed8e0ba..33d1583 100644
+--- a/python/javapackages/artifact.py
++++ b/python/javapackages/artifact.py
+@@ -130,7 +130,6 @@ class ProvidedArtifact(object):
+         return result
+ 
+     def to_metadata(self):
+-        # TODO: add support for properties(?)
+         a = m.ArtifactMetadata()
+         a.groupId = self.groupId
+         a.artifactId = self.artifactId
+@@ -149,6 +148,11 @@ class ProvidedArtifact(object):
+             als = [alias.to_metadata() for alias in self.aliases]
+             a.aliases = pyxb.BIND(*als)
+ 
++        if self.properties:
++            import javapackages.depmap
++            prop = [javapackages.depmap.Depmap.build_property(k, v) for k, v in self.properties.iteritems()]
++            a.properties = pyxb.BIND(*prop)
++
+         return a
+ 
+     @classmethod
+diff --git a/python/javapackages/depmap.py b/python/javapackages/depmap.py
+index 356af95..a4b83fb 100644
+--- a/python/javapackages/depmap.py
++++ b/python/javapackages/depmap.py
+@@ -41,6 +41,7 @@ from javapackages.artifact import (Artifact, Dependency, ProvidedArtifact,
+ import pyxb
+ 
+ import javapackages.metadata as metadata
++from xml.dom.minidom import getDOMImplementation
+ 
+ 
+ class MetadataLoadingException(Exception):
+@@ -170,3 +171,12 @@ class Depmap(object):
+                 if prop.tagName == u'requiresJavaDevel':
+                     return prop.firstChild.value
+         return None
++
++    @staticmethod
++    def build_property(name, value):
++        domimpl = getDOMImplementation()
++        doc = domimpl.createDocument(None, None, None)
++        elem = doc.createElement(name)
++        tnode = doc.createTextNode(value)
++        elem.appendChild(tnode)
++        return elem
+diff --git a/test/run_tests.sh b/test/run_tests.sh
+index 55d47cd..8bdc221 100755
+--- a/test/run_tests.sh
++++ b/test/run_tests.sh
+@@ -1,6 +1,6 @@
+ #!/bin/bash
+ 
+-PYTHONPATH="../python" nosetests --with-xunit --exclude=maven_prov_test_fuzzed.py
++PYTHONPATH="../python" nosetests --with-xunit --exclude="(maven_prov)|(maven_depmap)|(mvn_artifact)_test.py"
+ r1=$?
+ r2=0
+ 
diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index 9ccd59b..2db0104 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -1,6 +1,6 @@
 Name:           javapackages-tools
 Version:        4.0.0
-Release:        3%{?dist}
+Release:        4%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
@@ -14,7 +14,7 @@ Patch2:         0004-maven.req-Generate-versioned-deps-on-subpackages.patch
 Patch3:         0006-maven.req-Fix-self-dependency-detection-code.patch
 Patch4:         0008-Fix-javapackages-metadata.xml.patch
 Patch5:         0010-maven.req-When-generating-req-from-POM-file-do-not-b.patch
-
+Patch6:         add-support-for-xmvn.resolver.disableEffectivePom-property.patch
 
 BuildArch:      noarch
 
@@ -144,6 +144,7 @@ This package provides non-essential macros and scripts to support Java packaging
 %patch3 -p1
 %patch4 -p1
 %patch5 -p1
+%patch6 -p1
 
 %build
 %configure
@@ -184,6 +185,9 @@ popd
 %doc LICENSE
 
 %changelog
+* Fri May 30 2014 Michal Srb <msrb at redhat.com> - 4.0.0-4
+- Backport patch which adds support for "disableEffectivePom" property
+
 * Thu May 29 2014 Michal Srb <msrb at redhat.com> - 4.0.0-3
 - Add BR: javapackages-tools
 
-- 
cgit v0.10.2


>From cf612e37634298c911bb79703b273c5bc6963ae4 Mon Sep 17 00:00:00 2001
From: Dennis Gilmore <dennis at ausil.us>
Date: Sat, 7 Jun 2014 18:30:37 -0500
Subject: - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild


diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index 2db0104..1c8e5f3 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -1,6 +1,6 @@
 Name:           javapackages-tools
 Version:        4.0.0
-Release:        4%{?dist}
+Release:        5%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
@@ -185,6 +185,9 @@ popd
 %doc LICENSE
 
 %changelog
+* Sat Jun 07 2014 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 4.0.0-5
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
+
 * Fri May 30 2014 Michal Srb <msrb at redhat.com> - 4.0.0-4
 - Backport patch which adds support for "disableEffectivePom" property
 
-- 
cgit v0.10.2


>From e8641a572f2a623531b5ca8c7f3daf78752a764a Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb at redhat.com>
Date: Tue, 10 Jun 2014 08:44:27 +0200
Subject: Update docs


diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index 1c8e5f3..0f98f32 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -1,6 +1,6 @@
 Name:           javapackages-tools
 Version:        4.0.0
-Release:        5%{?dist}
+Release:        6%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
@@ -15,6 +15,7 @@ Patch3:         0006-maven.req-Fix-self-dependency-detection-code.patch
 Patch4:         0008-Fix-javapackages-metadata.xml.patch
 Patch5:         0010-maven.req-When-generating-req-from-POM-file-do-not-b.patch
 Patch6:         add-support-for-xmvn.resolver.disableEffectivePom-property.patch
+Patch7:         update-docs.patch
 
 BuildArch:      noarch
 
@@ -145,6 +146,7 @@ This package provides non-essential macros and scripts to support Java packaging
 %patch4 -p1
 %patch5 -p1
 %patch6 -p1
+%patch7 -p1
 
 %build
 %configure
@@ -185,6 +187,9 @@ popd
 %doc LICENSE
 
 %changelog
+* Tue Jun 10 2014 Michal Srb <msrb at redhat.com> - 4.0.0-6
+- Update docs
+
 * Sat Jun 07 2014 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 4.0.0-5
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
 
diff --git a/update-docs.patch b/update-docs.patch
new file mode 100644
index 0000000..411e173
--- /dev/null
+++ b/update-docs.patch
@@ -0,0 +1,227 @@
+diff --git a/doc/ant.txt b/doc/ant.txt
+index 06ba3f3..fc500c3 100644
+--- a/doc/ant.txt
++++ b/doc/ant.txt
+@@ -22,7 +22,7 @@ Repository for it, ship it as another source and install it.
+ [source,spec]
+ -------------
+ BuildRequires: ant
+-BuildRequires: maven-local
++BuildRequires: javapackages-local
+ ...
+ %build
+ ant test
+diff --git a/doc/core_java_packages.txt b/doc/core_java_packages.txt
+index 34e0728..2baf4b2 100644
+--- a/doc/core_java_packages.txt
++++ b/doc/core_java_packages.txt
+@@ -51,9 +51,39 @@ non-zero epoch in order to keep version ordering correct.
+ =======
+ 
+ 
++==== Java Packages Tools
++
++Java Packages Tools are packaged as severas binary RPM packages
++
++*`maven-local`*::
++
++    This package provides a complete environment which is required to
++    build Java packages using Apache Maven build system.  This
++    includes a default system version of Java Development Kit (JDK),
++    Maven, a number of Maven plugins commonly used to build packages,
++    various macros and utlilty tools.  `maven-local` is usually
++    declared as build dependency of Maven packages.
++
++*`ivy-local`*::
++
++    Analogously to `maven-local`, this package provides an environment
++    required to build Java packages using Apache Ivy as dependency
++    manager.
++
++*`javapackages-local`*::
++
++    Package providing a basic environment necessary to geterate and
++    install metadata for system artifact repository.
++
++*`javapackages-tools`*::
++
++    Package owning basic Java directories and providing runtime
++    support for Java packages.  The great majority of Java packages
++    depend on `javapackages-tools`.
++
++
+ TODO
+ 
+-* Java Packages Tools
+ * Ant
+ ** extra tasks and /etc/ant.d
+ * Maven
+diff --git a/doc/directory_layout.txt b/doc/directory_layout.txt
+index 862ccd4..907777d 100644
+--- a/doc/directory_layout.txt
++++ b/doc/directory_layout.txt
+@@ -34,13 +34,6 @@ short description.
+     Maven are installed.  Each POM must have name that strictly
+     corresponds to JAR file in `%{_javadir}` or `%{_jnidir}`.
+ 
+-*`%{_mavendepmapfragdir}`* -- `/usr/share/maven-fragments`::
+-
+-    Directory containing package metadata in XML format.  Typically
+-    each binary package installs there a single XML file containing
+-    various information (metadata) about artifacts associated with
+-    that package.
+-
+ 
+ .Other directories
+ [glossary]
+diff --git a/doc/generic_java_build.txt b/doc/generic_java_build.txt
+index 6fb09bb..5c29c95 100644
+--- a/doc/generic_java_build.txt
++++ b/doc/generic_java_build.txt
+@@ -11,49 +11,18 @@ POM or JAR file, we may use the `%add_maven_depmap` macro. However, if package
+ is build in standard way (i.e.: `%mvn_build` and `%mvn_install`), then calling
+ `%add_maven_depmap` is neither needed nor recommended.  This macro is usually
+ useful only for packages that use other build tool than Maven (e.g.: ant,
+-gradle).  It creates files in `%{_mavendepmapfragdir}` that map
+-groupId:artifactId pairs to JAR files under `%{_javadir}`. These files are
+-called depmap fragments. The macro can read the groupId and artifactId from the
+-POM file or maintainer can pass this information as an argument.  All fragments
+-in `%{_mavendepmapfragdir}` directory are read by XMvn, allowing the
+-locally installed JAR and POM files to be used as a maven repository.
+-
+-Note that -- unless you use the `-f` option as shown below -- all
+-depmap fragments for a given package are written to the same file,
+-`%{_mavendepmapfragdir}/%{name}`. You should be sure to include this
+-file in the `%files` section of your RPM.
++gradle).
+ 
+ For the macro to work properly, all JAR files must be copied into `%{_javadir}`
+-and all POM files must be copied into `%{_mavenpomdir}` and given file names of
+-the following form, where `jarname` is the name of the JAR without the .jar
+-suffix:
++and all POM files must be copied into `%{_mavenpomdir}`.
+ 
+-[source,spec]
+---------
+-%{_mavenpomdir}/JPP[.subdirectory]-jarname.pom
+---------
+-
+-Note that the subdirectory is only necessary if the JAR file is put into a
+-subdirectory of `%{_javadir}`. For example:
+-
+-* For junit, the JAR is `%{_javadir}/junit.jar`, so the POM would be
+-  `%{_mavenpomdir}/JPP-junit.pom`.
+-* For plexus-ant-factory, the JAR is `%{_javadir}/plexus/ant-factory.jar`, so
+-  the POM would named `%{_mavenpomdir}/JPP.plexus-ant-factory.pom`.
+-
+-If a POM is installed with no corresponding JAR file -- for example, for parent
+-POM files -- the same convention should be followed:
+-
+-* The Apache commons parent POM is installed in
+-  `%{_mavenpomdir}/JPP-commons-parent.pom`.
+-
+-In its simplest form (a POM without a JAR file), `%add_maven_depmap` looks like
++In simplest form (a POM without a JAR file), `%add_maven_depmap` looks like
+ this:
+ 
+ .Parent POM
+ [source,spec]
+ --------
+-%add_maven_depmap JPP-%{name}.pom
++%add_maven_depmap %{name}.pom
+ --------
+ 
+ This will read the POM file in question and provide a mapping between the
+@@ -65,7 +34,7 @@ For a POM that maps directly to a JAR file, the following is the correct form:
+ .Standard invocation
+ [source,spec]
+ --------
+-%add_maven_depmap JPP-%{name}.pom %{name}.jar
++%add_maven_depmap %{name}.pom %{name}.jar
+ --------
+ 
+ In addition to creating the POM mapping, this will also ensure that the correct
+@@ -82,7 +51,7 @@ mapping between Maven artifact and corresponding JAR file:
+ .Providing additional artifact mappings
+ [source,spec]
+ --------
+-%add_maven_depmap JPP-%{name}.pom %{name}.jar -a "org.apache.commons:commons-lang"
++%add_maven_depmap %{name}.pom %{name}.jar -a "org.apache.commons:commons-lang"
+ --------
+ This form also adds additional mappings for given POM/JAR file. For example, if
+ the POM file indicates that it contains groupId commons-lang, artifactId
+@@ -94,16 +63,16 @@ require different IDs than those reflected in the installed POM.
+ .Multiple subpackages
+ [source,spec]
+ --------
+-%add_maven_depmap JPP-%{name}.pom %{name}.jar -f "XXX"
++%add_maven_depmap %{name}.pom %{name}.jar -f "XXX"
+ --------
+-This form stores dependency mapping inside `%{_mavendepmapfragdir}/%{name}-XXX`
+-instead of standard location. This is useful for packages with multiple
+-subpackages where each has its own JAR files.
++This form stores metadata information in file with suffix "XXX".  This
++is useful for packages with multiple subpackages where each has its own
++JAR files.
+ 
+ .Multiple artifacts in a subdirectory
+ [source,spec]
+ --------
+-%add_maven_depmap JPP.%{name}-sub.pom %{name}/sub.jar
++%add_maven_depmap %{name}-sub.pom %{name}/sub.jar
+ --------
+ 
+ This form should be used when a package consists of multiple JAR files that are
+diff --git a/doc/index.txt b/doc/index.txt
+index f9af27e..22c9ab2 100644
+--- a/doc/index.txt
++++ b/doc/index.txt
+@@ -63,22 +63,6 @@ References
+   'DocBook - The Definitive Guide'. O'Reilly & Associates. 1999.
+   ISBN 1-56592-580-7.
+ 
+-
+-[glossary]
+-Glossary
+---------
+-Glossaries are optional. Glossaries entries are an example of a style
+-of AsciiDoc labeled lists.
+-
+-[glossary]
+-[[Xdepmap]]depmap::
+-  Depmap is a special file telling Maven relationships between
+-  groupId,artifactId and JAR file on the filesystem
+-
+-A second glossary term::
+-  The corresponding (indented) definition.
+-
+-
+ ifdef::backend-docbook[]
+ [index]
+ Example Index
+diff --git a/doc/maven.txt b/doc/maven.txt
+index 7539d00..63c8cc8 100644
+--- a/doc/maven.txt
++++ b/doc/maven.txt
+@@ -35,7 +35,7 @@ BuildRequires:  maven-local
+ 
+ The macros `%mvn_build` and `%mvn_install` automatically handle building of the
+ JAR files and their subsequent installation to the correct directory. The
+-corresponding POM and <<Xdepmap,depmap>> files are also installed.
++corresponding POM and metadata files are also installed.
+ 
+ [[packaging_maven_project]]
+ === Packaging Maven project
+diff --git a/doc/mvn_macros.txt b/doc/mvn_macros.txt
+index c1b9aa2..1115cc8 100644
+--- a/doc/mvn_macros.txt
++++ b/doc/mvn_macros.txt
+@@ -66,7 +66,7 @@ If the project consists of multiple artifacts, it is recommended to install each
+ artifact to the separate subpackage. The macro `%mvn_build -s` will generate
+ separate `.mfiles` file for every artifact in the project. This file contains
+ list of files related to specific artifact (typically JAR file, POM file and
+-depmap). It can be later used in `%files` section of the spec file.
++metadata). It can be later used in `%files` section of the spec file.
+ 
+ .Creating one subpackage for each generated artifact
+ [source,spec]
-- 
cgit v0.10.2


>From f94bdba80c2938ee66bcebea71f3e9e2e2fbdf65 Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb at redhat.com>
Date: Tue, 10 Jun 2014 16:36:57 +0200
Subject: Backport fix for maven.prov


diff --git a/0001-artifact-Generate-provides-for-compat-artifacts-with.patch b/0001-artifact-Generate-provides-for-compat-artifacts-with.patch
new file mode 100644
index 0000000..122ea59
--- /dev/null
+++ b/0001-artifact-Generate-provides-for-compat-artifacts-with.patch
@@ -0,0 +1,43 @@
+From 642f1828322489c6b5b0e450994a3d8a5836d56f Mon Sep 17 00:00:00 2001
+From: Michal Srb <msrb at redhat.com>
+Date: Tue, 10 Jun 2014 16:19:18 +0200
+Subject: [PATCH] [artifact] Generate provides for compat artifacts with
+ alliases
+
+---
+ python/javapackages/artifact.py | 10 ++++++----
+ 1 file changed, 6 insertions(+), 4 deletions(-)
+
+diff --git a/python/javapackages/artifact.py b/python/javapackages/artifact.py
+index c6afc34..fc3f245 100644
+--- a/python/javapackages/artifact.py
++++ b/python/javapackages/artifact.py
+@@ -108,19 +108,21 @@ class ProvidedArtifact(object):
+         strlist = []
+         if not self.compatVersions:
+             strlist.append(self.artifact.get_rpm_str())
++            for alias in self.aliases:
++                full_alias = Artifact.merge_artifacts(alias.artifact, self.artifact)
++                strlist.append(full_alias.get_rpm_str())
+         else:
+             for ver in self.compatVersions:
+                 rpmstr = self.artifact.get_rpm_str(ver)
+                 strlist.append(rpmstr)
++                for alias in self.aliases:
++                    full_alias = Artifact.merge_artifacts(alias.artifact, self.artifact)
++                    strlist.append(full_alias.get_rpm_str(ver))
+ 
+         if not (self.version):
+             raise ArtifactFormatException(
+                 "Cannot create versioned string from artifact without version: {art}".format(art=str(self)))
+ 
+-        for alias in self.aliases:
+-            full_alias = Artifact.merge_artifacts(alias.artifact, self.artifact)
+-            strlist.append(full_alias.get_rpm_str())
+-
+         result = ""
+         for rpmstr in strlist:
+             if result:
+-- 
+1.9.3
+
diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index 0f98f32..6f10847 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -1,6 +1,6 @@
 Name:           javapackages-tools
 Version:        4.0.0
-Release:        6%{?dist}
+Release:        7%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
@@ -16,6 +16,7 @@ Patch4:         0008-Fix-javapackages-metadata.xml.patch
 Patch5:         0010-maven.req-When-generating-req-from-POM-file-do-not-b.patch
 Patch6:         add-support-for-xmvn.resolver.disableEffectivePom-property.patch
 Patch7:         update-docs.patch
+Patch8:         0001-artifact-Generate-provides-for-compat-artifacts-with.patch
 
 BuildArch:      noarch
 
@@ -147,6 +148,7 @@ This package provides non-essential macros and scripts to support Java packaging
 %patch5 -p1
 %patch6 -p1
 %patch7 -p1
+%patch8 -p1
 
 %build
 %configure
@@ -187,6 +189,9 @@ popd
 %doc LICENSE
 
 %changelog
+* Tue Jun 10 2014 Michal Srb <msrb at redhat.com> - 4.0.0-7
+- Backport fix for maven.prov
+
 * Tue Jun 10 2014 Michal Srb <msrb at redhat.com> - 4.0.0-6
 - Update docs
 
-- 
cgit v0.10.2


>From eaf84163c79f5b534e6534db3ca65316936d7296 Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb at redhat.com>
Date: Thu, 12 Jun 2014 10:46:57 +0200
Subject: Install man page for pom_change_dep


diff --git a/install-pom_change_dep-man-page.patch b/install-pom_change_dep-man-page.patch
new file mode 100644
index 0000000..bf98eb4
--- /dev/null
+++ b/install-pom_change_dep-man-page.patch
@@ -0,0 +1,24 @@
+diff --git a/install b/install
+index 6caf88f..16216a7 100755
+--- a/install
++++ b/install
+@@ -142,6 +142,7 @@ inst_data target/pom_disable_module.7 "${mandir}/man7"
+ inst_data target/pom_remove_dep.7 "${mandir}/man7"
+ inst_data target/pom_remove_parent.7 "${mandir}/man7"
+ inst_data target/pom_remove_plugin.7 "${mandir}/man7"
++inst_data target/pom_change_dep.7 "${mandir}/man7"
+ inst_data target/pom_set_parent.7 "${mandir}/man7"
+ inst_data target/pom_xpath_inject.7 "${mandir}/man7"
+ inst_data target/pom_xpath_remove.7 "${mandir}/man7"
+diff --git a/man/pom_change_dep.txt b/man/pom_change_dep.txt
+index 234853f..3871641 100644
+--- a/man/pom_change_dep.txt
++++ b/man/pom_change_dep.txt
+@@ -1,5 +1,5 @@
+-pom_add_dep(7)
+-==============
++pom_change_dep(7)
++=================
+ :doctype:	manpage
+ :man source:	JAVAPACKAGES
+ :man manual:	Java Packages Tools
diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index 6f10847..66f0b2b 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -1,6 +1,6 @@
 Name:           javapackages-tools
 Version:        4.0.0
-Release:        7%{?dist}
+Release:        8%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
@@ -17,6 +17,7 @@ Patch5:         0010-maven.req-When-generating-req-from-POM-file-do-not-b.patch
 Patch6:         add-support-for-xmvn.resolver.disableEffectivePom-property.patch
 Patch7:         update-docs.patch
 Patch8:         0001-artifact-Generate-provides-for-compat-artifacts-with.patch
+Patch9:         install-pom_change_dep-man-page.patch
 
 BuildArch:      noarch
 
@@ -149,6 +150,7 @@ This package provides non-essential macros and scripts to support Java packaging
 %patch6 -p1
 %patch7 -p1
 %patch8 -p1
+%patch9 -p1
 
 %build
 %configure
@@ -189,6 +191,9 @@ popd
 %doc LICENSE
 
 %changelog
+* Thu Jun 12 2014 Michal Srb <msrb at redhat.com> - 4.0.0-8
+- Install man page for pom_change_dep
+
 * Tue Jun 10 2014 Michal Srb <msrb at redhat.com> - 4.0.0-7
 - Backport fix for maven.prov
 
-- 
cgit v0.10.2


>From 67dd7fb8b4a19a0a6ff2831cd77a915271a0af3e Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb at redhat.com>
Date: Mon, 23 Jun 2014 13:07:46 +0200
Subject: Bump version to 4.1.0


diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index 2e91eb9..634fc11 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -1,5 +1,5 @@
 Name:           javapackages-tools
-Version:        4.0.0
+Version:        4.1.0
 Release:        0%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
-- 
cgit v0.10.2


>From 7bb246babd9f95123a4c9152f8be57ac57657eee Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb at redhat.com>
Date: Mon, 23 Jun 2014 13:16:20 +0200
Subject: Update to upstream version 4.1.0


diff --git a/.gitignore b/.gitignore
index 9ca17cd..08034b2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -60,3 +60,4 @@
 /javapackages-3.4.2.tar.xz
 /javapackages-3.5.0.tar.xz
 /javapackages-4.0.0.tar.xz
+/javapackages-4.1.0.tar.xz
diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index 0984f3e..600457e 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -1,6 +1,6 @@
 Name:           javapackages-tools
 Version:        4.1.0
-Release:        0%{?dist}
+Release:        1%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
@@ -8,17 +8,6 @@ License:        BSD
 URL:            https://fedorahosted.org/javapackages/
 Source0:        https://fedorahosted.org/released/javapackages/javapackages-%{version}.tar.xz
 
-Patch0:         0001-pom-Add-ability-to-read-parent-s-version.patch
-Patch1:         0002-maven.req-Check-if-dependency-is-not-provided-by-sub.patch
-Patch2:         0004-maven.req-Generate-versioned-deps-on-subpackages.patch
-Patch3:         0006-maven.req-Fix-self-dependency-detection-code.patch
-Patch4:         0008-Fix-javapackages-metadata.xml.patch
-Patch5:         0010-maven.req-When-generating-req-from-POM-file-do-not-b.patch
-Patch6:         add-support-for-xmvn.resolver.disableEffectivePom-property.patch
-Patch7:         update-docs.patch
-Patch8:         0001-artifact-Generate-provides-for-compat-artifacts-with.patch
-Patch9:         install-pom_change_dep-man-page.patch
-
 BuildArch:      noarch
 
 BuildRequires:  asciidoc
@@ -142,17 +131,6 @@ This package provides non-essential macros and scripts to support Java packaging
 %prep
 %setup -q -n javapackages-%{version}
 
-%patch0 -p1
-%patch1 -p1
-%patch2 -p1
-%patch3 -p1
-%patch4 -p1
-%patch5 -p1
-%patch6 -p1
-%patch7 -p1
-%patch8 -p1
-%patch9 -p1
-
 %build
 %configure
 ./build
@@ -192,6 +170,9 @@ popd
 %doc LICENSE
 
 %changelog
+* Mon Jun 23 2014 Michal Srb <msrb at redhat.com> - 4.1.0-1
+- Update to upstream version 4.1.0
+
 * Thu Jun 12 2014 Michal Srb <msrb at redhat.com> - 4.0.0-8
 - Install man page for pom_change_dep
 
diff --git a/sources b/sources
index 4a59577..555cc91 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-58eb18136de46d69e30a1787aa874c3f  javapackages-4.0.0.tar.xz
+90858a73cb6ba12b19c6a7d70a4c2cdf  javapackages-4.1.0.tar.xz
-- 
cgit v0.10.2


>From 3fac0151974699d28f303252cdd93d69bb1dca0a Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb at redhat.com>
Date: Thu, 10 Jul 2014 15:35:00 +0200
Subject: Backport upstream patch for maven.req


diff --git a/0001-maven.req-XMvn-sets-resolvedVersion-to-UNKNOWN-for-u.patch b/0001-maven.req-XMvn-sets-resolvedVersion-to-UNKNOWN-for-u.patch
new file mode 100644
index 0000000..0eea72d
--- /dev/null
+++ b/0001-maven.req-XMvn-sets-resolvedVersion-to-UNKNOWN-for-u.patch
@@ -0,0 +1,26 @@
+From 9b45dfe3a03e70c1413b7a1a7ee88431a4fe7f4c Mon Sep 17 00:00:00 2001
+From: Michal Srb <msrb at redhat.com>
+Date: Thu, 10 Jul 2014 15:30:17 +0200
+Subject: [PATCH] [maven.req] XMvn sets resolvedVersion to UNKNOWN for
+ unresolvable deps
+
+---
+ depgenerators/maven.req | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/depgenerators/maven.req b/depgenerators/maven.req
+index 2e99c1e..f7133d6 100755
+--- a/depgenerators/maven.req
++++ b/depgenerators/maven.req
+@@ -310,7 +310,7 @@ class TagBuilder(object):
+ 
+         unknown_deps = self.check_deps(metadata)
+         for dependency in metadata.get_required_artifacts():
+-            if dependency.requestedVersion == "UNKNOWN":
++            if dependency.resolvedVersion == "UNKNOWN":
+                 unknown_deps.append(dependency)
+                 continue
+             for skipped in self.skipped_artifacts:
+-- 
+1.9.3
+
diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index 600457e..5b75975 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -1,6 +1,6 @@
 Name:           javapackages-tools
 Version:        4.1.0
-Release:        1%{?dist}
+Release:        2%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
@@ -8,6 +8,8 @@ License:        BSD
 URL:            https://fedorahosted.org/javapackages/
 Source0:        https://fedorahosted.org/released/javapackages/javapackages-%{version}.tar.xz
 
+Patch0:         0001-maven.req-XMvn-sets-resolvedVersion-to-UNKNOWN-for-u.patch
+
 BuildArch:      noarch
 
 BuildRequires:  asciidoc
@@ -131,6 +133,8 @@ This package provides non-essential macros and scripts to support Java packaging
 %prep
 %setup -q -n javapackages-%{version}
 
+%patch0 -p1
+
 %build
 %configure
 ./build
@@ -170,6 +174,9 @@ popd
 %doc LICENSE
 
 %changelog
+* Thu Jul 10 2014 Michal Srb <msrb at redhat.com> - 4.1.0-2
+- Backport upstream patch for maven.req
+
 * Mon Jun 23 2014 Michal Srb <msrb at redhat.com> - 4.1.0-1
 - Update to upstream version 4.1.0
 
-- 
cgit v0.10.2


>From ee8847f60abd5535f1ce54556a5a55c1e84fd828 Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb at redhat.com>
Date: Tue, 9 Sep 2014 09:23:57 +0200
Subject: Update to upstream version 4.2.0


diff --git a/.gitignore b/.gitignore
index 08034b2..80132d2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -61,3 +61,4 @@
 /javapackages-3.5.0.tar.xz
 /javapackages-4.0.0.tar.xz
 /javapackages-4.1.0.tar.xz
+/javapackages-4.2.0.tar.xz
diff --git a/0001-artifact-Generate-provides-for-compat-artifacts-with.patch b/0001-artifact-Generate-provides-for-compat-artifacts-with.patch
deleted file mode 100644
index 122ea59..0000000
--- a/0001-artifact-Generate-provides-for-compat-artifacts-with.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 642f1828322489c6b5b0e450994a3d8a5836d56f Mon Sep 17 00:00:00 2001
-From: Michal Srb <msrb at redhat.com>
-Date: Tue, 10 Jun 2014 16:19:18 +0200
-Subject: [PATCH] [artifact] Generate provides for compat artifacts with
- alliases
-
----
- python/javapackages/artifact.py | 10 ++++++----
- 1 file changed, 6 insertions(+), 4 deletions(-)
-
-diff --git a/python/javapackages/artifact.py b/python/javapackages/artifact.py
-index c6afc34..fc3f245 100644
---- a/python/javapackages/artifact.py
-+++ b/python/javapackages/artifact.py
-@@ -108,19 +108,21 @@ class ProvidedArtifact(object):
-         strlist = []
-         if not self.compatVersions:
-             strlist.append(self.artifact.get_rpm_str())
-+            for alias in self.aliases:
-+                full_alias = Artifact.merge_artifacts(alias.artifact, self.artifact)
-+                strlist.append(full_alias.get_rpm_str())
-         else:
-             for ver in self.compatVersions:
-                 rpmstr = self.artifact.get_rpm_str(ver)
-                 strlist.append(rpmstr)
-+                for alias in self.aliases:
-+                    full_alias = Artifact.merge_artifacts(alias.artifact, self.artifact)
-+                    strlist.append(full_alias.get_rpm_str(ver))
- 
-         if not (self.version):
-             raise ArtifactFormatException(
-                 "Cannot create versioned string from artifact without version: {art}".format(art=str(self)))
- 
--        for alias in self.aliases:
--            full_alias = Artifact.merge_artifacts(alias.artifact, self.artifact)
--            strlist.append(full_alias.get_rpm_str())
--
-         result = ""
-         for rpmstr in strlist:
-             if result:
--- 
-1.9.3
-
diff --git a/0001-maven.req-XMvn-sets-resolvedVersion-to-UNKNOWN-for-u.patch b/0001-maven.req-XMvn-sets-resolvedVersion-to-UNKNOWN-for-u.patch
deleted file mode 100644
index 0eea72d..0000000
--- a/0001-maven.req-XMvn-sets-resolvedVersion-to-UNKNOWN-for-u.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 9b45dfe3a03e70c1413b7a1a7ee88431a4fe7f4c Mon Sep 17 00:00:00 2001
-From: Michal Srb <msrb at redhat.com>
-Date: Thu, 10 Jul 2014 15:30:17 +0200
-Subject: [PATCH] [maven.req] XMvn sets resolvedVersion to UNKNOWN for
- unresolvable deps
-
----
- depgenerators/maven.req | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/depgenerators/maven.req b/depgenerators/maven.req
-index 2e99c1e..f7133d6 100755
---- a/depgenerators/maven.req
-+++ b/depgenerators/maven.req
-@@ -310,7 +310,7 @@ class TagBuilder(object):
- 
-         unknown_deps = self.check_deps(metadata)
-         for dependency in metadata.get_required_artifacts():
--            if dependency.requestedVersion == "UNKNOWN":
-+            if dependency.resolvedVersion == "UNKNOWN":
-                 unknown_deps.append(dependency)
-                 continue
-             for skipped in self.skipped_artifacts:
--- 
-1.9.3
-
diff --git a/0001-pom-Add-ability-to-read-parent-s-version.patch b/0001-pom-Add-ability-to-read-parent-s-version.patch
deleted file mode 100644
index 437fe56..0000000
--- a/0001-pom-Add-ability-to-read-parent-s-version.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 0870cac2b02aef1e75aada3b4d235f76b0d4ee1e Mon Sep 17 00:00:00 2001
-From: Michal Srb <msrb at redhat.com>
-Date: Thu, 29 May 2014 10:23:07 +0200
-Subject: [PATCH 01/10] [pom] Add ability to read parent's version
-
----
- python/javapackages/pom.py | 11 +++++++++++
- 1 file changed, 11 insertions(+)
-
-diff --git a/python/javapackages/pom.py b/python/javapackages/pom.py
-index 604728f..6c15813 100644
---- a/python/javapackages/pom.py
-+++ b/python/javapackages/pom.py
-@@ -95,6 +95,17 @@ class POM(object):
-             return gId.text.strip()
- 
-     @property
-+    def parentVersion(self):
-+        """
-+        version of the parent artifact of None
-+        """
-+        ver = self.__find('./pom:parent/pom:version')
-+        if ver is None:
-+            return None
-+        else:
-+            return ver.text.strip()
-+
-+    @property
-     def groupId(self):
-         """
-         Effective groupId of the pom Artifact taking into account parent groupId
--- 
-1.9.3
-
diff --git a/0002-maven.req-Check-if-dependency-is-not-provided-by-sub.patch b/0002-maven.req-Check-if-dependency-is-not-provided-by-sub.patch
deleted file mode 100644
index bd3e471..0000000
--- a/0002-maven.req-Check-if-dependency-is-not-provided-by-sub.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-From 5224614066cfd01c02112a849fca3c7969202142 Mon Sep 17 00:00:00 2001
-From: Michal Srb <msrb at redhat.com>
-Date: Thu, 29 May 2014 10:24:39 +0200
-Subject: [PATCH 02/10] [maven.req] Check if dependency is not provided by
- subpackage
-
----
- depgenerators/maven.req | 24 +++++++++++++++++-------
- 1 file changed, 17 insertions(+), 7 deletions(-)
-
-diff --git a/depgenerators/maven.req b/depgenerators/maven.req
-index c81437b..eecb055 100755
---- a/depgenerators/maven.req
-+++ b/depgenerators/maven.req
-@@ -144,6 +144,15 @@ class TagBuilder(object):
-                 continue
-             self.print_mvn_requires(path)
- 
-+    def __is_provided_by_subpackage(self, dependency):
-+        for provided in self.provided_artifacts:
-+           if (provided.groupId == dependency.groupId and
-+               provided.artifactId == dependency.artifactId and
-+               provided.classifier == dependency.classifier and
-+               provided.extension == dependency.extension):
-+                return True
-+        return False
-+
- 
-     def __generate_requires_from_pom(self, pomfile):
-         pom = POM(pomfile)
-@@ -151,6 +160,7 @@ class TagBuilder(object):
-         extensions = pom.get_extensions()
-         pgid = pom.parentGroupId
-         paid = pom.parentArtifactId
-+        pver = pom.parentVersion
- 
-         unresolvable = []
- 
-@@ -158,7 +168,7 @@ class TagBuilder(object):
-         for p in plugins:
-             # TODO: namespaces
-             plug = Dependency(p.groupId, p.artifactId, requestedVersion=p.version)
--            if resolve_artifact(plug.get_mvn_str()):
-+            if resolve_artifact(plug.get_mvn_str()) or self.__is_provided_by_subpackage(plug):
-                 print(plug.get_rpm_str())
-             else:
-                 unresolvable.append(plug.get_mvn_str())
-@@ -173,18 +183,18 @@ class TagBuilder(object):
-         for e in extensions:
-             # TODO: namespaces
-             ext = Dependency(e.groupId, e.artifactId, requestedVersion=e.version)
--            if resolve_artifact(ext.get_mvn_str()):
-+            if resolve_artifact(ext.get_mvn_str()) or self.__is_provided_by_subpackage(ext):
-                 print(ext.get_rpm_str())
-             else:
-                 unresolvable.append(plug.get_mvn_str())
- 
--        if paid:
--            parent_mvn_str = "{}:{}:pom:".format(pgid, paid)
--            if resolve_artifact(parent_mvn_str):
-+        if paid and pver:
-+            parent_dep = Dependency(pgid, paid, requestedVersion=pver, extension="pom")
-+            if resolve_artifact(parent_dep.get_mvn_str()) or self.__is_provided_by_subpackage(parent_dep):
-                 # TODO: namespaces
--                print("mvn({})".format(parent_mvn_str))
-+                print(parent_dep.get_rpm_str())
-             else:
--                unresolvable.append(parent_mvn_str)
-+                unresolvable.append(parent_dep.get_mvn_str())
- 
-         if unresolvable:
-             raise Exception("Unable to generate requires on unresolvable artifact{}: {}"
--- 
-1.9.3
-
diff --git a/0004-maven.req-Generate-versioned-deps-on-subpackages.patch b/0004-maven.req-Generate-versioned-deps-on-subpackages.patch
deleted file mode 100644
index af506ff..0000000
--- a/0004-maven.req-Generate-versioned-deps-on-subpackages.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-From 8cd3338ddfeef5965f05d5082695d9d72bcf4629 Mon Sep 17 00:00:00 2001
-From: Michal Srb <msrb at redhat.com>
-Date: Thu, 29 May 2014 11:28:57 +0200
-Subject: [PATCH 04/10] [maven.req] Generate versioned deps on subpackages
-
----
- depgenerators/maven.req | 19 ++++++++++++++-----
- 1 file changed, 14 insertions(+), 5 deletions(-)
-
-diff --git a/depgenerators/maven.req b/depgenerators/maven.req
-index eecb055..56fd27f 100755
---- a/depgenerators/maven.req
-+++ b/depgenerators/maven.req
-@@ -150,8 +150,8 @@ class TagBuilder(object):
-                provided.artifactId == dependency.artifactId and
-                provided.classifier == dependency.classifier and
-                provided.extension == dependency.extension):
--                return True
--        return False
-+                return provided.version
-+        return None
- 
- 
-     def __generate_requires_from_pom(self, pomfile):
-@@ -168,8 +168,11 @@ class TagBuilder(object):
-         for p in plugins:
-             # TODO: namespaces
-             plug = Dependency(p.groupId, p.artifactId, requestedVersion=p.version)
--            if resolve_artifact(plug.get_mvn_str()) or self.__is_provided_by_subpackage(plug):
-+            aver = self.__is_provided_by_subpackage(plug)
-+            if resolve_artifact(plug.get_mvn_str()):
-                 print(plug.get_rpm_str())
-+            elif aver is not None:
-+                print("{rpmstr} = {version}".format(rpmstr=plug.get_rpm_str(), version=aver))
-             else:
-                 unresolvable.append(plug.get_mvn_str())
-             for pd in p.dependencies:
-@@ -183,16 +186,22 @@ class TagBuilder(object):
-         for e in extensions:
-             # TODO: namespaces
-             ext = Dependency(e.groupId, e.artifactId, requestedVersion=e.version)
--            if resolve_artifact(ext.get_mvn_str()) or self.__is_provided_by_subpackage(ext):
-+            aver = self.__is_provided_by_subpackage(ext)
-+            if resolve_artifact(ext.get_mvn_str()):
-                 print(ext.get_rpm_str())
-+            elif aver is not None:
-+                print("{rpmstr} = {version}".format(rpmstr=ext.get_rpm_str(), version=aver))
-             else:
-                 unresolvable.append(plug.get_mvn_str())
- 
-         if paid and pver:
-             parent_dep = Dependency(pgid, paid, requestedVersion=pver, extension="pom")
--            if resolve_artifact(parent_dep.get_mvn_str()) or self.__is_provided_by_subpackage(parent_dep):
-+            aver = self.__is_provided_by_subpackage(parent_dep)
-+            if resolve_artifact(parent_dep.get_mvn_str()):
-                 # TODO: namespaces
-                 print(parent_dep.get_rpm_str())
-+            elif aver is not None:
-+                print("{rpmstr} = {version}".format(rpmstr=parent_dep.get_rpm_str(), version=aver))
-             else:
-                 unresolvable.append(parent_dep.get_mvn_str())
- 
--- 
-1.9.3
-
diff --git a/0006-maven.req-Fix-self-dependency-detection-code.patch b/0006-maven.req-Fix-self-dependency-detection-code.patch
deleted file mode 100644
index 92dc6aa..0000000
--- a/0006-maven.req-Fix-self-dependency-detection-code.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 424bba5b517fa1c458d7f11b10e577ba59585bd2 Mon Sep 17 00:00:00 2001
-From: Mikolaj Izdebski <mizdebsk at redhat.com>
-Date: Thu, 29 May 2014 13:08:11 +0200
-Subject: [PATCH 06/10] [maven.req] Fix self-dependency detection code
-
----
- depgenerators/maven.req | 5 +----
- 1 file changed, 1 insertion(+), 4 deletions(-)
-
-diff --git a/depgenerators/maven.req b/depgenerators/maven.req
-index 56fd27f..a42162e 100755
---- a/depgenerators/maven.req
-+++ b/depgenerators/maven.req
-@@ -242,13 +242,10 @@ class TagBuilder(object):
-                     for compatVer in provided.compatVersions:
-                         if dependency.resolvedVersion == compatVer:
-                             return True
--                        else:
--                            return False
-                 elif (not dependency.resolvedVersion and
-                     not provided.is_compat()):
-                     return True
--                else:
--                    return False
-+        return False
- 
- 
-     def filter_requires(self, requires):
--- 
-1.9.3
-
diff --git a/0008-Fix-javapackages-metadata.xml.patch b/0008-Fix-javapackages-metadata.xml.patch
deleted file mode 100644
index 7e06c9f..0000000
--- a/0008-Fix-javapackages-metadata.xml.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From a48fe9f51512fe367d44519e41c94b24ef8af983 Mon Sep 17 00:00:00 2001
-From: Mikolaj Izdebski <mizdebsk at redhat.com>
-Date: Thu, 29 May 2014 13:38:56 +0200
-Subject: [PATCH 08/10] Fix javapackages-metadata.xml
-
-s/com.jdk:jconsole/sun.jdk:jconsole/
----
- etc/javapackages-metadata.xml | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/etc/javapackages-metadata.xml b/etc/javapackages-metadata.xml
-index 6f6c98e..1126a69 100644
---- a/etc/javapackages-metadata.xml
-+++ b/etc/javapackages-metadata.xml
-@@ -9,7 +9,7 @@
-             <path>${JAVA_HOME}/../lib/tools.jar</path>
-         </artifact>
-         <artifact>
--            <groupId>com.jdk</groupId>
-+            <groupId>sun.jdk</groupId>
-             <artifactId>jconsole</artifactId>
-             <version>SYSTEM</version>
-             <path>${JAVA_HOME}/../lib/jconsole.jar</path>
--- 
-1.9.3
-
diff --git a/0010-maven.req-When-generating-req-from-POM-file-do-not-b.patch b/0010-maven.req-When-generating-req-from-POM-file-do-not-b.patch
deleted file mode 100644
index 6b9a279..0000000
--- a/0010-maven.req-When-generating-req-from-POM-file-do-not-b.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From 52525455278ad5801cf89a768b81499229af1f68 Mon Sep 17 00:00:00 2001
-From: Michal Srb <msrb at redhat.com>
-Date: Thu, 29 May 2014 13:45:52 +0200
-Subject: [PATCH 10/10] [maven.req] When generating req from POM file, do not
- blindly take first POM file, but iterate over all of them and pick the right
- one
-
----
- depgenerators/maven.req | 23 ++++++++++++++++++++---
- 1 file changed, 20 insertions(+), 3 deletions(-)
-
-diff --git a/depgenerators/maven.req b/depgenerators/maven.req
-index aea1dd4..dea89d7 100755
---- a/depgenerators/maven.req
-+++ b/depgenerators/maven.req
-@@ -137,7 +137,9 @@ class TagBuilder(object):
- 
-         if os.path.exists(XMVN_RESOLVE_PATH):
-             if is_it_pom_only_pkg(paths[0]):
--                self.__generate_requires_from_pom(ppaths[0])
-+                poms = self.__find_poms_for_metadata(ppaths, paths[0])
-+                for p in poms:
-+                    self.__generate_requires_from_pom(p)
- 
-         for path in paths:
-             if path.endswith(".pom"):
-@@ -154,8 +156,23 @@ class TagBuilder(object):
-         return None
- 
- 
--    def __generate_requires_from_pom(self, pomfile):
--        pom = POM(pomfile)
-+    # TODO: move functions like this to some POMUtils, or similar module
-+    def __find_poms_for_metadata(self, pom_paths, metadata_path):
-+        poms = []
-+        depmap = Depmap([metadata_path])
-+        provided = depmap.get_provided_artifacts()
-+        for prov in provided:
-+            for p in pom_paths:
-+                pom = POM(p)
-+                if (pom.groupId == prov.groupId and
-+                    pom.artifactId == prov.artifactId and
-+                    pom.version == prov.version):
-+
-+                    poms.append(pom)
-+                    break
-+        return poms
-+
-+    def __generate_requires_from_pom(self, pom):
-         plugins = pom.get_plugins()
-         extensions = pom.get_extensions()
-         pgid = pom.parentGroupId
--- 
-1.9.3
-
diff --git a/add-support-for-xmvn.resolver.disableEffectivePom-property.patch b/add-support-for-xmvn.resolver.disableEffectivePom-property.patch
deleted file mode 100644
index 63a6561..0000000
--- a/add-support-for-xmvn.resolver.disableEffectivePom-property.patch
+++ /dev/null
@@ -1,112 +0,0 @@
-diff --git a/java-utils/maven_depmap.py b/java-utils/maven_depmap.py
-index 9377725..c80ff5b 100644
---- a/java-utils/maven_depmap.py
-+++ b/java-utils/maven_depmap.py
-@@ -280,6 +280,7 @@ if __name__ == "__main__":
-     if namespace:
-         artifact.namespace = namespace
- 
-+    artifact.properties["xmvn.resolver.disableEffectivePom"] = "true"
- 
- 
-     buildroot = os.environ.get('RPM_BUILD_ROOT')
-diff --git a/java-utils/mvn_artifact.py b/java-utils/mvn_artifact.py
-index e5e2731..9c0d55a 100644
---- a/java-utils/mvn_artifact.py
-+++ b/java-utils/mvn_artifact.py
-@@ -45,8 +45,6 @@ from javapackages.pom import *
- from lxml import etree
- import pyxb
- 
--from xml.dom.minidom import getDOMImplementation
--
- 
- usage="usage: %prog [options] <MVN spec | POM path> [artifact path]"
- epilog="""
-@@ -117,21 +115,17 @@ def add_artifact_elements(root, uart, ppath=None, jpath=None):
-     for path in [ppath, jpath]:
-         if path:
-             a = uart.to_metadata()
-+            props = []
-             if path is ppath:
-                 if not is_it_ivy_file(ppath):
-                     a.extension = "pom"
-                 else:
-                     a.extension = os.path.splitext(pom_path)[1][1:]
--
--                    # add property "type"
--                    domimpl = getDOMImplementation()
--                    doc = domimpl.createDocument(None, None, None)
--                    ty = doc.createElement('type')
--                    te = doc.createTextNode('ivy')
--                    ty.appendChild(te)
--                    a.properties = pyxb.BIND(ty)
-+                    props.append(Depmap.build_property('type', 'ivy'))
- 
-             a.path = os.path.abspath(path)
-+            props.append(Depmap.build_property('xmvn.resolver.disableEffectivePom', 'true'))
-+            a.properties = pyxb.BIND(*props)
-             artifacts.append(a)
- 
-     if root.artifacts is None:
-diff --git a/python/javapackages/artifact.py b/python/javapackages/artifact.py
-index ed8e0ba..33d1583 100644
---- a/python/javapackages/artifact.py
-+++ b/python/javapackages/artifact.py
-@@ -130,7 +130,6 @@ class ProvidedArtifact(object):
-         return result
- 
-     def to_metadata(self):
--        # TODO: add support for properties(?)
-         a = m.ArtifactMetadata()
-         a.groupId = self.groupId
-         a.artifactId = self.artifactId
-@@ -149,6 +148,11 @@ class ProvidedArtifact(object):
-             als = [alias.to_metadata() for alias in self.aliases]
-             a.aliases = pyxb.BIND(*als)
- 
-+        if self.properties:
-+            import javapackages.depmap
-+            prop = [javapackages.depmap.Depmap.build_property(k, v) for k, v in self.properties.iteritems()]
-+            a.properties = pyxb.BIND(*prop)
-+
-         return a
- 
-     @classmethod
-diff --git a/python/javapackages/depmap.py b/python/javapackages/depmap.py
-index 356af95..a4b83fb 100644
---- a/python/javapackages/depmap.py
-+++ b/python/javapackages/depmap.py
-@@ -41,6 +41,7 @@ from javapackages.artifact import (Artifact, Dependency, ProvidedArtifact,
- import pyxb
- 
- import javapackages.metadata as metadata
-+from xml.dom.minidom import getDOMImplementation
- 
- 
- class MetadataLoadingException(Exception):
-@@ -170,3 +171,12 @@ class Depmap(object):
-                 if prop.tagName == u'requiresJavaDevel':
-                     return prop.firstChild.value
-         return None
-+
-+    @staticmethod
-+    def build_property(name, value):
-+        domimpl = getDOMImplementation()
-+        doc = domimpl.createDocument(None, None, None)
-+        elem = doc.createElement(name)
-+        tnode = doc.createTextNode(value)
-+        elem.appendChild(tnode)
-+        return elem
-diff --git a/test/run_tests.sh b/test/run_tests.sh
-index 55d47cd..8bdc221 100755
---- a/test/run_tests.sh
-+++ b/test/run_tests.sh
-@@ -1,6 +1,6 @@
- #!/bin/bash
- 
--PYTHONPATH="../python" nosetests --with-xunit --exclude=maven_prov_test_fuzzed.py
-+PYTHONPATH="../python" nosetests --with-xunit --exclude="(maven_prov)|(maven_depmap)|(mvn_artifact)_test.py"
- r1=$?
- r2=0
- 
diff --git a/build.bash b/build.bash
deleted file mode 100644
index e895029..0000000
--- a/build.bash
+++ /dev/null
@@ -1,58 +0,0 @@
-#!/bin/bash -ex
-
-resultdir="/var/lib/mock/javapackages-rawhide/result/"
-
-# create directories
-repo=RPM/latest/
-[[ ! -d ${repo} ]] && mkdir -p ${repo}
-
-# update version and release tag in spec file
-version=`sed 's/-SNAPSHOT//' VERSION`
-release=$(git describe --match="[^(jenkins)].*" --tags | sed 's/[^-]*-/0./;s/-/./;s/g/git/')
-sed -i "s/^Version:\s\+[0-9.]*$/Version: ${version}/" javapackages-tools.spec
-sed -i "s/^Release:\s\+[0-9.]*%{?dist}$/Release: ${release}/" javapackages-tools.spec
-
-# make tarball
-git archive -v --prefix=javapackages-${version}/ HEAD | xz > javapackages-${version}.tar.xz
-
-# print root.log and build.log in case of failure
-trap "cat ${resultdir}/root.log | tail -30; cat ${resultdir}/build.log || :" 0
-
-# crate srpm
-rm -f SRPMS/*
-rpmbuild -bs --clean --define "_topdir `pwd`" --define "_sourcedir `pwd`" javapackages-tools.spec
-
-# build RPM with custom mock config
-rm -Rf ${resultdir}/*
-mock -r ../..$PWD/fedora-rawhide-x86_64 SRPMS/*.src.rpm
-
-# get nosetests results
-mock -r ../..$PWD/fedora-rawhide-x86_64 --copyout /builddir/build/BUILD/javapackages-${version}/test/nosetests.xml .
-
-# remove unneeded stuff
-rm -f javapackages-*.tar.xz
-
-last_bn=`grep "Build number" ${repo}/info.log | awk '{ print $3 }'`
-if [ -n "${last_bn}" ]; then
-    mkdir -p RPM/${last_bn}
-    mv ${repo}/* RPM/${last_bn}
-
-    # we only want keep RPMs from last 10 builds
-    blist=`find ./RPM/ -maxdepth 1 -name "[0-9]*"`
-    for bn in $blist; do
-        if [ `basename $bn` -lt `expr $last_bn - 10` ]; then
-            rm -Rf $bn
-        fi
-    done
-fi
-
-# copy resulting RPMs to RPM/latest
-cp ${resultdir}/* ${repo}
-
-tail -n 50 ${resultdir}/build.log
-
-createrepo ${repo}
-
-# store current build number into the file
-echo "Build number: $BUILD_NUMBER" >> ${repo}/info.log
-
diff --git a/fedora-rawhide-x86_64.cfg b/fedora-rawhide-x86_64.cfg
deleted file mode 100644
index 54bb30b..0000000
--- a/fedora-rawhide-x86_64.cfg
+++ /dev/null
@@ -1,37 +0,0 @@
-config_opts['root'] = 'javapackages-rawhide'
-config_opts['target_arch'] = 'x86_64'
-config_opts['legal_host_arches'] = ('x86_64',)
-config_opts['chroot_setup_cmd'] = 'install @buildsys-build PyXB asciidoc dia python-formencode python-lxml python-nose python-setuptools python2-devel scl-utils-build xmlto'
-config_opts['dist'] = 'rawhide'  # only useful for --resultdir variable subst
-config_opts['extra_chroot_dirs'] = [ '/run/lock', ]
-config_opts['releasever'] = '21'
-
-config_opts['yum.conf'] = """
-[main]
-logfile=/var/log/yum.log
-retries=20
-gpgcheck=0
-assumeyes=1
-syslog_ident=mock
-syslog_device=
-metadata_expire=1
-mirrorlist_expire=1
-debuglevel=2
-
-[mock-rawhide]
-name=mock-rawhide
-mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=x86_64
-failovermethod=priority
-cost=1000
-
-[mock-koji]
-name=mock-koji
-baseurl=http://kojipkgs.fedoraproject.org/repos/rawhide/latest/x86_64/
-cost=2000
-
-[mock-override]
-name=mock-override
-baseurl=http://people.redhat.com/~mizdebsk/jenkins-extra-repo/
-gpgcheck=0
-cost=500
-"""
diff --git a/install-pom_change_dep-man-page.patch b/install-pom_change_dep-man-page.patch
deleted file mode 100644
index bf98eb4..0000000
--- a/install-pom_change_dep-man-page.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff --git a/install b/install
-index 6caf88f..16216a7 100755
---- a/install
-+++ b/install
-@@ -142,6 +142,7 @@ inst_data target/pom_disable_module.7 "${mandir}/man7"
- inst_data target/pom_remove_dep.7 "${mandir}/man7"
- inst_data target/pom_remove_parent.7 "${mandir}/man7"
- inst_data target/pom_remove_plugin.7 "${mandir}/man7"
-+inst_data target/pom_change_dep.7 "${mandir}/man7"
- inst_data target/pom_set_parent.7 "${mandir}/man7"
- inst_data target/pom_xpath_inject.7 "${mandir}/man7"
- inst_data target/pom_xpath_remove.7 "${mandir}/man7"
-diff --git a/man/pom_change_dep.txt b/man/pom_change_dep.txt
-index 234853f..3871641 100644
---- a/man/pom_change_dep.txt
-+++ b/man/pom_change_dep.txt
-@@ -1,5 +1,5 @@
--pom_add_dep(7)
--==============
-+pom_change_dep(7)
-+=================
- :doctype:	manpage
- :man source:	JAVAPACKAGES
- :man manual:	Java Packages Tools
diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index 5b75975..b861ead 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -1,39 +1,61 @@
+%if 0%{?fedora} > 12
+%global with_python3 1
+%else
+%{!?__python2: %global __python2 /usr/bin/python2}
+%{!?python2_sitelib: %global python2_sitelib %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print (get_python_lib())")}
+%endif
+
 Name:           javapackages-tools
-Version:        4.1.0
-Release:        2%{?dist}
+Version:        4.2.0
+Release:        1%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
 License:        BSD
-URL:            https://fedorahosted.org/javapackages/
+URL:            https://git.fedorahosted.org/git/javapackages.git
 Source0:        https://fedorahosted.org/released/javapackages/javapackages-%{version}.tar.xz
 
-Patch0:         0001-maven.req-XMvn-sets-resolvedVersion-to-UNKNOWN-for-u.patch
-
 BuildArch:      noarch
 
-BuildRequires:  asciidoc
-BuildRequires:  xmlto
-BuildRequires:  python-lxml
+%if 0%{?with_python3}
+BuildRequires:  python3-devel
+BuildRequires:  python3-lxml
+BuildRequires:  python3-setuptools
+BuildRequires:  python3-nose
+BuildRequires:  python3-six
+BuildRequires:  python3-PyXB = 1.2.4
+%else
 BuildRequires:  python2-devel
+BuildRequires:  python-lxml
 BuildRequires:  python-setuptools
-BuildRequires:  python-formencode
-BuildRequires:  scl-utils-build
 BuildRequires:  python-nose
+BuildRequires:  python-six
+BuildRequires:  PyXB = 1.2.4
+%endif
+BuildRequires:  asciidoc
+BuildRequires:  xmlto
+BuildRequires:  scl-utils-build
 BuildRequires:  dia
-BuildRequires:  PyXB >= 1.2.3
 BuildRequires:  javapackages-tools >= 4.0.0
-BuildRequires:  xmvn-resolve >= 2.0.0
+BuildRequires:  xmvn-resolve >= 2
 
 Requires:       coreutils
 Requires:       libxslt
 Requires:       lua
-Requires:       python
+%if 0%{?with_python3}
+Requires:       python3-javapackages = %{version}-%{release}
+Requires:       python3
+%else
 Requires:       python-javapackages = %{version}-%{release}
+Requires:       python
+%endif
 
 Provides:       jpackage-utils = %{version}-%{release}
 Obsoletes:      jpackage-utils < %{version}-%{release}
 
+Provides:       mvn(com.sun:tools)
+Provides:       mvn(sun.jdk:jconsole)
+
 %description
 This package provides macros and scripts to support Java packaging.
 
@@ -90,14 +112,31 @@ Requires:       xmvn-connector-ivy >= 2
 This package implements local mode fow Apache Ivy, which allows
 artifact resolution using XMvn resolver.
 
+%if 0%{?with_python3}
+%package -n python3-javapackages
+Summary:        Module for handling various files for Java packaging
+Requires:       python3-PyXB = 1.2.4
+Requires:       python3-lxml
+Requires:       python3-six
+Obsoletes:      python-javapackages < %{version}-%{release}
+
+%description -n python3-javapackages
+Module for handling, querying and manipulating of various files for Java
+packaging in Linux distributions
+
+%else # python2
 %package -n python-javapackages
 Summary:        Module for handling various files for Java packaging
-Requires:       PyXB >= 1.2.3
+Requires:       PyXB = 1.2.4
 Requires:       python-lxml
+Requires:       python-six
+Obsoletes:      python3-javapackages < %{version}-%{release}
 
 %description -n python-javapackages
 Module for handling, querying and manipulating of various files for Java
 packaging in Linux distributions
+%endif
+
 
 %package -n fedora-review-plugin-java
 Summary:        fedora-review plugin for checking Java packaging guidelines
@@ -119,13 +158,6 @@ Requires:       %{name} = %{version}-%{release}
 Requires:       xmvn-install >= 2
 Requires:       xmvn-subst >= 2
 Requires:       xmvn-resolve >= 2
-# We want to use OpenJDK 8 for building packages as it is default
-# implementation used in Fedora.  Due to YUM bugs and limitations,
-# sometimes Java 7 may be installed alone.  To workaround this
-# maven-local explicitly requires version 8 of OpenJDK.  (If needed
-# Maven can still work with Java 7, but this needs to be enabled
-# explicitly in the spec file.)
-Requires:       java-1.8.0-openjdk-devel >= 1:1.8
 
 %description -n javapackages-local
 This package provides non-essential macros and scripts to support Java packaging.
@@ -133,13 +165,23 @@ This package provides non-essential macros and scripts to support Java packaging
 %prep
 %setup -q -n javapackages-%{version}
 
-%patch0 -p1
+%if 0%{?with_python3}
+find . -name '*.py' | xargs sed -i '1s|^#!.*python|#!%{__python3}|'
+find ./depgenerators -name '*.req' | xargs sed -i '1s|^#!.*python|#!%{__python3}|'
+find ./depgenerators -name '*.prov' | xargs sed -i '1s|^#!.*python|#!%{__python3}|'
+%endif # with_python3
+
 
 %build
 %configure
 ./build
+
 pushd python
-%{__python} setup.py build
+%if 0%{?with_python3}
+  %{__python3} setup.py build
+%else
+%{__python2} setup.py build
+%endif
 popd
 
 %install
@@ -147,12 +189,19 @@ popd
 sed -e 's/.[17]$/&.gz/' -e 's/.py$/&*/' -i files-*
 
 pushd python
-%{__python} setup.py install --skip-build --root $RPM_BUILD_ROOT
+%if 0%{?with_python3}
+  %{__python3} setup.py install -O1 --skip-build --root %{buildroot}
+%else
+%{__python} setup.py install -O1 --skip-build --root %{buildroot}
+%endif
 popd
 
 %check
-./check
-
+%if 0%{?with_python3}
+./check 3
+%else
+./check 2
+%endif
 
 %files -f files-common
 %doc LICENSE
@@ -163,9 +212,15 @@ popd
 
 %files -n ivy-local -f files-ivy
 
+%if 0%{?with_python3}
+%files -n python3-javapackages
+%doc LICENSE
+%{python3_sitelib}/javapackages*
+%else # python2
 %files -n python-javapackages
 %doc LICENSE
 %{python_sitelib}/javapackages*
+%endif
 
 %files -n fedora-review-plugin-java
 %{_datadir}/fedora-review/plugins/*
@@ -174,6 +229,9 @@ popd
 %doc LICENSE
 
 %changelog
+* Thu Jul 24 2014 Michal Srb <msrb at redhat.com> - 4.2.0-1
+- Update to upstream version 4.2.0
+
 * Thu Jul 10 2014 Michal Srb <msrb at redhat.com> - 4.1.0-2
 - Backport upstream patch for maven.req
 
diff --git a/sources b/sources
index 555cc91..174927a 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-90858a73cb6ba12b19c6a7d70a4c2cdf  javapackages-4.1.0.tar.xz
+69b79deca82c70af3f7aa5356abc5866  javapackages-4.2.0.tar.xz
diff --git a/update-docs.patch b/update-docs.patch
deleted file mode 100644
index 411e173..0000000
--- a/update-docs.patch
+++ /dev/null
@@ -1,227 +0,0 @@
-diff --git a/doc/ant.txt b/doc/ant.txt
-index 06ba3f3..fc500c3 100644
---- a/doc/ant.txt
-+++ b/doc/ant.txt
-@@ -22,7 +22,7 @@ Repository for it, ship it as another source and install it.
- [source,spec]
- -------------
- BuildRequires: ant
--BuildRequires: maven-local
-+BuildRequires: javapackages-local
- ...
- %build
- ant test
-diff --git a/doc/core_java_packages.txt b/doc/core_java_packages.txt
-index 34e0728..2baf4b2 100644
---- a/doc/core_java_packages.txt
-+++ b/doc/core_java_packages.txt
-@@ -51,9 +51,39 @@ non-zero epoch in order to keep version ordering correct.
- =======
- 
- 
-+==== Java Packages Tools
-+
-+Java Packages Tools are packaged as severas binary RPM packages
-+
-+*`maven-local`*::
-+
-+    This package provides a complete environment which is required to
-+    build Java packages using Apache Maven build system.  This
-+    includes a default system version of Java Development Kit (JDK),
-+    Maven, a number of Maven plugins commonly used to build packages,
-+    various macros and utlilty tools.  `maven-local` is usually
-+    declared as build dependency of Maven packages.
-+
-+*`ivy-local`*::
-+
-+    Analogously to `maven-local`, this package provides an environment
-+    required to build Java packages using Apache Ivy as dependency
-+    manager.
-+
-+*`javapackages-local`*::
-+
-+    Package providing a basic environment necessary to geterate and
-+    install metadata for system artifact repository.
-+
-+*`javapackages-tools`*::
-+
-+    Package owning basic Java directories and providing runtime
-+    support for Java packages.  The great majority of Java packages
-+    depend on `javapackages-tools`.
-+
-+
- TODO
- 
--* Java Packages Tools
- * Ant
- ** extra tasks and /etc/ant.d
- * Maven
-diff --git a/doc/directory_layout.txt b/doc/directory_layout.txt
-index 862ccd4..907777d 100644
---- a/doc/directory_layout.txt
-+++ b/doc/directory_layout.txt
-@@ -34,13 +34,6 @@ short description.
-     Maven are installed.  Each POM must have name that strictly
-     corresponds to JAR file in `%{_javadir}` or `%{_jnidir}`.
- 
--*`%{_mavendepmapfragdir}`* -- `/usr/share/maven-fragments`::
--
--    Directory containing package metadata in XML format.  Typically
--    each binary package installs there a single XML file containing
--    various information (metadata) about artifacts associated with
--    that package.
--
- 
- .Other directories
- [glossary]
-diff --git a/doc/generic_java_build.txt b/doc/generic_java_build.txt
-index 6fb09bb..5c29c95 100644
---- a/doc/generic_java_build.txt
-+++ b/doc/generic_java_build.txt
-@@ -11,49 +11,18 @@ POM or JAR file, we may use the `%add_maven_depmap` macro. However, if package
- is build in standard way (i.e.: `%mvn_build` and `%mvn_install`), then calling
- `%add_maven_depmap` is neither needed nor recommended.  This macro is usually
- useful only for packages that use other build tool than Maven (e.g.: ant,
--gradle).  It creates files in `%{_mavendepmapfragdir}` that map
--groupId:artifactId pairs to JAR files under `%{_javadir}`. These files are
--called depmap fragments. The macro can read the groupId and artifactId from the
--POM file or maintainer can pass this information as an argument.  All fragments
--in `%{_mavendepmapfragdir}` directory are read by XMvn, allowing the
--locally installed JAR and POM files to be used as a maven repository.
--
--Note that -- unless you use the `-f` option as shown below -- all
--depmap fragments for a given package are written to the same file,
--`%{_mavendepmapfragdir}/%{name}`. You should be sure to include this
--file in the `%files` section of your RPM.
-+gradle).
- 
- For the macro to work properly, all JAR files must be copied into `%{_javadir}`
--and all POM files must be copied into `%{_mavenpomdir}` and given file names of
--the following form, where `jarname` is the name of the JAR without the .jar
--suffix:
-+and all POM files must be copied into `%{_mavenpomdir}`.
- 
--[source,spec]
----------
--%{_mavenpomdir}/JPP[.subdirectory]-jarname.pom
----------
--
--Note that the subdirectory is only necessary if the JAR file is put into a
--subdirectory of `%{_javadir}`. For example:
--
--* For junit, the JAR is `%{_javadir}/junit.jar`, so the POM would be
--  `%{_mavenpomdir}/JPP-junit.pom`.
--* For plexus-ant-factory, the JAR is `%{_javadir}/plexus/ant-factory.jar`, so
--  the POM would named `%{_mavenpomdir}/JPP.plexus-ant-factory.pom`.
--
--If a POM is installed with no corresponding JAR file -- for example, for parent
--POM files -- the same convention should be followed:
--
--* The Apache commons parent POM is installed in
--  `%{_mavenpomdir}/JPP-commons-parent.pom`.
--
--In its simplest form (a POM without a JAR file), `%add_maven_depmap` looks like
-+In simplest form (a POM without a JAR file), `%add_maven_depmap` looks like
- this:
- 
- .Parent POM
- [source,spec]
- --------
--%add_maven_depmap JPP-%{name}.pom
-+%add_maven_depmap %{name}.pom
- --------
- 
- This will read the POM file in question and provide a mapping between the
-@@ -65,7 +34,7 @@ For a POM that maps directly to a JAR file, the following is the correct form:
- .Standard invocation
- [source,spec]
- --------
--%add_maven_depmap JPP-%{name}.pom %{name}.jar
-+%add_maven_depmap %{name}.pom %{name}.jar
- --------
- 
- In addition to creating the POM mapping, this will also ensure that the correct
-@@ -82,7 +51,7 @@ mapping between Maven artifact and corresponding JAR file:
- .Providing additional artifact mappings
- [source,spec]
- --------
--%add_maven_depmap JPP-%{name}.pom %{name}.jar -a "org.apache.commons:commons-lang"
-+%add_maven_depmap %{name}.pom %{name}.jar -a "org.apache.commons:commons-lang"
- --------
- This form also adds additional mappings for given POM/JAR file. For example, if
- the POM file indicates that it contains groupId commons-lang, artifactId
-@@ -94,16 +63,16 @@ require different IDs than those reflected in the installed POM.
- .Multiple subpackages
- [source,spec]
- --------
--%add_maven_depmap JPP-%{name}.pom %{name}.jar -f "XXX"
-+%add_maven_depmap %{name}.pom %{name}.jar -f "XXX"
- --------
--This form stores dependency mapping inside `%{_mavendepmapfragdir}/%{name}-XXX`
--instead of standard location. This is useful for packages with multiple
--subpackages where each has its own JAR files.
-+This form stores metadata information in file with suffix "XXX".  This
-+is useful for packages with multiple subpackages where each has its own
-+JAR files.
- 
- .Multiple artifacts in a subdirectory
- [source,spec]
- --------
--%add_maven_depmap JPP.%{name}-sub.pom %{name}/sub.jar
-+%add_maven_depmap %{name}-sub.pom %{name}/sub.jar
- --------
- 
- This form should be used when a package consists of multiple JAR files that are
-diff --git a/doc/index.txt b/doc/index.txt
-index f9af27e..22c9ab2 100644
---- a/doc/index.txt
-+++ b/doc/index.txt
-@@ -63,22 +63,6 @@ References
-   'DocBook - The Definitive Guide'. O'Reilly & Associates. 1999.
-   ISBN 1-56592-580-7.
- 
--
--[glossary]
--Glossary
----------
--Glossaries are optional. Glossaries entries are an example of a style
--of AsciiDoc labeled lists.
--
--[glossary]
--[[Xdepmap]]depmap::
--  Depmap is a special file telling Maven relationships between
--  groupId,artifactId and JAR file on the filesystem
--
--A second glossary term::
--  The corresponding (indented) definition.
--
--
- ifdef::backend-docbook[]
- [index]
- Example Index
-diff --git a/doc/maven.txt b/doc/maven.txt
-index 7539d00..63c8cc8 100644
---- a/doc/maven.txt
-+++ b/doc/maven.txt
-@@ -35,7 +35,7 @@ BuildRequires:  maven-local
- 
- The macros `%mvn_build` and `%mvn_install` automatically handle building of the
- JAR files and their subsequent installation to the correct directory. The
--corresponding POM and <<Xdepmap,depmap>> files are also installed.
-+corresponding POM and metadata files are also installed.
- 
- [[packaging_maven_project]]
- === Packaging Maven project
-diff --git a/doc/mvn_macros.txt b/doc/mvn_macros.txt
-index c1b9aa2..1115cc8 100644
---- a/doc/mvn_macros.txt
-+++ b/doc/mvn_macros.txt
-@@ -66,7 +66,7 @@ If the project consists of multiple artifacts, it is recommended to install each
- artifact to the separate subpackage. The macro `%mvn_build -s` will generate
- separate `.mfiles` file for every artifact in the project. This file contains
- list of files related to specific artifact (typically JAR file, POM file and
--depmap). It can be later used in `%files` section of the spec file.
-+metadata). It can be later used in `%files` section of the spec file.
- 
- .Creating one subpackage for each generated artifact
- [source,spec]
-- 
cgit v0.10.2


>From 9860c4d5e3ae09c91c183a663aa1a2e6f192ec5b Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb at redhat.com>
Date: Thu, 18 Sep 2014 14:30:26 +0200
Subject: Fix mvn_artifact: generate R, if it's not explicitly disabled


diff --git a/0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch b/0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch
new file mode 100644
index 0000000..c065e3b
--- /dev/null
+++ b/0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch
@@ -0,0 +1,26 @@
+From 928ebac767c95dc39f3b31a6260983cecc3e473b Mon Sep 17 00:00:00 2001
+From: Michal Srb <msrb at redhat.com>
+Date: Thu, 18 Sep 2014 10:48:07 +0200
+Subject: [PATCH] [mvn_artifact] Append dependencies to metadata, if we have
+ them
+
+---
+ java-utils/mvn_artifact.py | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/java-utils/mvn_artifact.py b/java-utils/mvn_artifact.py
+index ae17f9f..78074f0 100644
+--- a/java-utils/mvn_artifact.py
++++ b/java-utils/mvn_artifact.py
+@@ -301,6 +301,8 @@ if __name__ == "__main__":
+         mvn_deps = gather_dependencies(pom_path)
+         for d in mvn_deps:
+             deps.append(MetadataDependency.from_mvn_dependency(d))
++        if deps:
++            art.dependencies = set(deps)
+     else:
+         art.properties['xmvn.resolver.disableEffectivePom'] = 'true'
+ 
+-- 
+1.9.3
+
diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index b861ead..7dd9722 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -7,13 +7,14 @@
 
 Name:           javapackages-tools
 Version:        4.2.0
-Release:        1%{?dist}
+Release:        2%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
 License:        BSD
 URL:            https://git.fedorahosted.org/git/javapackages.git
 Source0:        https://fedorahosted.org/released/javapackages/javapackages-%{version}.tar.xz
+Patch0:         0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch
 
 BuildArch:      noarch
 
@@ -165,6 +166,8 @@ This package provides non-essential macros and scripts to support Java packaging
 %prep
 %setup -q -n javapackages-%{version}
 
+%patch0 -p1
+
 %if 0%{?with_python3}
 find . -name '*.py' | xargs sed -i '1s|^#!.*python|#!%{__python3}|'
 find ./depgenerators -name '*.req' | xargs sed -i '1s|^#!.*python|#!%{__python3}|'
@@ -229,6 +232,9 @@ popd
 %doc LICENSE
 
 %changelog
+* Thu Sep 18 2014 Michal Srb <msrb at redhat.com> - 4.2.0-2
+- Fix mvn_artifact: generate R, if it's not explicitly disabled
+
 * Thu Jul 24 2014 Michal Srb <msrb at redhat.com> - 4.2.0-1
 - Update to upstream version 4.2.0
 
-- 
cgit v0.10.2


>From 9eca9146b9d8e8033680583e924aa9245e9b432e Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb at redhat.com>
Date: Wed, 24 Sep 2014 17:16:53 +0200
Subject: Do not generate OSGi R on eclipse-platform


diff --git a/0001-metadata-Read-OSGi-Requires-from-manifest-only-if-os.patch b/0001-metadata-Read-OSGi-Requires-from-manifest-only-if-os.patch
new file mode 100644
index 0000000..b71d077
--- /dev/null
+++ b/0001-metadata-Read-OSGi-Requires-from-manifest-only-if-os.patch
@@ -0,0 +1,35 @@
+From 4272dc4bfd1c2945e00c82c27760a3ae6eed28dc Mon Sep 17 00:00:00 2001
+From: Michal Srb <msrb at redhat.com>
+Date: Wed, 24 Sep 2014 16:48:57 +0200
+Subject: [PATCH] [metadata] Read OSGi Requires from manifest only if osgi.id
+ property is missing in metadata
+
+Missing osgi.requires key in properties doesn't mean that we should
+always try to read Requires from manifest manually. XMvn skips this
+property, if there are no interesting Requires.
+---
+ python/javapackages/metadata/metadata.py | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/python/javapackages/metadata/metadata.py b/python/javapackages/metadata/metadata.py
+index b7c4c9f..5b507e3 100644
+--- a/python/javapackages/metadata/metadata.py
++++ b/python/javapackages/metadata/metadata.py
+@@ -200,7 +200,13 @@ class Metadata(object):
+                             reqs |= set(content.split(','))
+                             continue
+                         except KeyError:
+-                            pass
++                            try:
++                                osgi_id = artifact.properties["osgi.id"]
++                                # this file was already processed by XMvn and
++                                # there are no interesting OSGi requires, move on
++                                continue
++                            except KeyError:
++                                pass
+                     if artifact.path:
+                         import javapackages.common.osgi as osgi
+                         r = osgi.get_requires(artifact.get_buildroot_path())
+-- 
+1.9.3
+
diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index 7dd9722..d95b541 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -7,7 +7,7 @@
 
 Name:           javapackages-tools
 Version:        4.2.0
-Release:        2%{?dist}
+Release:        3%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
@@ -15,6 +15,7 @@ License:        BSD
 URL:            https://git.fedorahosted.org/git/javapackages.git
 Source0:        https://fedorahosted.org/released/javapackages/javapackages-%{version}.tar.xz
 Patch0:         0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch
+Patch1:         0001-metadata-Read-OSGi-Requires-from-manifest-only-if-os.patch
 
 BuildArch:      noarch
 
@@ -167,6 +168,7 @@ This package provides non-essential macros and scripts to support Java packaging
 %setup -q -n javapackages-%{version}
 
 %patch0 -p1
+%patch1 -p1
 
 %if 0%{?with_python3}
 find . -name '*.py' | xargs sed -i '1s|^#!.*python|#!%{__python3}|'
@@ -232,6 +234,9 @@ popd
 %doc LICENSE
 
 %changelog
+* Wed Sep 24 2014 Michal Srb <msrb at redhat.com> - 4.2.0-3
+- Do not generate OSGi R on eclipse-platform
+
 * Thu Sep 18 2014 Michal Srb <msrb at redhat.com> - 4.2.0-2
 - Fix mvn_artifact: generate R, if it's not explicitly disabled
 
-- 
cgit v0.10.2


>From 2ae8a120aad7b6ac81eeaab7f6507e70da2a66eb Mon Sep 17 00:00:00 2001
From: Michael Simacek <msimacek at redhat.com>
Date: Tue, 21 Oct 2014 10:27:08 +0200
Subject: Fix pom_editor missing space between xmlns declarations


diff --git a/0001-pom_editor-Fix-missing-space-between-xmlns-declarati.patch b/0001-pom_editor-Fix-missing-space-between-xmlns-declarati.patch
new file mode 100644
index 0000000..dd409c6
--- /dev/null
+++ b/0001-pom_editor-Fix-missing-space-between-xmlns-declarati.patch
@@ -0,0 +1,27 @@
+From d35af95c5cba1b898a9b183076d1a88c534415b9 Mon Sep 17 00:00:00 2001
+From: Michael Simacek <msimacek at redhat.com>
+Date: Tue, 21 Oct 2014 10:23:08 +0200
+Subject: [PATCH] [pom_editor] Fix missing space between xmlns declarations
+
+---
+ java-utils/pom_editor.py | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/java-utils/pom_editor.py b/java-utils/pom_editor.py
+index ca8fe45..ce487e0 100644
+--- a/java-utils/pom_editor.py
++++ b/java-utils/pom_editor.py
+@@ -350,8 +350,8 @@ class Pom(XmlFile):
+     NSMAP = {'pom': 'http://maven.apache.org/POM/4.0.0',
+               'xsi': 'http://www.w3.org/2001/XMLSchema-instance'}
+     NS = '{' + NSMAP['pom'] + '}'
+-    XMLNS = ('xmlns="http://maven.apache.org/POM/4.0.0"'
+-    'xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"'
++    XMLNS = ('xmlns="http://maven.apache.org/POM/4.0.0" '
++    'xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" '
+     'xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 '
+     'http://maven.apache.org/xsd/maven-4.0.0.xsd"')
+     DEPENDENCY_NODE = 'pom:dependency'
+-- 
+1.9.3
+
diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index d95b541..5a5e59d 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -7,7 +7,7 @@
 
 Name:           javapackages-tools
 Version:        4.2.0
-Release:        3%{?dist}
+Release:        4%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
@@ -16,6 +16,7 @@ URL:            https://git.fedorahosted.org/git/javapackages.git
 Source0:        https://fedorahosted.org/released/javapackages/javapackages-%{version}.tar.xz
 Patch0:         0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch
 Patch1:         0001-metadata-Read-OSGi-Requires-from-manifest-only-if-os.patch
+Patch2:         0001-pom_editor-Fix-missing-space-between-xmlns-declarati.patch
 
 BuildArch:      noarch
 
@@ -169,6 +170,7 @@ This package provides non-essential macros and scripts to support Java packaging
 
 %patch0 -p1
 %patch1 -p1
+%patch2 -p1
 
 %if 0%{?with_python3}
 find . -name '*.py' | xargs sed -i '1s|^#!.*python|#!%{__python3}|'
@@ -234,6 +236,9 @@ popd
 %doc LICENSE
 
 %changelog
+* Tue Oct 21 2014 Michael Simacek <msimacek at redhat.com> - 4.2.0-4
+- Fix pom_editor missing space between xmlns declarations
+
 * Wed Sep 24 2014 Michal Srb <msrb at redhat.com> - 4.2.0-3
 - Do not generate OSGi R on eclipse-platform
 
-- 
cgit v0.10.2


>From 827c3bd46f3b5bb20f693f1e507afa3769161b2c Mon Sep 17 00:00:00 2001
From: Mikolaj Izdebski <mizdebsk at redhat.com>
Date: Thu, 30 Oct 2014 15:52:58 +0100
Subject: Use wrapper script to inject ABRT agent JVM argument

- Resolves: rhbz#1153652

diff --git a/0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch b/0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch
index c065e3b..a980643 100644
--- a/0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch
+++ b/0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch
@@ -1,8 +1,8 @@
-From 928ebac767c95dc39f3b31a6260983cecc3e473b Mon Sep 17 00:00:00 2001
+From eafaa146aace0885d17ff472db0a63aef75f2ce5 Mon Sep 17 00:00:00 2001
 From: Michal Srb <msrb at redhat.com>
 Date: Thu, 18 Sep 2014 10:48:07 +0200
-Subject: [PATCH] [mvn_artifact] Append dependencies to metadata, if we have
- them
+Subject: [PATCH 1/2] [mvn_artifact] Append dependencies to metadata, if we
+ have them
 
 ---
  java-utils/mvn_artifact.py | 2 ++
diff --git a/0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch b/0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch
new file mode 100644
index 0000000..aefdebc
--- /dev/null
+++ b/0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch
@@ -0,0 +1,73 @@
+From dee96bf521cdbae4c80ee328968e1ff5200f2aab Mon Sep 17 00:00:00 2001
+From: Mikolaj Izdebski <mizdebsk at redhat.com>
+Date: Thu, 30 Oct 2014 15:20:20 +0100
+Subject: [PATCH 2/2] Use wrapper script to inject extra JVM arguments
+
+---
+ install                   |  1 +
+ java-utils/java-functions | 14 ++++++++++++--
+ java-utils/java-wrapper   |  8 ++++++++
+ 3 files changed, 21 insertions(+), 2 deletions(-)
+ create mode 100644 java-utils/java-wrapper
+
+diff --git a/install b/install
+index a672a0c..97019ca 100755
+--- a/install
++++ b/install
+@@ -122,6 +122,7 @@ inst_config etc/font.properties "${javaconfdir}"
+ inst_config target/java.conf "${javaconfdir}"
+ 
+ inst_data target/java-functions "${javadir}-utils"
++inst_exec java-utils/java-wrapper "${javadir}-utils"
+ inst_data java-utils/maven_depmap.py "${javadir}-utils"
+ inst_data java-utils/pom_editor.py "${javadir}-utils"
+ 
+diff --git a/java-utils/java-functions b/java-utils/java-functions
+index fcadb1c..c57640f 100644
+--- a/java-utils/java-functions
++++ b/java-utils/java-functions
+@@ -228,7 +228,12 @@ set_javacmd()
+ 	JAVACMD="${JAVA_HOME}/${cmd}"
+ 	if [ -x "${JAVACMD}" ]; then
+ 	    _log "Using configured JAVACMD: $JAVACMD"
+-	    JAVACMD="${JAVACMD}${JAVACMD_OPTS:+ }${JAVACMD_OPTS}"
++	    if [ -n "${JAVACMD_OPTS}" ]; then
++		_log "Using java-wrapper with extra options: ${JAVACMD_OPTS}"
++		export _JP_JAVACMD="${JAVACMD}"
++		export _JP_JAVACMD_OPTS="${JAVACMD_OPTS}"
++		JAVACMD="%{javadir}-utils/java-wrapper"
++	    fi
+ 	    return 0
+ 	fi
+     done
+@@ -236,7 +241,12 @@ set_javacmd()
+     JAVACMD=$(which java 2>/dev/null || :)
+     if [ -x "${JAVACMD}" ]; then
+ 	_log "Using JAVACMD from PATH: $JAVACMD"
+-	JAVACMD="${JAVACMD}${JAVACMD_OPTS:+ }${JAVACMD_OPTS}"
++	if [ -n "${JAVACMD_OPTS}" ]; then
++	    _log "Using java-wrapper with extra options: ${JAVACMD_OPTS}"
++	    export _JP_JAVACMD="${JAVACMD}"
++	    export _JP_JAVACMD_OPTS="${JAVACMD_OPTS}"
++	    JAVACMD="%{javadir}-utils/java-wrapper"
++	fi
+ 	return 0
+     fi
+ 
+diff --git a/java-utils/java-wrapper b/java-utils/java-wrapper
+new file mode 100644
+index 0000000..29b3143
+--- /dev/null
++++ b/java-utils/java-wrapper
+@@ -0,0 +1,8 @@
++#!/bin/sh
++
++JAVACMD="${_JP_JAVACMD}"
++JAVACMD_OPTS="${_JP_JAVACMD_OPTS}"
++unset _JP_JAVACMD
++unset _JP_JAVACMD_OPTS
++
++exec "${JAVACMD}" ${JAVACMD_OPTS} "${@}"
+-- 
+1.9.3
+
diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index 5a5e59d..00c6ef0 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -7,7 +7,7 @@
 
 Name:           javapackages-tools
 Version:        4.2.0
-Release:        4%{?dist}
+Release:        5%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
@@ -17,6 +17,7 @@ Source0:        https://fedorahosted.org/released/javapackages/javapackages-%{ve
 Patch0:         0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch
 Patch1:         0001-metadata-Read-OSGi-Requires-from-manifest-only-if-os.patch
 Patch2:         0001-pom_editor-Fix-missing-space-between-xmlns-declarati.patch
+Patch3:         0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch
 
 BuildArch:      noarch
 
@@ -171,6 +172,7 @@ This package provides non-essential macros and scripts to support Java packaging
 %patch0 -p1
 %patch1 -p1
 %patch2 -p1
+%patch3 -p1
 
 %if 0%{?with_python3}
 find . -name '*.py' | xargs sed -i '1s|^#!.*python|#!%{__python3}|'
@@ -236,6 +238,10 @@ popd
 %doc LICENSE
 
 %changelog
+* Thu Oct 30 2014 Mikolaj Izdebski <mizdebsk at redhat.com> - 4.2.0-5
+- Use wrapper script to inject ABRT agent JVM argument
+- Resolves: rhbz#1153652
+
 * Tue Oct 21 2014 Michael Simacek <msimacek at redhat.com> - 4.2.0-4
 - Fix pom_editor missing space between xmlns declarations
 
-- 
cgit v0.10.2


>From 532a3d6f1c0074273bd13d4819561d90271b3743 Mon Sep 17 00:00:00 2001
From: Mikolaj Izdebski <mizdebsk at redhat.com>
Date: Thu, 30 Oct 2014 15:57:38 +0100
Subject: Fix path to ABRT agent DSO


diff --git a/0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch b/0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch
index a980643..791ff21 100644
--- a/0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch
+++ b/0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch
@@ -1,7 +1,7 @@
 From eafaa146aace0885d17ff472db0a63aef75f2ce5 Mon Sep 17 00:00:00 2001
 From: Michal Srb <msrb at redhat.com>
 Date: Thu, 18 Sep 2014 10:48:07 +0200
-Subject: [PATCH 1/2] [mvn_artifact] Append dependencies to metadata, if we
+Subject: [PATCH 1/3] [mvn_artifact] Append dependencies to metadata, if we
  have them
 
 ---
diff --git a/0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch b/0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch
index aefdebc..64669f8 100644
--- a/0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch
+++ b/0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch
@@ -1,7 +1,7 @@
 From dee96bf521cdbae4c80ee328968e1ff5200f2aab Mon Sep 17 00:00:00 2001
 From: Mikolaj Izdebski <mizdebsk at redhat.com>
 Date: Thu, 30 Oct 2014 15:20:20 +0100
-Subject: [PATCH 2/2] Use wrapper script to inject extra JVM arguments
+Subject: [PATCH 2/3] Use wrapper script to inject extra JVM arguments
 
 ---
  install                   |  1 +
diff --git a/0003-Use-architecture-independent-location-of-abrt-java-c.patch b/0003-Use-architecture-independent-location-of-abrt-java-c.patch
new file mode 100644
index 0000000..9c57283
--- /dev/null
+++ b/0003-Use-architecture-independent-location-of-abrt-java-c.patch
@@ -0,0 +1,69 @@
+From 97ee162d443fd954208c277c43f7195339b01e8d Mon Sep 17 00:00:00 2001
+From: Jakub Filak <jfilak at redhat.com>
+Date: Thu, 30 Oct 2014 08:36:56 +0100
+Subject: [PATCH 3/3] Use architecture-independent location of
+ abrt-java-connector
+
+The connector's library has been moved to architecture-independent
+directory /usr/lib/abrt-java-connector/, because Java does not
+officially support multilib and having the connector installed the arch
+specific directory was causing us problems if Java package doesn't match
+host architecture (e.g. Java i386 on host x86_64).
+
+Signed-off-by: Jakub Filak <jfilak at redhat.com>
+---
+ build                     | 1 +
+ configure                 | 2 ++
+ java-utils/java-functions | 4 ++--
+ 3 files changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/build b/build
+index 3f5631a..336ac2a 100755
+--- a/build
++++ b/build
+@@ -65,6 +65,7 @@ expand()
+         -e "s|%{rundir}|${rundir}|" \
+         -e "s|%{sysconfdir}|${sysconfdir}|" \
+         -e "s|%{pyinterpreter}|${pyinterpreter}|" \
++        -e "s|%{abrtlibdir}|${abrtlibdir}|" \
+         "${1}" >"${target}"
+ }
+ 
+diff --git a/configure b/configure
+index cc8b0a1..ab9388d 100755
+--- a/configure
++++ b/configure
+@@ -69,6 +69,7 @@ jvmprivdir
+ jvmsysconfdir
+ mavenpomdir
+ pyinterpreter
++abrtlibdir
+ "
+ 
+ vars="$vars mavendepmapdir mavendepmapfragdir" # @Deprecated
+@@ -90,6 +91,7 @@ test -z "${rpmconfigdir}" && rpmconfigdir="${prefix}/lib/rpm"
+ 
+ test -z "${m2home}" && m2home="${datadir}/xmvn"
+ test -z "${pyinterpreter}" && set_pyinterpreter
++test -z "${abrtlibdir}" && abrtlibdir="${prefix}/lib/abrt-java-connector"
+ 
+ eval $(sed -n 's/^%_\('"$vars_re"'\)\ *\(.*\)$/\1="\2"/;T;s/%{_\(.*}\)/${\1/;p' macros.d/macros.jpackage)
+ 
+diff --git a/java-utils/java-functions b/java-utils/java-functions
+index c57640f..8397d2c 100644
+--- a/java-utils/java-functions
++++ b/java-utils/java-functions
+@@ -110,8 +110,8 @@ _load_java_conf()
+ 	JAVACMD_OPTS="${java_opts_save}"
+     fi
+ 
+-    if [ "_${JAVA_ABRT}" != "_off" ] && [ -f %{libdir}/libabrt-java-connector.so ] && [ -f %{rundir}/abrt/abrtd.pid ]; then
+-	JAVACMD_OPTS="${JAVACMD_OPTS} -agentpath:%{libdir}/libabrt-java-connector.so=abrt=on"
++    if [ "_${JAVA_ABRT}" != "_off" ] && [ -f %{abrtlibdir}/libabrt-java-connector.so ] && [ -f %{rundir}/abrt/abrtd.pid ]; then
++	JAVACMD_OPTS="${JAVACMD_OPTS} -agentpath:%{abrtlibdir}/libabrt-java-connector.so=abrt=on"
+     fi
+ }
+ 
+-- 
+1.9.3
+
diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index 00c6ef0..bbb6c10 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -18,6 +18,7 @@ Patch0:         0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch
 Patch1:         0001-metadata-Read-OSGi-Requires-from-manifest-only-if-os.patch
 Patch2:         0001-pom_editor-Fix-missing-space-between-xmlns-declarati.patch
 Patch3:         0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch
+Patch4:         0003-Use-architecture-independent-location-of-abrt-java-c.patch
 
 BuildArch:      noarch
 
@@ -173,6 +174,7 @@ This package provides non-essential macros and scripts to support Java packaging
 %patch1 -p1
 %patch2 -p1
 %patch3 -p1
+%patch4 -p1
 
 %if 0%{?with_python3}
 find . -name '*.py' | xargs sed -i '1s|^#!.*python|#!%{__python3}|'
@@ -240,6 +242,7 @@ popd
 %changelog
 * Thu Oct 30 2014 Mikolaj Izdebski <mizdebsk at redhat.com> - 4.2.0-5
 - Use wrapper script to inject ABRT agent JVM argument
+- Fix path to ABRT agent DSO
 - Resolves: rhbz#1153652
 
 * Tue Oct 21 2014 Michael Simacek <msimacek at redhat.com> - 4.2.0-4
-- 
cgit v0.10.2


>From 8b7596336b6c00bdecf54c545c347fde1cc9879b Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb at redhat.com>
Date: Wed, 12 Nov 2014 19:07:24 +0100
Subject: Fix cache problem (Resolves: rhbz#1155185)


diff --git a/0001-fix-rhbz#1155185.patch b/0001-fix-rhbz#1155185.patch
new file mode 100644
index 0000000..2693d3a
--- /dev/null
+++ b/0001-fix-rhbz#1155185.patch
@@ -0,0 +1,42 @@
+diff --git a/python/javapackages/common/util.py b/python/javapackages/common/util.py
+index 071805f..325650a 100644
+--- a/python/javapackages/common/util.py
++++ b/python/javapackages/common/util.py
+@@ -44,7 +44,7 @@ def kill_parent_process():
+ def get_cachedir(path, create_if_not_exists=True):
+     cachedir_path = os.path.join(path, ".javapackages_cache")
+     if not os.path.exists(cachedir_path) and create_if_not_exists:
+-        os.mkdir(cachedir_path)
++        os.makedirs(cachedir_path)
+     return cachedir_path
+ 
+ 
+diff --git a/python/javapackages/metadata/metadata.py b/python/javapackages/metadata/metadata.py
+index 5b507e3..a0485d1 100644
+--- a/python/javapackages/metadata/metadata.py
++++ b/python/javapackages/metadata/metadata.py
+@@ -250,7 +250,8 @@ class Metadata(object):
+     def _write_cache_file(self, cachefile, content):
+         try:
+             cachefile = open(cachefile, 'wb')
+-            pickle.dump(content, cachefile)
++            cache = (os.getppid(), content)
++            pickle.dump(cache, cachefile)
+             cachefile.close()
+         except IOError:
+             return None
+@@ -260,8 +261,12 @@ class Metadata(object):
+     def _read_cache_file(cachefile):
+         try:
+             cachefile = open(cachefile, 'rb')
+-            content = pickle.load(cachefile)
++            cache = pickle.load(cachefile)
+             cachefile.close()
++            # check if the cache was most likely created during current build
++            if cache[0] != os.getppid():
++                logging.warning("Cache is outdated, skipping")
++                return None
+         except IOError:
+             return None
+-        return content
++        return cache[1]
diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index bbb6c10..f871107 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -7,7 +7,7 @@
 
 Name:           javapackages-tools
 Version:        4.2.0
-Release:        5%{?dist}
+Release:        6%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
@@ -19,6 +19,7 @@ Patch1:         0001-metadata-Read-OSGi-Requires-from-manifest-only-if-os.patch
 Patch2:         0001-pom_editor-Fix-missing-space-between-xmlns-declarati.patch
 Patch3:         0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch
 Patch4:         0003-Use-architecture-independent-location-of-abrt-java-c.patch
+Patch5:         0001-fix-rhbz#1155185.patch
 
 BuildArch:      noarch
 
@@ -175,6 +176,7 @@ This package provides non-essential macros and scripts to support Java packaging
 %patch2 -p1
 %patch3 -p1
 %patch4 -p1
+%patch5 -p1
 
 %if 0%{?with_python3}
 find . -name '*.py' | xargs sed -i '1s|^#!.*python|#!%{__python3}|'
@@ -240,6 +242,9 @@ popd
 %doc LICENSE
 
 %changelog
+* Wed Nov 12 2014 Michal Srb <msrb at redhat.com> - 4.2.0-6
+- Fix cache problem (Resolves: rhbz#1155185)
+
 * Thu Oct 30 2014 Mikolaj Izdebski <mizdebsk at redhat.com> - 4.2.0-5
 - Use wrapper script to inject ABRT agent JVM argument
 - Fix path to ABRT agent DSO
-- 
cgit v0.10.2


>From 0aabe81a8e94681f1d986190ec655366c4daa8f4 Mon Sep 17 00:00:00 2001
From: Mikolaj Izdebski <mizdebsk at redhat.com>
Date: Fri, 21 Nov 2014 06:15:35 +0100
Subject: Fix OSGi provides/requires generation in Java libdir

- Resolves: rhbz#1166156

diff --git a/0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch b/0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch
index 791ff21..67f6cb4 100644
--- a/0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch
+++ b/0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch
@@ -1,7 +1,7 @@
 From eafaa146aace0885d17ff472db0a63aef75f2ce5 Mon Sep 17 00:00:00 2001
 From: Michal Srb <msrb at redhat.com>
 Date: Thu, 18 Sep 2014 10:48:07 +0200
-Subject: [PATCH 1/3] [mvn_artifact] Append dependencies to metadata, if we
+Subject: [PATCH 1/5] [mvn_artifact] Append dependencies to metadata, if we
  have them
 
 ---
diff --git a/0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch b/0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch
index 64669f8..fe61427 100644
--- a/0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch
+++ b/0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch
@@ -1,7 +1,7 @@
 From dee96bf521cdbae4c80ee328968e1ff5200f2aab Mon Sep 17 00:00:00 2001
 From: Mikolaj Izdebski <mizdebsk at redhat.com>
 Date: Thu, 30 Oct 2014 15:20:20 +0100
-Subject: [PATCH 2/3] Use wrapper script to inject extra JVM arguments
+Subject: [PATCH 2/5] Use wrapper script to inject extra JVM arguments
 
 ---
  install                   |  1 +
diff --git a/0003-Use-architecture-independent-location-of-abrt-java-c.patch b/0003-Use-architecture-independent-location-of-abrt-java-c.patch
index 9c57283..73a355e 100644
--- a/0003-Use-architecture-independent-location-of-abrt-java-c.patch
+++ b/0003-Use-architecture-independent-location-of-abrt-java-c.patch
@@ -1,7 +1,7 @@
 From 97ee162d443fd954208c277c43f7195339b01e8d Mon Sep 17 00:00:00 2001
 From: Jakub Filak <jfilak at redhat.com>
 Date: Thu, 30 Oct 2014 08:36:56 +0100
-Subject: [PATCH 3/3] Use architecture-independent location of
+Subject: [PATCH 3/5] Use architecture-independent location of
  abrt-java-connector
 
 The connector's library has been moved to architecture-independent
diff --git a/0004-Make-sure-_libdir-is-not-use.patch b/0004-Make-sure-_libdir-is-not-use.patch
new file mode 100644
index 0000000..867d991
--- /dev/null
+++ b/0004-Make-sure-_libdir-is-not-use.patch
@@ -0,0 +1,71 @@
+From bd3bfd39508792f91621cba0b6279eeeef4aa866 Mon Sep 17 00:00:00 2001
+From: Mikolaj Izdebski <mizdebsk at redhat.com>
+Date: Thu, 30 Oct 2014 09:18:08 +0100
+Subject: [PATCH 4/5] Make sure %{_libdir} is not use
+
+Javapackages as noarch package cannot safely reference libdir.
+---
+ build                              | 1 -
+ configure                          | 2 --
+ depgenerators/fileattrs/osgi.attr  | 2 +-
+ python/javapackages/common/osgi.py | 2 +-
+ 4 files changed, 2 insertions(+), 5 deletions(-)
+
+diff --git a/build b/build
+index 336ac2a..67da1b3 100755
+--- a/build
++++ b/build
+@@ -54,7 +54,6 @@ expand()
+ 
+     sed \
+         -e "s|%{bindir}|${bindir}|" \
+-        -e "s|%{libdir}|${libdir}|" \
+         -e "s|%{datadir}|${datadir}|" \
+         -e "s|%{javaconfdir}|${javaconfdir}|" \
+         -e "s|%{javadir}|${javadir}|" \
+diff --git a/configure b/configure
+index ab9388d..da9c9a1 100755
+--- a/configure
++++ b/configure
+@@ -44,7 +44,6 @@ function set_pyinterpreter() {
+ vars="
+ bindir
+ datadir
+-libdir
+ localstatedir
+ mandir
+ prefix
+@@ -82,7 +81,6 @@ eval $(for _; do echo "$_"; done |
+ test -z "${prefix}" && prefix="/usr/local"
+ test -z "${bindir}" && bindir="${prefix}/bin"
+ test -z "${datadir}" && datadir="${prefix}/share"
+-test -z "${libdir}" && libdir="${prefix}/lib"
+ test -z "${localstatedir}" && localstatedir="${prefix}/var"
+ test -z "${mandir}" && mandir="${datadir}/man"
+ test -z "${rundir}" && rundir="${localstatedir}/run"
+diff --git a/depgenerators/fileattrs/osgi.attr b/depgenerators/fileattrs/osgi.attr
+index 58bba2d..f65cb0a 100644
+--- a/depgenerators/fileattrs/osgi.attr
++++ b/depgenerators/fileattrs/osgi.attr
+@@ -2,4 +2,4 @@
+ %__osgi_provides_opts	%{_builddir}/%{?buildsubdir}
+ %__osgi_requires	%{_rpmconfigdir}/osgi.req
+ %__osgi_requires_opts	%{_builddir}/%{?buildsubdir}
+-%__osgi_path	^(.*\\.jar$|((%{_libdir}|%{_datadir}).*/MANIFEST.MF))
++%__osgi_path	^(.*\\.jar$|((%{_prefix}/lib|%{_datadir})/.*/MANIFEST.MF))
+diff --git a/python/javapackages/common/osgi.py b/python/javapackages/common/osgi.py
+index fdfdc3b..a1d72fc 100644
+--- a/python/javapackages/common/osgi.py
++++ b/python/javapackages/common/osgi.py
+@@ -177,7 +177,7 @@ def _check_path(path):
+         # who knows where the manifest can be in buildroot
+         # TODO: improve this check somehow(?)
+         # this is an attempt to identify only MANIFEST.MF files
+-        # which are in %{_datadir} or %{_libdir}
++        # which are in %{_datadir} or %{_prefix}/lib
+         if "/usr/share/" in path or "/usr/lib" in path:
+             return True
+     return False
+-- 
+1.9.3
+
diff --git a/0005-Improve-patterns-for-matching-OSGi-manifests.patch b/0005-Improve-patterns-for-matching-OSGi-manifests.patch
new file mode 100644
index 0000000..0d0be97
--- /dev/null
+++ b/0005-Improve-patterns-for-matching-OSGi-manifests.patch
@@ -0,0 +1,36 @@
+From f0a2e4226028c4a68d956ef9ac1d4d43fdbe961e Mon Sep 17 00:00:00 2001
+From: Mikolaj Izdebski <mizdebsk at redhat.com>
+Date: Thu, 20 Nov 2014 16:22:52 +0100
+Subject: [PATCH 5/5] Improve patterns for matching OSGi manifests
+
+---
+ depgenerators/fileattrs/osgi.attr  | 2 +-
+ python/javapackages/common/osgi.py | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/depgenerators/fileattrs/osgi.attr b/depgenerators/fileattrs/osgi.attr
+index f65cb0a..edacd4d 100644
+--- a/depgenerators/fileattrs/osgi.attr
++++ b/depgenerators/fileattrs/osgi.attr
+@@ -2,4 +2,4 @@
+ %__osgi_provides_opts	%{_builddir}/%{?buildsubdir}
+ %__osgi_requires	%{_rpmconfigdir}/osgi.req
+ %__osgi_requires_opts	%{_builddir}/%{?buildsubdir}
+-%__osgi_path	^(.*\\.jar$|((%{_prefix}/lib|%{_datadir})/.*/MANIFEST.MF))
++%__osgi_path	^(.*\\.jar|((%{_prefix}/lib|%{_datadir})/.*/META-INF/MANIFEST.MF))$
+diff --git a/python/javapackages/common/osgi.py b/python/javapackages/common/osgi.py
+index a1d72fc..66610c2 100644
+--- a/python/javapackages/common/osgi.py
++++ b/python/javapackages/common/osgi.py
+@@ -93,7 +93,7 @@ def split_bundle_name(bundles):
+ 
+ def open_manifest(path):
+     mf = None
+-    if path.endswith("META-INF/MANIFEST.MF"):
++    if path.endswith("/META-INF/MANIFEST.MF"):
+         mf = open(path, "rb")
+     if zipfile.is_zipfile(path):
+         # looks like "zipfile.is_zipfile()" is not reliable
+-- 
+1.9.3
+
diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index f871107..806f260 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -7,7 +7,7 @@
 
 Name:           javapackages-tools
 Version:        4.2.0
-Release:        6%{?dist}
+Release:        7%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
@@ -20,6 +20,8 @@ Patch2:         0001-pom_editor-Fix-missing-space-between-xmlns-declarati.patch
 Patch3:         0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch
 Patch4:         0003-Use-architecture-independent-location-of-abrt-java-c.patch
 Patch5:         0001-fix-rhbz#1155185.patch
+Patch6:         0004-Make-sure-_libdir-is-not-use.patch
+Patch7:         0005-Improve-patterns-for-matching-OSGi-manifests.patch
 
 BuildArch:      noarch
 
@@ -177,6 +179,8 @@ This package provides non-essential macros and scripts to support Java packaging
 %patch3 -p1
 %patch4 -p1
 %patch5 -p1
+%patch6 -p1
+%patch7 -p1
 
 %if 0%{?with_python3}
 find . -name '*.py' | xargs sed -i '1s|^#!.*python|#!%{__python3}|'
@@ -242,6 +246,10 @@ popd
 %doc LICENSE
 
 %changelog
+* Fri Nov 21 2014 Mikolaj Izdebski <mizdebsk at redhat.com> - 4.2.0-7
+- Fix OSGi provides/requires generation in Java libdir
+- Resolves: rhbz#1166156
+
 * Wed Nov 12 2014 Michal Srb <msrb at redhat.com> - 4.2.0-6
 - Fix cache problem (Resolves: rhbz#1155185)
 
-- 
cgit v0.10.2


>From 8260ebcd74bc3ffb44a2c177b39c1550038d7984 Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb at redhat.com>
Date: Mon, 24 Nov 2014 12:08:33 +0100
Subject: Add namespace support in %mvn_artifact


diff --git a/0006-mvn_artifact-Add-namespace-support.patch b/0006-mvn_artifact-Add-namespace-support.patch
new file mode 100644
index 0000000..d03f899
--- /dev/null
+++ b/0006-mvn_artifact-Add-namespace-support.patch
@@ -0,0 +1,68 @@
+From 3f1b4b9e3427c0c633039c346475b9f47aa0f35e Mon Sep 17 00:00:00 2001
+From: Michal Srb <msrb at redhat.com>
+Date: Mon, 24 Nov 2014 10:28:42 +0100
+Subject: [PATCH] [mvn_artifact] Add namespace support
+
+---
+ java-utils/mvn_artifact.py | 10 ++++++++--
+ macros.d/macros.xmvn       |  2 +-
+ 2 files changed, 9 insertions(+), 3 deletions(-)
+
+diff --git a/java-utils/mvn_artifact.py b/java-utils/mvn_artifact.py
+index 78074f0..185eb9d 100644
+--- a/java-utils/mvn_artifact.py
++++ b/java-utils/mvn_artifact.py
+@@ -118,7 +118,7 @@ def is_it_ivy_file(fpath):
+     return doc.tag == "ivy-module"
+ 
+ 
+-def add_artifact_elements(root, art, ppath=None, jpath=None):
++def add_artifact_elements(root, art, namespace="", ppath=None, jpath=None):
+     artifacts = []
+     ext_backup = art.extension
+     for path in [ppath, jpath]:
+@@ -133,6 +133,10 @@ def add_artifact_elements(root, art, ppath=None, jpath=None):
+                 art.extension = ext_backup
+ 
+             art.path = os.path.abspath(path)
++
++            if namespace:
++                art.namespace = namespace
++
+             a = art.to_metadata()
+             artifacts.append(a)
+ 
+@@ -246,6 +250,8 @@ if __name__ == "__main__":
+                       help="skip dependencies section in resulting metadata")
+     parser.add_option("-D", action="append", type="str",
+                       help="add artifact property", metavar="property=value")
++    parser.add_option("-n", "--namespace", type="str",
++                      help="Namespace for generated artifacts", default="")
+ 
+     sys.argv = args_to_unicode(sys.argv)
+ 
+@@ -311,7 +317,7 @@ if __name__ == "__main__":
+             key, value = d_opt.split('=')
+             art.properties[key] = value
+ 
+-    add_artifact_elements(metadata, art, pom_path, jar_path)
++    add_artifact_elements(metadata, art, options.namespace, pom_path, jar_path)
+ 
+     with open(config, 'w') as f:
+         dom = metadata.toDOM(None)
+diff --git a/macros.d/macros.xmvn b/macros.d/macros.xmvn
+index e7a6dda..fc2e724 100644
+--- a/macros.d/macros.xmvn
++++ b/macros.d/macros.xmvn
+@@ -118,7 +118,7 @@
+ #
+ # Usage: %mvn_artifact <pom> [<artifact-file>]
+ #
+-%mvn_artifact %{pyinterpreter} %{javadir}-utils/mvn_artifact.py
++%mvn_artifact %{pyinterpreter} %{javadir}-utils/mvn_artifact.py -n "%{?scl}"
+ 
+ 
+ # %mvn_build - build Maven project
+-- 
+1.9.3
+
diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index 806f260..37b677f 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -7,7 +7,7 @@
 
 Name:           javapackages-tools
 Version:        4.2.0
-Release:        7%{?dist}
+Release:        8%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
@@ -22,6 +22,7 @@ Patch4:         0003-Use-architecture-independent-location-of-abrt-java-c.patch
 Patch5:         0001-fix-rhbz#1155185.patch
 Patch6:         0004-Make-sure-_libdir-is-not-use.patch
 Patch7:         0005-Improve-patterns-for-matching-OSGi-manifests.patch
+Patch8:         0006-mvn_artifact-Add-namespace-support.patch
 
 BuildArch:      noarch
 
@@ -181,6 +182,7 @@ This package provides non-essential macros and scripts to support Java packaging
 %patch5 -p1
 %patch6 -p1
 %patch7 -p1
+%patch8 -p1
 
 %if 0%{?with_python3}
 find . -name '*.py' | xargs sed -i '1s|^#!.*python|#!%{__python3}|'
@@ -246,6 +248,9 @@ popd
 %doc LICENSE
 
 %changelog
+* Mon Nov 24 2014 Michal Srb <msrb at redhat.com> - 4.2.0-8
+- Add namespace support in %%mvn_artifact
+
 * Fri Nov 21 2014 Mikolaj Izdebski <mizdebsk at redhat.com> - 4.2.0-7
 - Fix OSGi provides/requires generation in Java libdir
 - Resolves: rhbz#1166156
-- 
cgit v0.10.2


>From 297b18e50c464b59790cfd35d27a9fbb7960b960 Mon Sep 17 00:00:00 2001
From: Mikolaj Izdebski <mizdebsk at redhat.com>
Date: Wed, 26 Nov 2014 13:12:14 +0100
Subject: Revert "Add namespace support in %mvn_artifact"

This reverts commit 8260ebcd74bc3ffb44a2c177b39c1550038d7984.

The commit which was used as a base for patch was reverted upstream.

diff --git a/0006-mvn_artifact-Add-namespace-support.patch b/0006-mvn_artifact-Add-namespace-support.patch
deleted file mode 100644
index d03f899..0000000
--- a/0006-mvn_artifact-Add-namespace-support.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-From 3f1b4b9e3427c0c633039c346475b9f47aa0f35e Mon Sep 17 00:00:00 2001
-From: Michal Srb <msrb at redhat.com>
-Date: Mon, 24 Nov 2014 10:28:42 +0100
-Subject: [PATCH] [mvn_artifact] Add namespace support
-
----
- java-utils/mvn_artifact.py | 10 ++++++++--
- macros.d/macros.xmvn       |  2 +-
- 2 files changed, 9 insertions(+), 3 deletions(-)
-
-diff --git a/java-utils/mvn_artifact.py b/java-utils/mvn_artifact.py
-index 78074f0..185eb9d 100644
---- a/java-utils/mvn_artifact.py
-+++ b/java-utils/mvn_artifact.py
-@@ -118,7 +118,7 @@ def is_it_ivy_file(fpath):
-     return doc.tag == "ivy-module"
- 
- 
--def add_artifact_elements(root, art, ppath=None, jpath=None):
-+def add_artifact_elements(root, art, namespace="", ppath=None, jpath=None):
-     artifacts = []
-     ext_backup = art.extension
-     for path in [ppath, jpath]:
-@@ -133,6 +133,10 @@ def add_artifact_elements(root, art, ppath=None, jpath=None):
-                 art.extension = ext_backup
- 
-             art.path = os.path.abspath(path)
-+
-+            if namespace:
-+                art.namespace = namespace
-+
-             a = art.to_metadata()
-             artifacts.append(a)
- 
-@@ -246,6 +250,8 @@ if __name__ == "__main__":
-                       help="skip dependencies section in resulting metadata")
-     parser.add_option("-D", action="append", type="str",
-                       help="add artifact property", metavar="property=value")
-+    parser.add_option("-n", "--namespace", type="str",
-+                      help="Namespace for generated artifacts", default="")
- 
-     sys.argv = args_to_unicode(sys.argv)
- 
-@@ -311,7 +317,7 @@ if __name__ == "__main__":
-             key, value = d_opt.split('=')
-             art.properties[key] = value
- 
--    add_artifact_elements(metadata, art, pom_path, jar_path)
-+    add_artifact_elements(metadata, art, options.namespace, pom_path, jar_path)
- 
-     with open(config, 'w') as f:
-         dom = metadata.toDOM(None)
-diff --git a/macros.d/macros.xmvn b/macros.d/macros.xmvn
-index e7a6dda..fc2e724 100644
---- a/macros.d/macros.xmvn
-+++ b/macros.d/macros.xmvn
-@@ -118,7 +118,7 @@
- #
- # Usage: %mvn_artifact <pom> [<artifact-file>]
- #
--%mvn_artifact %{pyinterpreter} %{javadir}-utils/mvn_artifact.py
-+%mvn_artifact %{pyinterpreter} %{javadir}-utils/mvn_artifact.py -n "%{?scl}"
- 
- 
- # %mvn_build - build Maven project
--- 
-1.9.3
-
diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index 37b677f..9be4b34 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -7,7 +7,7 @@
 
 Name:           javapackages-tools
 Version:        4.2.0
-Release:        8%{?dist}
+Release:        9%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
@@ -22,7 +22,6 @@ Patch4:         0003-Use-architecture-independent-location-of-abrt-java-c.patch
 Patch5:         0001-fix-rhbz#1155185.patch
 Patch6:         0004-Make-sure-_libdir-is-not-use.patch
 Patch7:         0005-Improve-patterns-for-matching-OSGi-manifests.patch
-Patch8:         0006-mvn_artifact-Add-namespace-support.patch
 
 BuildArch:      noarch
 
@@ -182,7 +181,6 @@ This package provides non-essential macros and scripts to support Java packaging
 %patch5 -p1
 %patch6 -p1
 %patch7 -p1
-%patch8 -p1
 
 %if 0%{?with_python3}
 find . -name '*.py' | xargs sed -i '1s|^#!.*python|#!%{__python3}|'
@@ -248,6 +246,9 @@ popd
 %doc LICENSE
 
 %changelog
+* Wed Nov 26 2014 Mikolaj Izdebski <mizdebsk at redhat.com> - 4.2.0-9
+- Revert adding namespace support in %%mvn_artifact
+
 * Mon Nov 24 2014 Michal Srb <msrb at redhat.com> - 4.2.0-8
 - Add namespace support in %%mvn_artifact
 
-- 
cgit v0.10.2


>From 22c439ba3605bdef6f757cff1673b8c8a33f469a Mon Sep 17 00:00:00 2001
From: Mikolaj Izdebski <mizdebsk at redhat.com>
Date: Fri, 28 Nov 2014 12:27:47 +0100
Subject: Scan lib64/ in OSGi dep generators

- Related: rhbz#1166156

diff --git a/0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch b/0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch
index 67f6cb4..984803d 100644
--- a/0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch
+++ b/0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch
@@ -1,7 +1,7 @@
 From eafaa146aace0885d17ff472db0a63aef75f2ce5 Mon Sep 17 00:00:00 2001
 From: Michal Srb <msrb at redhat.com>
 Date: Thu, 18 Sep 2014 10:48:07 +0200
-Subject: [PATCH 1/5] [mvn_artifact] Append dependencies to metadata, if we
+Subject: [PATCH 1/6] [mvn_artifact] Append dependencies to metadata, if we
  have them
 
 ---
diff --git a/0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch b/0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch
index fe61427..ff354db 100644
--- a/0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch
+++ b/0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch
@@ -1,7 +1,7 @@
 From dee96bf521cdbae4c80ee328968e1ff5200f2aab Mon Sep 17 00:00:00 2001
 From: Mikolaj Izdebski <mizdebsk at redhat.com>
 Date: Thu, 30 Oct 2014 15:20:20 +0100
-Subject: [PATCH 2/5] Use wrapper script to inject extra JVM arguments
+Subject: [PATCH 2/6] Use wrapper script to inject extra JVM arguments
 
 ---
  install                   |  1 +
diff --git a/0003-Use-architecture-independent-location-of-abrt-java-c.patch b/0003-Use-architecture-independent-location-of-abrt-java-c.patch
index 73a355e..ea40fd5 100644
--- a/0003-Use-architecture-independent-location-of-abrt-java-c.patch
+++ b/0003-Use-architecture-independent-location-of-abrt-java-c.patch
@@ -1,7 +1,7 @@
 From 97ee162d443fd954208c277c43f7195339b01e8d Mon Sep 17 00:00:00 2001
 From: Jakub Filak <jfilak at redhat.com>
 Date: Thu, 30 Oct 2014 08:36:56 +0100
-Subject: [PATCH 3/5] Use architecture-independent location of
+Subject: [PATCH 3/6] Use architecture-independent location of
  abrt-java-connector
 
 The connector's library has been moved to architecture-independent
diff --git a/0004-Make-sure-_libdir-is-not-use.patch b/0004-Make-sure-_libdir-is-not-use.patch
index 867d991..27944f7 100644
--- a/0004-Make-sure-_libdir-is-not-use.patch
+++ b/0004-Make-sure-_libdir-is-not-use.patch
@@ -1,7 +1,7 @@
 From bd3bfd39508792f91621cba0b6279eeeef4aa866 Mon Sep 17 00:00:00 2001
 From: Mikolaj Izdebski <mizdebsk at redhat.com>
 Date: Thu, 30 Oct 2014 09:18:08 +0100
-Subject: [PATCH 4/5] Make sure %{_libdir} is not use
+Subject: [PATCH 4/6] Make sure %{_libdir} is not use
 
 Javapackages as noarch package cannot safely reference libdir.
 ---
diff --git a/0005-Improve-patterns-for-matching-OSGi-manifests.patch b/0005-Improve-patterns-for-matching-OSGi-manifests.patch
index 0d0be97..0a8f8c2 100644
--- a/0005-Improve-patterns-for-matching-OSGi-manifests.patch
+++ b/0005-Improve-patterns-for-matching-OSGi-manifests.patch
@@ -1,7 +1,7 @@
 From f0a2e4226028c4a68d956ef9ac1d4d43fdbe961e Mon Sep 17 00:00:00 2001
 From: Mikolaj Izdebski <mizdebsk at redhat.com>
 Date: Thu, 20 Nov 2014 16:22:52 +0100
-Subject: [PATCH 5/5] Improve patterns for matching OSGi manifests
+Subject: [PATCH 5/6] Improve patterns for matching OSGi manifests
 
 ---
  depgenerators/fileattrs/osgi.attr  | 2 +-
diff --git a/0006-Scan-lib64-in-OSGi-dep-generators.patch b/0006-Scan-lib64-in-OSGi-dep-generators.patch
new file mode 100644
index 0000000..66e844d
--- /dev/null
+++ b/0006-Scan-lib64-in-OSGi-dep-generators.patch
@@ -0,0 +1,26 @@
+From 135a8ac0b704a39c4b5fb74025bf6440a16531af Mon Sep 17 00:00:00 2001
+From: Mikolaj Izdebski <mizdebsk at redhat.com>
+Date: Fri, 28 Nov 2014 08:37:09 +0100
+Subject: [PATCH 6/6] Scan lib64/ in OSGi dep generators
+
+Java is exempt from multilib and that's why most of Java packages
+install their arch-dependant stuff in /usr/lib/, not %{_libdir}.
+Eclipse is an exception here - on some architectures it installs its
+bundles in /usr/lib64/.
+---
+ depgenerators/fileattrs/osgi.attr | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/depgenerators/fileattrs/osgi.attr b/depgenerators/fileattrs/osgi.attr
+index edacd4d..6d8860a 100644
+--- a/depgenerators/fileattrs/osgi.attr
++++ b/depgenerators/fileattrs/osgi.attr
+@@ -2,4 +2,4 @@
+ %__osgi_provides_opts	%{_builddir}/%{?buildsubdir}
+ %__osgi_requires	%{_rpmconfigdir}/osgi.req
+ %__osgi_requires_opts	%{_builddir}/%{?buildsubdir}
+-%__osgi_path	^(.*\\.jar|((%{_prefix}/lib|%{_datadir})/.*/META-INF/MANIFEST.MF))$
++%__osgi_path	^(.*\\.jar|((%{_prefix}/lib(64)?|%{_datadir})/.*/META-INF/MANIFEST.MF))$
+-- 
+1.9.3
+
diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index 9be4b34..c0adcca 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -7,7 +7,7 @@
 
 Name:           javapackages-tools
 Version:        4.2.0
-Release:        9%{?dist}
+Release:        10%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
@@ -22,6 +22,7 @@ Patch4:         0003-Use-architecture-independent-location-of-abrt-java-c.patch
 Patch5:         0001-fix-rhbz#1155185.patch
 Patch6:         0004-Make-sure-_libdir-is-not-use.patch
 Patch7:         0005-Improve-patterns-for-matching-OSGi-manifests.patch
+Patch8:         0006-Scan-lib64-in-OSGi-dep-generators.patch
 
 BuildArch:      noarch
 
@@ -181,6 +182,7 @@ This package provides non-essential macros and scripts to support Java packaging
 %patch5 -p1
 %patch6 -p1
 %patch7 -p1
+%patch8 -p1
 
 %if 0%{?with_python3}
 find . -name '*.py' | xargs sed -i '1s|^#!.*python|#!%{__python3}|'
@@ -246,6 +248,10 @@ popd
 %doc LICENSE
 
 %changelog
+* Fri Nov 28 2014 Mikolaj Izdebski <mizdebsk at redhat.com> - 4.2.0-10
+- Scan lib64/ in OSGi dep generators
+- Related: rhbz#1166156
+
 * Wed Nov 26 2014 Mikolaj Izdebski <mizdebsk at redhat.com> - 4.2.0-9
 - Revert adding namespace support in %%mvn_artifact
 
-- 
cgit v0.10.2


>From aec2dc49573b0cfaedfe18ab265e7410f402cecf Mon Sep 17 00:00:00 2001
From: Mikolaj Izdebski <mizdebsk at redhat.com>
Date: Fri, 28 Nov 2014 12:52:00 +0100
Subject: Remove dependency on libxslt


diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index c0adcca..76e30e5 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -7,7 +7,7 @@
 
 Name:           javapackages-tools
 Version:        4.2.0
-Release:        10%{?dist}
+Release:        11%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
@@ -49,7 +49,6 @@ BuildRequires:  javapackages-tools >= 4.0.0
 BuildRequires:  xmvn-resolve >= 2
 
 Requires:       coreutils
-Requires:       libxslt
 Requires:       lua
 %if 0%{?with_python3}
 Requires:       python3-javapackages = %{version}-%{release}
@@ -248,6 +247,9 @@ popd
 %doc LICENSE
 
 %changelog
+* Fri Nov 28 2014 Mikolaj Izdebski <mizdebsk at redhat.com> - 4.2.0-11
+- Remove dependency on libxslt
+
 * Fri Nov 28 2014 Mikolaj Izdebski <mizdebsk at redhat.com> - 4.2.0-10
 - Scan lib64/ in OSGi dep generators
 - Related: rhbz#1166156
-- 
cgit v0.10.2


>From 32eaff6e10613b564c39e700cee56bdb3993fa19 Mon Sep 17 00:00:00 2001
From: Mikolaj Izdebski <mizdebsk at redhat.com>
Date: Sun, 14 Dec 2014 21:33:16 +0100
Subject: Update to upstream version 4.3.0


diff --git a/.gitignore b/.gitignore
index 80132d2..19ebafa 100644
--- a/.gitignore
+++ b/.gitignore
@@ -62,3 +62,4 @@
 /javapackages-4.0.0.tar.xz
 /javapackages-4.1.0.tar.xz
 /javapackages-4.2.0.tar.xz
+/javapackages-4.3.0.tar.xz
diff --git a/0001-fix-rhbz#1155185.patch b/0001-fix-rhbz#1155185.patch
deleted file mode 100644
index 2693d3a..0000000
--- a/0001-fix-rhbz#1155185.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-diff --git a/python/javapackages/common/util.py b/python/javapackages/common/util.py
-index 071805f..325650a 100644
---- a/python/javapackages/common/util.py
-+++ b/python/javapackages/common/util.py
-@@ -44,7 +44,7 @@ def kill_parent_process():
- def get_cachedir(path, create_if_not_exists=True):
-     cachedir_path = os.path.join(path, ".javapackages_cache")
-     if not os.path.exists(cachedir_path) and create_if_not_exists:
--        os.mkdir(cachedir_path)
-+        os.makedirs(cachedir_path)
-     return cachedir_path
- 
- 
-diff --git a/python/javapackages/metadata/metadata.py b/python/javapackages/metadata/metadata.py
-index 5b507e3..a0485d1 100644
---- a/python/javapackages/metadata/metadata.py
-+++ b/python/javapackages/metadata/metadata.py
-@@ -250,7 +250,8 @@ class Metadata(object):
-     def _write_cache_file(self, cachefile, content):
-         try:
-             cachefile = open(cachefile, 'wb')
--            pickle.dump(content, cachefile)
-+            cache = (os.getppid(), content)
-+            pickle.dump(cache, cachefile)
-             cachefile.close()
-         except IOError:
-             return None
-@@ -260,8 +261,12 @@ class Metadata(object):
-     def _read_cache_file(cachefile):
-         try:
-             cachefile = open(cachefile, 'rb')
--            content = pickle.load(cachefile)
-+            cache = pickle.load(cachefile)
-             cachefile.close()
-+            # check if the cache was most likely created during current build
-+            if cache[0] != os.getppid():
-+                logging.warning("Cache is outdated, skipping")
-+                return None
-         except IOError:
-             return None
--        return content
-+        return cache[1]
diff --git a/0001-metadata-Read-OSGi-Requires-from-manifest-only-if-os.patch b/0001-metadata-Read-OSGi-Requires-from-manifest-only-if-os.patch
deleted file mode 100644
index b71d077..0000000
--- a/0001-metadata-Read-OSGi-Requires-from-manifest-only-if-os.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 4272dc4bfd1c2945e00c82c27760a3ae6eed28dc Mon Sep 17 00:00:00 2001
-From: Michal Srb <msrb at redhat.com>
-Date: Wed, 24 Sep 2014 16:48:57 +0200
-Subject: [PATCH] [metadata] Read OSGi Requires from manifest only if osgi.id
- property is missing in metadata
-
-Missing osgi.requires key in properties doesn't mean that we should
-always try to read Requires from manifest manually. XMvn skips this
-property, if there are no interesting Requires.
----
- python/javapackages/metadata/metadata.py | 8 +++++++-
- 1 file changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/python/javapackages/metadata/metadata.py b/python/javapackages/metadata/metadata.py
-index b7c4c9f..5b507e3 100644
---- a/python/javapackages/metadata/metadata.py
-+++ b/python/javapackages/metadata/metadata.py
-@@ -200,7 +200,13 @@ class Metadata(object):
-                             reqs |= set(content.split(','))
-                             continue
-                         except KeyError:
--                            pass
-+                            try:
-+                                osgi_id = artifact.properties["osgi.id"]
-+                                # this file was already processed by XMvn and
-+                                # there are no interesting OSGi requires, move on
-+                                continue
-+                            except KeyError:
-+                                pass
-                     if artifact.path:
-                         import javapackages.common.osgi as osgi
-                         r = osgi.get_requires(artifact.get_buildroot_path())
--- 
-1.9.3
-
diff --git a/0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch b/0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch
deleted file mode 100644
index 984803d..0000000
--- a/0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From eafaa146aace0885d17ff472db0a63aef75f2ce5 Mon Sep 17 00:00:00 2001
-From: Michal Srb <msrb at redhat.com>
-Date: Thu, 18 Sep 2014 10:48:07 +0200
-Subject: [PATCH 1/6] [mvn_artifact] Append dependencies to metadata, if we
- have them
-
----
- java-utils/mvn_artifact.py | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/java-utils/mvn_artifact.py b/java-utils/mvn_artifact.py
-index ae17f9f..78074f0 100644
---- a/java-utils/mvn_artifact.py
-+++ b/java-utils/mvn_artifact.py
-@@ -301,6 +301,8 @@ if __name__ == "__main__":
-         mvn_deps = gather_dependencies(pom_path)
-         for d in mvn_deps:
-             deps.append(MetadataDependency.from_mvn_dependency(d))
-+        if deps:
-+            art.dependencies = set(deps)
-     else:
-         art.properties['xmvn.resolver.disableEffectivePom'] = 'true'
- 
--- 
-1.9.3
-
diff --git a/0001-pom_editor-Fix-missing-space-between-xmlns-declarati.patch b/0001-pom_editor-Fix-missing-space-between-xmlns-declarati.patch
deleted file mode 100644
index dd409c6..0000000
--- a/0001-pom_editor-Fix-missing-space-between-xmlns-declarati.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From d35af95c5cba1b898a9b183076d1a88c534415b9 Mon Sep 17 00:00:00 2001
-From: Michael Simacek <msimacek at redhat.com>
-Date: Tue, 21 Oct 2014 10:23:08 +0200
-Subject: [PATCH] [pom_editor] Fix missing space between xmlns declarations
-
----
- java-utils/pom_editor.py | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/java-utils/pom_editor.py b/java-utils/pom_editor.py
-index ca8fe45..ce487e0 100644
---- a/java-utils/pom_editor.py
-+++ b/java-utils/pom_editor.py
-@@ -350,8 +350,8 @@ class Pom(XmlFile):
-     NSMAP = {'pom': 'http://maven.apache.org/POM/4.0.0',
-               'xsi': 'http://www.w3.org/2001/XMLSchema-instance'}
-     NS = '{' + NSMAP['pom'] + '}'
--    XMLNS = ('xmlns="http://maven.apache.org/POM/4.0.0"'
--    'xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"'
-+    XMLNS = ('xmlns="http://maven.apache.org/POM/4.0.0" '
-+    'xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" '
-     'xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 '
-     'http://maven.apache.org/xsd/maven-4.0.0.xsd"')
-     DEPENDENCY_NODE = 'pom:dependency'
--- 
-1.9.3
-
diff --git a/0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch b/0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch
deleted file mode 100644
index ff354db..0000000
--- a/0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch
+++ /dev/null
@@ -1,73 +0,0 @@
-From dee96bf521cdbae4c80ee328968e1ff5200f2aab Mon Sep 17 00:00:00 2001
-From: Mikolaj Izdebski <mizdebsk at redhat.com>
-Date: Thu, 30 Oct 2014 15:20:20 +0100
-Subject: [PATCH 2/6] Use wrapper script to inject extra JVM arguments
-
----
- install                   |  1 +
- java-utils/java-functions | 14 ++++++++++++--
- java-utils/java-wrapper   |  8 ++++++++
- 3 files changed, 21 insertions(+), 2 deletions(-)
- create mode 100644 java-utils/java-wrapper
-
-diff --git a/install b/install
-index a672a0c..97019ca 100755
---- a/install
-+++ b/install
-@@ -122,6 +122,7 @@ inst_config etc/font.properties "${javaconfdir}"
- inst_config target/java.conf "${javaconfdir}"
- 
- inst_data target/java-functions "${javadir}-utils"
-+inst_exec java-utils/java-wrapper "${javadir}-utils"
- inst_data java-utils/maven_depmap.py "${javadir}-utils"
- inst_data java-utils/pom_editor.py "${javadir}-utils"
- 
-diff --git a/java-utils/java-functions b/java-utils/java-functions
-index fcadb1c..c57640f 100644
---- a/java-utils/java-functions
-+++ b/java-utils/java-functions
-@@ -228,7 +228,12 @@ set_javacmd()
- 	JAVACMD="${JAVA_HOME}/${cmd}"
- 	if [ -x "${JAVACMD}" ]; then
- 	    _log "Using configured JAVACMD: $JAVACMD"
--	    JAVACMD="${JAVACMD}${JAVACMD_OPTS:+ }${JAVACMD_OPTS}"
-+	    if [ -n "${JAVACMD_OPTS}" ]; then
-+		_log "Using java-wrapper with extra options: ${JAVACMD_OPTS}"
-+		export _JP_JAVACMD="${JAVACMD}"
-+		export _JP_JAVACMD_OPTS="${JAVACMD_OPTS}"
-+		JAVACMD="%{javadir}-utils/java-wrapper"
-+	    fi
- 	    return 0
- 	fi
-     done
-@@ -236,7 +241,12 @@ set_javacmd()
-     JAVACMD=$(which java 2>/dev/null || :)
-     if [ -x "${JAVACMD}" ]; then
- 	_log "Using JAVACMD from PATH: $JAVACMD"
--	JAVACMD="${JAVACMD}${JAVACMD_OPTS:+ }${JAVACMD_OPTS}"
-+	if [ -n "${JAVACMD_OPTS}" ]; then
-+	    _log "Using java-wrapper with extra options: ${JAVACMD_OPTS}"
-+	    export _JP_JAVACMD="${JAVACMD}"
-+	    export _JP_JAVACMD_OPTS="${JAVACMD_OPTS}"
-+	    JAVACMD="%{javadir}-utils/java-wrapper"
-+	fi
- 	return 0
-     fi
- 
-diff --git a/java-utils/java-wrapper b/java-utils/java-wrapper
-new file mode 100644
-index 0000000..29b3143
---- /dev/null
-+++ b/java-utils/java-wrapper
-@@ -0,0 +1,8 @@
-+#!/bin/sh
-+
-+JAVACMD="${_JP_JAVACMD}"
-+JAVACMD_OPTS="${_JP_JAVACMD_OPTS}"
-+unset _JP_JAVACMD
-+unset _JP_JAVACMD_OPTS
-+
-+exec "${JAVACMD}" ${JAVACMD_OPTS} "${@}"
--- 
-1.9.3
-
diff --git a/0003-Use-architecture-independent-location-of-abrt-java-c.patch b/0003-Use-architecture-independent-location-of-abrt-java-c.patch
deleted file mode 100644
index ea40fd5..0000000
--- a/0003-Use-architecture-independent-location-of-abrt-java-c.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-From 97ee162d443fd954208c277c43f7195339b01e8d Mon Sep 17 00:00:00 2001
-From: Jakub Filak <jfilak at redhat.com>
-Date: Thu, 30 Oct 2014 08:36:56 +0100
-Subject: [PATCH 3/6] Use architecture-independent location of
- abrt-java-connector
-
-The connector's library has been moved to architecture-independent
-directory /usr/lib/abrt-java-connector/, because Java does not
-officially support multilib and having the connector installed the arch
-specific directory was causing us problems if Java package doesn't match
-host architecture (e.g. Java i386 on host x86_64).
-
-Signed-off-by: Jakub Filak <jfilak at redhat.com>
----
- build                     | 1 +
- configure                 | 2 ++
- java-utils/java-functions | 4 ++--
- 3 files changed, 5 insertions(+), 2 deletions(-)
-
-diff --git a/build b/build
-index 3f5631a..336ac2a 100755
---- a/build
-+++ b/build
-@@ -65,6 +65,7 @@ expand()
-         -e "s|%{rundir}|${rundir}|" \
-         -e "s|%{sysconfdir}|${sysconfdir}|" \
-         -e "s|%{pyinterpreter}|${pyinterpreter}|" \
-+        -e "s|%{abrtlibdir}|${abrtlibdir}|" \
-         "${1}" >"${target}"
- }
- 
-diff --git a/configure b/configure
-index cc8b0a1..ab9388d 100755
---- a/configure
-+++ b/configure
-@@ -69,6 +69,7 @@ jvmprivdir
- jvmsysconfdir
- mavenpomdir
- pyinterpreter
-+abrtlibdir
- "
- 
- vars="$vars mavendepmapdir mavendepmapfragdir" # @Deprecated
-@@ -90,6 +91,7 @@ test -z "${rpmconfigdir}" && rpmconfigdir="${prefix}/lib/rpm"
- 
- test -z "${m2home}" && m2home="${datadir}/xmvn"
- test -z "${pyinterpreter}" && set_pyinterpreter
-+test -z "${abrtlibdir}" && abrtlibdir="${prefix}/lib/abrt-java-connector"
- 
- eval $(sed -n 's/^%_\('"$vars_re"'\)\ *\(.*\)$/\1="\2"/;T;s/%{_\(.*}\)/${\1/;p' macros.d/macros.jpackage)
- 
-diff --git a/java-utils/java-functions b/java-utils/java-functions
-index c57640f..8397d2c 100644
---- a/java-utils/java-functions
-+++ b/java-utils/java-functions
-@@ -110,8 +110,8 @@ _load_java_conf()
- 	JAVACMD_OPTS="${java_opts_save}"
-     fi
- 
--    if [ "_${JAVA_ABRT}" != "_off" ] && [ -f %{libdir}/libabrt-java-connector.so ] && [ -f %{rundir}/abrt/abrtd.pid ]; then
--	JAVACMD_OPTS="${JAVACMD_OPTS} -agentpath:%{libdir}/libabrt-java-connector.so=abrt=on"
-+    if [ "_${JAVA_ABRT}" != "_off" ] && [ -f %{abrtlibdir}/libabrt-java-connector.so ] && [ -f %{rundir}/abrt/abrtd.pid ]; then
-+	JAVACMD_OPTS="${JAVACMD_OPTS} -agentpath:%{abrtlibdir}/libabrt-java-connector.so=abrt=on"
-     fi
- }
- 
--- 
-1.9.3
-
diff --git a/0004-Make-sure-_libdir-is-not-use.patch b/0004-Make-sure-_libdir-is-not-use.patch
deleted file mode 100644
index 27944f7..0000000
--- a/0004-Make-sure-_libdir-is-not-use.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-From bd3bfd39508792f91621cba0b6279eeeef4aa866 Mon Sep 17 00:00:00 2001
-From: Mikolaj Izdebski <mizdebsk at redhat.com>
-Date: Thu, 30 Oct 2014 09:18:08 +0100
-Subject: [PATCH 4/6] Make sure %{_libdir} is not use
-
-Javapackages as noarch package cannot safely reference libdir.
----
- build                              | 1 -
- configure                          | 2 --
- depgenerators/fileattrs/osgi.attr  | 2 +-
- python/javapackages/common/osgi.py | 2 +-
- 4 files changed, 2 insertions(+), 5 deletions(-)
-
-diff --git a/build b/build
-index 336ac2a..67da1b3 100755
---- a/build
-+++ b/build
-@@ -54,7 +54,6 @@ expand()
- 
-     sed \
-         -e "s|%{bindir}|${bindir}|" \
--        -e "s|%{libdir}|${libdir}|" \
-         -e "s|%{datadir}|${datadir}|" \
-         -e "s|%{javaconfdir}|${javaconfdir}|" \
-         -e "s|%{javadir}|${javadir}|" \
-diff --git a/configure b/configure
-index ab9388d..da9c9a1 100755
---- a/configure
-+++ b/configure
-@@ -44,7 +44,6 @@ function set_pyinterpreter() {
- vars="
- bindir
- datadir
--libdir
- localstatedir
- mandir
- prefix
-@@ -82,7 +81,6 @@ eval $(for _; do echo "$_"; done |
- test -z "${prefix}" && prefix="/usr/local"
- test -z "${bindir}" && bindir="${prefix}/bin"
- test -z "${datadir}" && datadir="${prefix}/share"
--test -z "${libdir}" && libdir="${prefix}/lib"
- test -z "${localstatedir}" && localstatedir="${prefix}/var"
- test -z "${mandir}" && mandir="${datadir}/man"
- test -z "${rundir}" && rundir="${localstatedir}/run"
-diff --git a/depgenerators/fileattrs/osgi.attr b/depgenerators/fileattrs/osgi.attr
-index 58bba2d..f65cb0a 100644
---- a/depgenerators/fileattrs/osgi.attr
-+++ b/depgenerators/fileattrs/osgi.attr
-@@ -2,4 +2,4 @@
- %__osgi_provides_opts	%{_builddir}/%{?buildsubdir}
- %__osgi_requires	%{_rpmconfigdir}/osgi.req
- %__osgi_requires_opts	%{_builddir}/%{?buildsubdir}
--%__osgi_path	^(.*\\.jar$|((%{_libdir}|%{_datadir}).*/MANIFEST.MF))
-+%__osgi_path	^(.*\\.jar$|((%{_prefix}/lib|%{_datadir})/.*/MANIFEST.MF))
-diff --git a/python/javapackages/common/osgi.py b/python/javapackages/common/osgi.py
-index fdfdc3b..a1d72fc 100644
---- a/python/javapackages/common/osgi.py
-+++ b/python/javapackages/common/osgi.py
-@@ -177,7 +177,7 @@ def _check_path(path):
-         # who knows where the manifest can be in buildroot
-         # TODO: improve this check somehow(?)
-         # this is an attempt to identify only MANIFEST.MF files
--        # which are in %{_datadir} or %{_libdir}
-+        # which are in %{_datadir} or %{_prefix}/lib
-         if "/usr/share/" in path or "/usr/lib" in path:
-             return True
-     return False
--- 
-1.9.3
-
diff --git a/0005-Improve-patterns-for-matching-OSGi-manifests.patch b/0005-Improve-patterns-for-matching-OSGi-manifests.patch
deleted file mode 100644
index 0a8f8c2..0000000
--- a/0005-Improve-patterns-for-matching-OSGi-manifests.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From f0a2e4226028c4a68d956ef9ac1d4d43fdbe961e Mon Sep 17 00:00:00 2001
-From: Mikolaj Izdebski <mizdebsk at redhat.com>
-Date: Thu, 20 Nov 2014 16:22:52 +0100
-Subject: [PATCH 5/6] Improve patterns for matching OSGi manifests
-
----
- depgenerators/fileattrs/osgi.attr  | 2 +-
- python/javapackages/common/osgi.py | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/depgenerators/fileattrs/osgi.attr b/depgenerators/fileattrs/osgi.attr
-index f65cb0a..edacd4d 100644
---- a/depgenerators/fileattrs/osgi.attr
-+++ b/depgenerators/fileattrs/osgi.attr
-@@ -2,4 +2,4 @@
- %__osgi_provides_opts	%{_builddir}/%{?buildsubdir}
- %__osgi_requires	%{_rpmconfigdir}/osgi.req
- %__osgi_requires_opts	%{_builddir}/%{?buildsubdir}
--%__osgi_path	^(.*\\.jar$|((%{_prefix}/lib|%{_datadir})/.*/MANIFEST.MF))
-+%__osgi_path	^(.*\\.jar|((%{_prefix}/lib|%{_datadir})/.*/META-INF/MANIFEST.MF))$
-diff --git a/python/javapackages/common/osgi.py b/python/javapackages/common/osgi.py
-index a1d72fc..66610c2 100644
---- a/python/javapackages/common/osgi.py
-+++ b/python/javapackages/common/osgi.py
-@@ -93,7 +93,7 @@ def split_bundle_name(bundles):
- 
- def open_manifest(path):
-     mf = None
--    if path.endswith("META-INF/MANIFEST.MF"):
-+    if path.endswith("/META-INF/MANIFEST.MF"):
-         mf = open(path, "rb")
-     if zipfile.is_zipfile(path):
-         # looks like "zipfile.is_zipfile()" is not reliable
--- 
-1.9.3
-
diff --git a/0006-Scan-lib64-in-OSGi-dep-generators.patch b/0006-Scan-lib64-in-OSGi-dep-generators.patch
deleted file mode 100644
index 66e844d..0000000
--- a/0006-Scan-lib64-in-OSGi-dep-generators.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 135a8ac0b704a39c4b5fb74025bf6440a16531af Mon Sep 17 00:00:00 2001
-From: Mikolaj Izdebski <mizdebsk at redhat.com>
-Date: Fri, 28 Nov 2014 08:37:09 +0100
-Subject: [PATCH 6/6] Scan lib64/ in OSGi dep generators
-
-Java is exempt from multilib and that's why most of Java packages
-install their arch-dependant stuff in /usr/lib/, not %{_libdir}.
-Eclipse is an exception here - on some architectures it installs its
-bundles in /usr/lib64/.
----
- depgenerators/fileattrs/osgi.attr | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/depgenerators/fileattrs/osgi.attr b/depgenerators/fileattrs/osgi.attr
-index edacd4d..6d8860a 100644
---- a/depgenerators/fileattrs/osgi.attr
-+++ b/depgenerators/fileattrs/osgi.attr
-@@ -2,4 +2,4 @@
- %__osgi_provides_opts	%{_builddir}/%{?buildsubdir}
- %__osgi_requires	%{_rpmconfigdir}/osgi.req
- %__osgi_requires_opts	%{_builddir}/%{?buildsubdir}
--%__osgi_path	^(.*\\.jar|((%{_prefix}/lib|%{_datadir})/.*/META-INF/MANIFEST.MF))$
-+%__osgi_path	^(.*\\.jar|((%{_prefix}/lib(64)?|%{_datadir})/.*/META-INF/MANIFEST.MF))$
--- 
-1.9.3
-
diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index 76e30e5..4cd53ee 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -6,23 +6,14 @@
 %endif
 
 Name:           javapackages-tools
-Version:        4.2.0
-Release:        11%{?dist}
+Version:        4.3.0
+Release:        1%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
 
 License:        BSD
 URL:            https://git.fedorahosted.org/git/javapackages.git
 Source0:        https://fedorahosted.org/released/javapackages/javapackages-%{version}.tar.xz
-Patch0:         0001-mvn_artifact-Append-dependencies-to-metadata-if-we-h.patch
-Patch1:         0001-metadata-Read-OSGi-Requires-from-manifest-only-if-os.patch
-Patch2:         0001-pom_editor-Fix-missing-space-between-xmlns-declarati.patch
-Patch3:         0002-Use-wrapper-script-to-inject-extra-JVM-arguments.patch
-Patch4:         0003-Use-architecture-independent-location-of-abrt-java-c.patch
-Patch5:         0001-fix-rhbz#1155185.patch
-Patch6:         0004-Make-sure-_libdir-is-not-use.patch
-Patch7:         0005-Improve-patterns-for-matching-OSGi-manifests.patch
-Patch8:         0006-Scan-lib64-in-OSGi-dep-generators.patch
 
 BuildArch:      noarch
 
@@ -173,16 +164,6 @@ This package provides non-essential macros and scripts to support Java packaging
 %prep
 %setup -q -n javapackages-%{version}
 
-%patch0 -p1
-%patch1 -p1
-%patch2 -p1
-%patch3 -p1
-%patch4 -p1
-%patch5 -p1
-%patch6 -p1
-%patch7 -p1
-%patch8 -p1
-
 %if 0%{?with_python3}
 find . -name '*.py' | xargs sed -i '1s|^#!.*python|#!%{__python3}|'
 find ./depgenerators -name '*.req' | xargs sed -i '1s|^#!.*python|#!%{__python3}|'
@@ -247,6 +228,9 @@ popd
 %doc LICENSE
 
 %changelog
+* Sun Dec 14 2014 Mikolaj Izdebski <mizdebsk at redhat.com> - 4.3.0-1
+- Update to upstream version 4.3.0
+
 * Fri Nov 28 2014 Mikolaj Izdebski <mizdebsk at redhat.com> - 4.2.0-11
 - Remove dependency on libxslt
 
diff --git a/sources b/sources
index 174927a..0ceed9c 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-69b79deca82c70af3f7aa5356abc5866  javapackages-4.2.0.tar.xz
+e928cf74c80905529cb0ecfcb0ceef0a  javapackages-4.3.0.tar.xz
-- 
cgit v0.10.2


>From 4104d7f80a3b229f56a8eebdd1b8a65aa2cb5654 Mon Sep 17 00:00:00 2001
From: Mikolaj Izdebski <mizdebsk at redhat.com>
Date: Tue, 23 Dec 2014 18:16:26 +0100
Subject: Update to upstream version 4.3.1


diff --git a/.gitignore b/.gitignore
index 19ebafa..6fc18a6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -63,3 +63,4 @@
 /javapackages-4.1.0.tar.xz
 /javapackages-4.2.0.tar.xz
 /javapackages-4.3.0.tar.xz
+/javapackages-4.3.1.tar.xz
diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index 4cd53ee..90f8951 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -1,4 +1,4 @@
-%if 0%{?fedora} > 12
+%if 0%{?fedora} > 21
 %global with_python3 1
 %else
 %{!?__python2: %global __python2 /usr/bin/python2}
@@ -6,7 +6,7 @@
 %endif
 
 Name:           javapackages-tools
-Version:        4.3.0
+Version:        4.3.1
 Release:        1%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
@@ -22,14 +22,12 @@ BuildRequires:  python3-devel
 BuildRequires:  python3-lxml
 BuildRequires:  python3-setuptools
 BuildRequires:  python3-nose
-BuildRequires:  python3-six
 BuildRequires:  python3-PyXB = 1.2.4
 %else
 BuildRequires:  python2-devel
 BuildRequires:  python-lxml
 BuildRequires:  python-setuptools
 BuildRequires:  python-nose
-BuildRequires:  python-six
 BuildRequires:  PyXB = 1.2.4
 %endif
 BuildRequires:  asciidoc
@@ -116,7 +114,6 @@ artifact resolution using XMvn resolver.
 Summary:        Module for handling various files for Java packaging
 Requires:       python3-PyXB = 1.2.4
 Requires:       python3-lxml
-Requires:       python3-six
 Obsoletes:      python-javapackages < %{version}-%{release}
 
 %description -n python3-javapackages
@@ -128,7 +125,6 @@ packaging in Linux distributions
 Summary:        Module for handling various files for Java packaging
 Requires:       PyXB = 1.2.4
 Requires:       python-lxml
-Requires:       python-six
 Obsoletes:      python3-javapackages < %{version}-%{release}
 
 %description -n python-javapackages
@@ -164,24 +160,13 @@ This package provides non-essential macros and scripts to support Java packaging
 %prep
 %setup -q -n javapackages-%{version}
 
-%if 0%{?with_python3}
-find . -name '*.py' | xargs sed -i '1s|^#!.*python|#!%{__python3}|'
-find ./depgenerators -name '*.req' | xargs sed -i '1s|^#!.*python|#!%{__python3}|'
-find ./depgenerators -name '*.prov' | xargs sed -i '1s|^#!.*python|#!%{__python3}|'
-%endif # with_python3
-
-
 %build
-%configure
-./build
-
-pushd python
 %if 0%{?with_python3}
-  %{__python3} setup.py build
+%configure --pyinterpreter=%{__python3}
 %else
-%{__python2} setup.py build
+%configure --pyinterpreter=%{__python2}
 %endif
-popd
+./build
 
 %install
 ./install
@@ -196,11 +181,7 @@ pushd python
 popd
 
 %check
-%if 0%{?with_python3}
-./check 3
-%else
-./check 2
-%endif
+./check
 
 %files -f files-common
 %doc LICENSE
@@ -228,6 +209,9 @@ popd
 %doc LICENSE
 
 %changelog
+* Tue Dec 23 2014 Mikolaj Izdebski <mizdebsk at redhat.com> - 4.3.1-1
+- Update to upstream version 4.3.1
+
 * Sun Dec 14 2014 Mikolaj Izdebski <mizdebsk at redhat.com> - 4.3.0-1
 - Update to upstream version 4.3.0
 
diff --git a/sources b/sources
index 0ceed9c..f75dbf6 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-e928cf74c80905529cb0ecfcb0ceef0a  javapackages-4.3.0.tar.xz
+76aa1bc751e4667f3de6067d1df9c3e3  javapackages-4.3.1.tar.xz
-- 
cgit v0.10.2


>From d2960d49fa0da72d71531cfd16ee0a89d88778d5 Mon Sep 17 00:00:00 2001
From: Michal Srb <msrb at redhat.com>
Date: Mon, 5 Jan 2015 17:58:01 +0100
Subject: Update to upstream version 4.3.2


diff --git a/.gitignore b/.gitignore
index 6fc18a6..16cb761 100644
--- a/.gitignore
+++ b/.gitignore
@@ -64,3 +64,4 @@
 /javapackages-4.2.0.tar.xz
 /javapackages-4.3.0.tar.xz
 /javapackages-4.3.1.tar.xz
+/javapackages-4.3.2.tar.xz
diff --git a/javapackages-tools.spec b/javapackages-tools.spec
index 90f8951..52ec970 100644
--- a/javapackages-tools.spec
+++ b/javapackages-tools.spec
@@ -6,7 +6,7 @@
 %endif
 
 Name:           javapackages-tools
-Version:        4.3.1
+Version:        4.3.2
 Release:        1%{?dist}
 
 Summary:        Macros and scripts for Java packaging support
@@ -209,6 +209,9 @@ popd
 %doc LICENSE
 
 %changelog
+* Mon Jan 05 2015 Michal Srb <msrb at redhat.com> - 4.3.2-1
+- Update to upstream version 4.3.2
+
 * Tue Dec 23 2014 Mikolaj Izdebski <mizdebsk at redhat.com> - 4.3.1-1
 - Update to upstream version 4.3.1
 
diff --git a/sources b/sources
index f75dbf6..e22be2c 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-76aa1bc751e4667f3de6067d1df9c3e3  javapackages-4.3.1.tar.xz
+7d1ef162f04e546a0c58d745f2896d3c  javapackages-4.3.2.tar.xz
-- 
cgit v0.10.2


	http://pkgs.fedoraproject.org/cgit/javapackages-tools.git/commit/?h=master&id=7c41e351e9698dc76e42650d23f6a22347b3a99b


More information about the scm-commits mailing list