# Copyright (c) 2000-2008, JPackage Project # All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # 1. Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # 2. Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the # distribution. # 3. Neither the name of the JPackage Project nor the names of its # contributors may be used to endorse or promote products derived # from this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # Name: jarjar Version: 1.4 Release: 22%{?dist} Summary: Jar Jar Links License: ASL 2.0 URL: http://code.google.com/p/jarjar/ Source0: https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/jarjar/jarjar-src-1.4.zip Source1: jarjar.pom Source2: jarjar-util.pom Patch0: fix-maven-plugin.patch Patch1: do-not-embed-asm.patch Patch2: port-to-asm6.patch BuildRequires: ant BuildRequires: ant-junit BuildRequires: objectweb-asm BuildRequires: javapackages-local BuildRequires: maven Requires: objectweb-asm # Explicit javapackages-tools requires since jarjar script uses # /usr/share/java-utils/java-functions Requires: javapackages-tools BuildArch: noarch %description Jar Jar Links is a utility that makes it easy to repackage Java libraries and embed them into your own distribution. This is useful for two reasons: You can easily ship a single jar file with no external dependencies. You can avoid problems where your library depends on a specific version of a library, which may conflict with the dependencies of another library. %package maven-plugin Summary: Maven plugin for %{name} Requires: maven Requires: %{name} = %{version}-%{release} %description maven-plugin %{summary}. %package javadoc Summary: Javadoc for %{name} %description javadoc %{summary}. %prep %setup -q -n %{name}-%{version} %patch0 %patch1 %patch2 -p1 # remove all binary libs rm -f lib/*.jar %mvn_package :jarjar-plugin %{name}-maven-plugin # create ant config echo "jarjar/jarjar objectweb-asm/asm objectweb-asm/asm-commons" > jarjar.ant %build pushd 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 popd export CLASSPATH=$(build-classpath ant) ant jar jar-util javadoc mojo test sed -i -e s/@VERSION@/%{version}/g maven/pom.xml # request maven artifact installation %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 %{name} true # install ant config install -m 644 -D jarjar.ant %{buildroot}%{_sysconfdir}/ant.d/jarjar %files -f .mfiles %doc COPYING %{_bindir}/%{name} %{_sysconfdir}/ant.d/jarjar %dir %{_javadir}/%{name} %files maven-plugin -f .mfiles-%{name}-maven-plugin %doc COPYING %files javadoc -f .mfiles-javadoc %doc COPYING %changelog * Fri Aug 10 2018 Severin Gehwolf - 1.4-22 - Fix Soure0 URL. * Mon Jul 30 2018 Severin Gehwolf - 1.4-21 - Add requirement on javapackages-tools for jarjar script. * Wed Feb 07 2018 Fedora Release Engineering - 1.4-20 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Mon Sep 18 2017 Mikolaj Izdebski - 1.4-19 - Port to ASM 6 - Resolves: rhbz#1492564 * Wed Jul 26 2017 Fedora Release Engineering - 1.4-18 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Fri Feb 10 2017 Fedora Release Engineering - 1.4-17 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild * Thu Feb 04 2016 Fedora Release Engineering - 1.4-16 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild * Wed Jun 17 2015 Fedora Release Engineering - 1.4-15 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild * Tue Jan 20 2015 Mikolaj Izdebski - 1.4-14 - Add dependency on ASM * Thu Dec 18 2014 Mat Booth - 1.4-13 - Don't embed asm inside jarjar, fixes rhbz#1161553 * Fri Nov 7 2014 Mikolaj Izdebski - 1.4-12 - Install JPackage script in bindir * Tue Oct 14 2014 Mikolaj Izdebski - 1.4-11 - Remove legacy Obsoletes/Provides for maven2 plugin * Wed Oct 8 2014 Mikolaj Izdebski - 1.4-10 - Add alias for org.gradle.jarjar:jarjar * Mon Jun 09 2014 Mat Booth - 1.4-9 - Fix BR on asm and install with maven * Sat Jun 07 2014 Fedora Release Engineering - 1.4-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild * Thu May 29 2014 Mikolaj Izdebski - 1.4-7 - Use .mfiles generated during build * Fri Oct 25 2013 Vít Ondruch - 1.4-6 - Fix alias to com.googlecode.jarjar:jarjar. * Thu Oct 24 2013 Mikolaj Izdebski - 1.4-5 - Add alias for com.googlecode:jarjar * Sun Sep 15 2013 Mat Booth - 1.4-4 - Fix contents of maven plugin jar, rhbz #1006568 * Thu Aug 08 2013 Mat Booth - 1.4-3 - Update for newer guidelines * Sat Aug 03 2013 Fedora Release Engineering - 1.4-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild * Sat Mar 02 2013 Mat Booth - 1.4-1 - Update to latest upstream version. - Drop no longer needed patches. - Drop unneeded BR/R on gnu-regexp. * Thu Feb 14 2013 Fedora Release Engineering - 1.0-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild * Wed Feb 06 2013 Java SIG - 1.0-8 - Update for https://fedoraproject.org/wiki/Fedora_19_Maven_Rebuild - Replace maven BuildRequires with maven-local * Thu Sep 20 2012 Mikolaj Izdebski - 1.0-7 - Install COPYING file with javadoc package - Update to current packaging guidelines - Remove rpm bug workaround * Thu Jul 19 2012 Fedora Release Engineering - 1.0-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild * Fri Jan 13 2012 Fedora Release Engineering - 1.0-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild * Fri Jun 17 2011 Alexander Kurtakov 1.0-4 - Do not require maven2. * Wed Feb 09 2011 Fedora Release Engineering - 1.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Wed Dec 29 2010 Mat Booth 1.0-2 - Fix pom names RHBZ #655805. - Drop versioned jars/javadocs. * Wed Sep 29 2010 Mary Ellen Foster 1.0-1 - Update to 1.0 - Change project URLs - Fix FTBFS - Remove gcj stuff * Fri Feb 5 2010 Mary Ellen Foster 0.9-5 - Make javadoc noarch * Tue Nov 17 2009 Mary Ellen Foster 0.9-4 - Re-add GCJ bits - Require jpackage-utils (for directories) - Link javadoc dir * Sun Nov 1 2009 Mary Ellen Foster 0.9-3 - Initial package, based on jpackage jarjar-0.9-2