[objectweb-asm3] Separate artifacts for shaded asm
Michal Srb
msrb at fedoraproject.org
Fri Dec 6 12:28:51 UTC 2013
commit 80cd57434d2e572e859a6a6d9273e3d15bb79582
Author: Michal Srb <msrb at redhat.com>
Date: Fri Dec 6 13:05:27 2013 +0100
Separate artifacts for shaded asm
Due to inter-module dependencies classifiers don't work very well.
Shaded asm artifacts depend on non-shaded asm artifacts.
objectweb-asm3.spec | 41 +++++++++++++++++++++++++++++++++--------
1 files changed, 33 insertions(+), 8 deletions(-)
---
diff --git a/objectweb-asm3.spec b/objectweb-asm3.spec
index 31c4187..124191c 100644
--- a/objectweb-asm3.spec
+++ b/objectweb-asm3.spec
@@ -1,6 +1,6 @@
Name: objectweb-asm3
Version: 3.3.1
-Release: 6%{?dist}
+Release: 7%{?dist}
Summary: Java bytecode manipulation and analysis framework
License: BSD
URL: http://asm.ow2.org/
@@ -41,20 +41,42 @@ sed -i /Class-path/d archive/asm-xml.xml
# old BSN (org.objectweb.asm).
sed -i s/org.objectweb.asm.all/org.objectweb.asm/ archive/asm-all.xml
-%mvn_package :::distroshaded:
-
%build
%ant -Dobjectweb.ant.tasks.path= jar jdoc
+mv output/dist/lib/all/* output/dist/lib/
+
+# Fix artifactId in POMs for shaded artifacts
+for m in asm asm-analysis asm-commons asm-tree asm-util asm-xml asm-all; do
+ cp output/dist/lib/${m}-%{version}.pom output/dist/lib/${m}-distroshaded-%{version}.pom
+ %pom_xpath_set "pom:project/pom:artifactId" "${m}-distroshaded" \
+ output/dist/lib/${m}-distroshaded-%{version}.pom
+done
+
+# Fix inter-module dependecies in POMs for shaded artifacts
+pushd output/dist/lib
+for m in asm-analysis asm-commons asm-util; do
+ %pom_remove_dep :asm-tree ${m}-distroshaded-%{version}.pom
+ %pom_add_dep asm:asm-tree-distroshaded:3.3.1 ${m}-distroshaded-%{version}.pom
+done
+%pom_remove_dep :asm-util asm-xml-distroshaded-%{version}.pom
+%pom_add_dep asm:asm-util-distroshaded:3.3.1 asm-xml-distroshaded-%{version}.pom
+
+%pom_remove_dep :asm asm-tree-distroshaded-%{version}.pom
+%pom_add_dep asm:asm-distroshaded:3.3.1 asm-tree-distroshaded-%{version}.pom
+popd
+
+for m in asm asm-analysis asm-commons asm-tree asm-util asm-xml asm-all; do
+ shade-jar org.objectweb.asm org.objectweb.distroshaded.asm output/dist/lib/${m}-%{version}.jar \
+ output/dist/lib/${m}-distroshaded-%{version}.jar
+done
%install
%mvn_artifact output/dist/lib/asm-parent-%{version}.pom
-mv output/dist/lib/all/* output/dist/lib/
+
for m in asm asm-analysis asm-commons asm-tree asm-util asm-xml asm-all; do
- shade-jar org.objectweb.asm org.objectweb.distroshaded.asm output/dist/lib/${m}-%{version}.jar \
- output/dist/lib/${m}-%{version}-distroshaded.jar
- %mvn_artifact asm:${m}::distroshaded:%{version} \
- output/dist/lib/${m}-%{version}-distroshaded.jar
+ %mvn_artifact output/dist/lib/${m}-distroshaded-%{version}.pom \
+ output/dist/lib/${m}-distroshaded-%{version}.jar
%mvn_artifact output/dist/lib/${m}-%{version}.pom \
output/dist/lib/${m}-%{version}.jar
done
@@ -71,6 +93,9 @@ done
%doc LICENSE.txt
%changelog
+* Fri Dec 06 2013 Michal Srb <msrb at redhat.com> - 3.3.1-7
+- Separate artifacts for shaded asm
+
* Thu Dec 05 2013 Michal Srb <msrb at redhat.com> - 3.3.1-6
- Fix provides
More information about the scm-commits
mailing list