%global pkg_name sisu %{?scl:%scl_package %{pkg_name}} %{?maven_find_provides_and_requires} %global __requires_exclude %{?__requires_exclude:%__requires_exclude|}^osgi\\(org\\.sonatype\\.sisu\\.guava\\)$ Name: %{?scl_prefix}%{pkg_name} Version: 2.3.0 Release: 11.13%{?dist} Summary: Sonatype dependency injection framework License: ASL 2.0 and EPL and MIT URL: http://github.com/sonatype/sisu # git clone git://github.com/sonatype/%{pkg_name} ${name}-%{version} # cd %{pkg_name}-%{version} # git checkout %{pkg_name}-%{version} # find ./ -name "*.jar" -delete # find ./ -name "*.class" -delete # cd .. # tar czvf %{pkg_name}-%{version}.tar.gz %{pkg_name}-%{version} Source0: %{pkg_name}-%{version}.tar.gz BuildArch: noarch BuildRequires: %{?scl_prefix_java_common}javapackages-tools BuildRequires: %{?scl_prefix_java_common}maven-local BuildRequires: %{?scl_prefix}aopalliance BuildRequires: %{?scl_prefix_java_common}atinject BuildRequires: %{?scl_prefix}cdi-api BuildRequires: %{?scl_prefix_java_common}felix-framework BuildRequires: %{?scl_prefix}forge-parent BuildRequires: %{?scl_prefix}google-guice BuildRequires: %{?scl_prefix_java_common}junit BuildRequires: %{?scl_prefix}plexus-classworlds BuildRequires: %{?scl_prefix}plexus-containers-component-annotations BuildRequires: %{?scl_prefix}plexus-utils BuildRequires: %{?scl_prefix}sisu BuildRequires: %{?scl_prefix}testng BuildRequires: %{?scl_prefix}weld-parent Requires: %{name}-bean = %{version}-%{release} Requires: %{name}-bean-binders = %{version}-%{release} Requires: %{name}-bean-containers = %{version}-%{release} Requires: %{name}-bean-converters = %{version}-%{release} Requires: %{name}-bean-inject = %{version}-%{release} Requires: %{name}-bean-locators = %{version}-%{release} Requires: %{name}-bean-reflect = %{version}-%{release} Requires: %{name}-bean-scanners = %{version}-%{release} Requires: %{name}-containers = %{version}-%{release} Requires: %{name}-inject = %{version}-%{release} Requires: %{name}-inject-bean = %{version}-%{release} Requires: %{name}-inject-plexus = %{version}-%{release} Requires: %{name}-osgi-registry = %{version}-%{release} Requires: %{name}-parent = %{version}-%{release} Requires: %{name}-plexus = %{version}-%{release} Requires: %{name}-plexus-binders = %{version}-%{release} Requires: %{name}-plexus-converters = %{version}-%{release} Requires: %{name}-plexus-lifecycles = %{version}-%{release} Requires: %{name}-plexus-locators = %{version}-%{release} Requires: %{name}-plexus-metadata = %{version}-%{release} Requires: %{name}-plexus-scanners = %{version}-%{release} Requires: %{name}-plexus-shim = %{version}-%{release} Requires: %{name}-registries = %{version}-%{release} Requires: %{name}-spi-registry = %{version}-%{release} %description Java dependency injection framework with backward support for plexus and bean style dependency injection. %package parent Summary: Sisu parent POM %description parent This package contains %{summary}. %package containers Summary: Sisu containers POM %description containers This package contains %{summary}. %package bean Summary: Sisu bean POM %description bean This package contains %{summary}. %package plexus Summary: Sisu Plexus POM %description plexus This package contains %{summary}. %package registries Summary: Sisu registries POM %description registries This package contains %{summary}. %package inject Summary: Sisu inject POM %description inject This package contains %{summary}. %package bean-binders Summary: Guice Bean Binders module for Sisu %description bean-binders This package contains %{summary}. %package bean-containers Summary: Guice Bean Containers module for Sisu %description bean-containers This package contains %{summary}. %package bean-converters Summary: Guice Bean Converters module for Sisu %description bean-converters This package contains %{summary}. %package bean-inject Summary: Guice Bean Inject module for Sisu %description bean-inject This package contains %{summary}. %package bean-locators Summary: Guice Bean Locators module for Sisu %description bean-locators This package contains %{summary}. %package bean-reflect Summary: Guice Bean Reflect module for Sisu %description bean-reflect This package contains %{summary}. %package bean-scanners Summary: Guice Bean Scanners module for Sisu %description bean-scanners This package contains %{summary}. %package plexus-binders Summary: Guice Plexus Binders module for Sisu %description plexus-binders This package contains %{summary}. %package plexus-converters Summary: Guice Plexus Converters module for Sisu %description plexus-converters This package contains %{summary}. %package plexus-lifecycles Summary: Guice Plexus Lifecycles module for Sisu %description plexus-lifecycles This package contains %{summary}. %package plexus-locators Summary: Guice Plexus Locators module for Sisu %description plexus-locators This package contains %{summary}. %package plexus-metadata Summary: Guice Plexus Metadata module for Sisu %description plexus-metadata This package contains %{summary}. %package plexus-scanners Summary: Guice Plexus Scanners module for Sisu %description plexus-scanners This package contains %{summary}. %package plexus-shim Summary: Guice Plexus Shim module for Sisu %description plexus-shim This package contains %{summary}. %package inject-bean Summary: Bean Inject bundle for Sisu %description inject-bean This package contains %{summary}. %package inject-plexus Summary: Plexus Inject bundle for Sisu %description inject-plexus This package contains %{summary}. %package osgi-registry Summary: OSGi registry for Sisu %description osgi-registry This package contains %{summary}. %package spi-registry Summary: SPI registry for Sisu %description spi-registry This package contains %{summary}. %package javadoc Summary: API documentation for Sisu %description javadoc This package contains %{summary}. %prep %setup -q -n %{pkg_name}-%{version} %{?scl:scl enable %{scl} - <<"EOF"} set -e -x # Animal sniffer is only causing problems %pom_remove_plugin :animal-sniffer-maven-plugin # Don't generate auto-requires for optional dependencies sed -i "s|true|provided|" \ $(grep -l "" $(find sisu-inject -name pom.xml)) # Remove bundled objectweb-asm library rm -rf ./sisu-inject/containers/guice-bean/guice-bean-scanners/src/main/java/org/sonatype/guice/bean/scanners/asm %pom_add_dep asm:asm sisu-inject/containers/guice-bean/guice-bean-scanners # sisu-inject-bean bundles classes from other modules, so it also needs asm %pom_add_dep asm:asm sisu-inject/containers/guice-bean/sisu-inject-bean # Fix namespace of imported asm classes sed -i 's/org.sonatype.guice.bean.scanners.asm/org.objectweb.asm/g' \ sisu-inject/containers/guice-plexus/guice-plexus-scanners/src/{main,test}/java/org/sonatype/guice/plexus/scanners/*.java \ sisu-inject/containers/guice-bean/guice-bean-scanners/src/{main,test}/java/org/sonatype/guice/bean/scanners/*.java \ # Fix plexus bundling sed -i -e '/provide these APIs as a convenience/,+2d' \ sisu-inject/containers/guice-bean/sisu-inject-bean/pom.xml %pom_add_dep javax.inject:javax.inject sisu-inject/containers/guice-bean/sisu-inject-bean %pom_add_dep javax.enterprise:cdi-api sisu-inject/containers/guice-bean/sisu-inject-bean # add backward compatible location cp sisu-inject/containers/guice-plexus/guice-plexus-lifecycles/src/main/java/org/sonatype/guice/plexus/lifecycles/*java \ sisu-inject/containers/guice-plexus/guice-plexus-lifecycles/src/main/java/org/codehaus/plexus/ sed -i 's/org.sonatype.guice.plexus.lifecycles/org.codehaus.plexus/' \ sisu-inject/containers/guice-plexus/guice-plexus-lifecycles/src/main/java/org/codehaus/plexus/*java # Dependency not available %pom_disable_module sisu-eclipse-registry sisu-inject/registries %pom_remove_plugin :maven-surefire-plugin sisu-inject/containers/guice-bean/guice-bean-containers %pom_remove_plugin :maven-clean-plugin sisu-inject/containers/guice-plexus/guice-plexus-binders %pom_remove_plugin :maven-dependency-plugin sisu-inject/containers/guice-plexus/guice-plexus-binders # logback is not available in RHEL %pom_remove_dep :logback-classic for pom in . sisu-inject/containers/guice-bean/guice-bean-binders \ sisu-inject/containers/guice-bean/sisu-inject-bean; do %pom_xpath_inject "pom:dependency[pom:artifactId='cdi-api']" 'provided' $pom done %{?scl:EOF} %build %{?scl:scl enable %{scl} - <<"EOF"} set -e -x %mvn_package ":{sisu,guice}-{*}" @2 %mvn_build -s -f %{?scl:EOF} %install %{?scl:scl enable %{scl} - <<"EOF"} set -e -x %mvn_install %{?scl:EOF} %files %doc LICENSE-ASL.txt LICENSE-EPL.txt %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files parent -f .mfiles-parent %dir %{_mavenpomdir}/%{pkg_name} %files containers -f .mfiles-containers %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files bean -f .mfiles-bean %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files plexus -f .mfiles-plexus %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files registries -f .mfiles-registries %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files inject -f .mfiles-inject %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files bean-binders -f .mfiles-bean-binders %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files bean-containers -f .mfiles-bean-containers %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files bean-converters -f .mfiles-bean-converters %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files bean-inject -f .mfiles-bean-inject %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files bean-locators -f .mfiles-bean-locators %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files bean-reflect -f .mfiles-bean-reflect %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files bean-scanners -f .mfiles-bean-scanners %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files plexus-binders -f .mfiles-plexus-binders %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files plexus-converters -f .mfiles-plexus-converters %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files plexus-lifecycles -f .mfiles-plexus-lifecycles %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files plexus-locators -f .mfiles-plexus-locators %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files plexus-metadata -f .mfiles-plexus-metadata %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files plexus-scanners -f .mfiles-plexus-scanners %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files plexus-shim -f .mfiles-plexus-shim %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files inject-bean -f .mfiles-inject-bean %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files inject-plexus -f .mfiles-inject-plexus %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files osgi-registry -f .mfiles-osgi-registry %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files spi-registry -f .mfiles-spi-registry %dir %{_mavenpomdir}/%{pkg_name} %dir %{_javadir}/%{pkg_name} %files javadoc -f .mfiles-javadoc %doc LICENSE-ASL.txt LICENSE-EPL.txt %changelog * Thu Jan 15 2015 Michael Simacek - 2.3.0-11.13 - Add common dirs to subpackages * Thu Jan 15 2015 Mikolaj Izdebski - 2.3.0-11.12 - Add directory ownership on %%{_mavenpomdir} subdir * Tue Jan 13 2015 Michael Simacek - 2.3.0-11.11 - Mass rebuild 2015-01-13 * Tue Jan 06 2015 Michael Simacek - 2.3.0-11.10 - Mass rebuild 2015-01-06 * Mon May 26 2014 Mikolaj Izdebski - 2.3.0-11.9 - Mass rebuild 2014-05-26 * Thu Feb 20 2014 Michael Simacek - 2.3.0-11.8 - Set cdi-api scope to provided * Wed Feb 19 2014 Mikolaj Izdebski - 2.3.0-11.7 - Mass rebuild 2014-02-19 * Wed Feb 19 2014 Mikolaj Izdebski - 2.3.0-11.6 - Rebuild to get rid of auto-requires on java-devel * Tue Feb 18 2014 Mikolaj Izdebski - 2.3.0-11.5 - Mass rebuild 2014-02-18 * Tue Feb 18 2014 Mikolaj Izdebski - 2.3.0-11.4 - Remove requires on java * Mon Feb 17 2014 Michal Srb - 2.3.0-11.3 - SCL-ize BR * Thu Feb 13 2014 Mikolaj Izdebski - 2.3.0-11.2 - Rebuild to regenerate auto-requires * Tue Feb 11 2014 Mikolaj Izdebski - 2.3.0-11.1 - First maven30 software collection build * Fri Dec 27 2013 Daniel Mach - 2.3.0-11 - Mass rebuild 2013-12-27 * Wed Nov 13 2013 Mikolaj Izdebski - 2.3.0-10 - Remove dependency on logback-classic * Fri Jun 28 2013 Mikolaj Izdebski - 2.3.0-9 - Rebuild to regenerate API documentation - Resolves: CVE-2013-1571 * Wed Mar 27 2013 Stanislav Ochotnicky - 2.3.0-8 - Remove unneeded animal-sniffer BuildRequires - Add forge-parent to BuildRequires to ensure it's present * Thu Mar 14 2013 Michal Srb - 2.3.0-7 - sisu-inject-bean: add dependency on asm - Fix dependencies on javax.inject and javax.enterprise.inject - Remove bundled JARs and .class files from tarball * Thu Feb 7 2013 Mikolaj Izdebski - 2.3.0-6 - Add ASM dependency only to a single module, not all of them - Disable animal-sniffer plugin - Don't generate auto-requires for optional dependencies * Wed Feb 06 2013 Tomas Radej - 2.3.0-5 - Added BR on animal-sniffer * Tue Feb 05 2013 Tomas Radej - 2.3.0-4 - Split into subpackages - Build with new macros - Unbundled objectweb-asm * Wed Dec 5 2012 Mikolaj Izdebski - 2.3.0-3 - Fix OSGi __requires_exclude * Wed Dec 5 2012 Mikolaj Izdebski - 2.3.0-2 - Disable OSGi auto-requires: org.sonatype.sisu.guava * Mon Dec 3 2012 Mikolaj Izdebski - 2.3.0-1 - Update to upstream version 2.3.0 * Tue Jul 24 2012 Mikolaj Izdebski - 2.2.3-6 - Convert patches to POM macros * Mon Jul 23 2012 Mikolaj Izdebski - 2.2.3-5 - Fix license tag * Sat Jul 21 2012 Fedora Release Engineering - 2.2.3-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild * Sat Jan 14 2012 Fedora Release Engineering - 2.2.3-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild * Fri Aug 19 2011 Stanislav Ochotnicky - 2.2.3-2 - Add backward compatible package path for lifecycles - Remove temporary BRs/Rs * Thu Jun 23 2011 Stanislav Ochotnicky - 2.2.3-1 - Update to latest upstream 2.2.3 (#683795) - Add forge-parent to Requires - Rework spec to be more simple, update patches * Tue Mar 1 2011 Stanislav Ochotnicky - 2.1.1-2 - Add atinject into poms as dependency * Mon Feb 28 2011 Stanislav Ochotnicky - 2.1.1-1 - Update to 2.1.1 - Update patch - Disable guice-eclipse for now * Wed Feb 09 2011 Fedora Release Engineering - 1.4.3.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Wed Feb 2 2011 Stanislav Ochotnicky - 1.4.3.2-1 - Update to latest upstream version - Versionless jars & javadocs * Mon Oct 18 2010 Stanislav Ochotnicky - 1.4.2-2 - Add felix-framework BR * Thu Oct 14 2010 Stanislav Ochotnicky - 1.4.2-1 - Initial version of the package