jarjar/jarjar.spec
2020-03-06 18:24:29 +08:00

83 lines
3.0 KiB
RPMSpec

Name: jarjar
Version: 1.4
Release: 23
Summary: A utility that makes it easy to repackage Java libraries and embed them into your own distribution
License: ASL 2.0
URL: https://code.google.com/archive/p/jarjar/
Source0: https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/jarjar/jarjar-src-1.4.zip
# Pom file for jarjar maven project
Source1: jarjar.pom
# Pom file for jarjar-util maven project
Source2: jarjar-util.pom
# Add JarJarMojo for fixed build error
Patch0000: fix-maven-plugin.patch
# Remove asm in jarjar
Patch0001: do-not-embed-asm.patch
# Update asm4 to asm6
Patch0002: port-to-asm6.patch
BuildRequires: ant ant-junit objectweb-asm javapackages-local maven
Requires: objectweb-asm javapackages-tools
BuildArch: noarch
%description
jarjar (Jar Jar Links) is a utility that makes it easy to repackage Java libraries and embed them
into your own distribution.
%package maven-plugin
Summary: Jarjar maven plugin
Requires: maven jarjar = %{version}-%{release}
%description maven-plugin
jarjar (Jar Jar Links) is a utility that makes it easy to repackage Java libraries and embed them
into your own distribution.
%package help
Summary: Documents for jarjar
Provides: jarjar-javadoc = %{version}-%{release}
Obsoletes: jarjar-javadoc < %{version}-%{release}
%description help
The jarjar package contains related documents.
%prep
%autosetup -n jarjar-%{version} -p1
rm -f lib/*.jar
%mvn_package :jarjar-plugin jarjar-maven-plugin
echo "jarjar/jarjar objectweb-asm/asm objectweb-asm/asm-commons" > jarjar.ant
%build
cd lib
ln -sf $(build-classpath objectweb-asm/asm) asm-4.0.jar
ln -sf $(build-classpath objectweb-asm/asm-commons) asm-commons-4.0.jar
ln -sf $(build-classpath maven/maven-plugin-api) maven-plugin-api.jar
cd -
export CLASSPATH=$(build-classpath ant)
ant jar jar-util javadoc mojo test
sed -i -e s/@VERSION@/%{version}/g maven/pom.xml
%mvn_artifact %{SOURCE1} dist/jarjar-%{version}.jar
%mvn_artifact %{SOURCE2} dist/jarjar-util-%{version}.jar
%mvn_artifact maven/pom.xml dist/jarjar-plugin-%{version}.jar
%mvn_alias tonic:jarjar jarjar:jarjar com.tonicsystems:jarjar com.googlecode.jarjar:jarjar org.gradle.jarjar:jarjar
%mvn_alias tonic:jarjar-util jarjar:jarjar-util com.tonicsystems:jarjar-util
%mvn_alias com.tonicsystems.jarjar:jarjar-plugin jarjar:jarjar-plugin tonic:jarjar-plugin com.tonicsystems:jarjar-plugin
%install
%mvn_install -J dist/javadoc
%jpackage_script com.tonicsystems.jarjar.Main "" "" jarjar/jarjar:objectweb-asm/asm:objectweb-asm/asm-commons jarjar true
install -m 644 -D jarjar.ant %{buildroot}%{_sysconfdir}/ant.d/jarjar
%files -f .mfiles
%doc COPYING
%{_bindir}/jarjar
%{_sysconfdir}/ant.d/jarjar
%dir %{_javadir}/jarjar
%files maven-plugin -f .mfiles-jarjar-maven-plugin
%doc COPYING
%files help -f .mfiles-javadoc
%changelog
* Wed Mar 4 2020 Ling Yang <lingyang2@huawei.com> - 1.4-23
- Package Init