diff --git a/sisu-inject.pom b/sisu-inject.pom new file mode 100644 index 0000000..f676c5b --- /dev/null +++ b/sisu-inject.pom @@ -0,0 +1,72 @@ + + 4.0.0 + org.eclipse.sisu + org.eclipse.sisu.inject + 0.3.2 + + + com.google.inject + guice + no_aop + 4.0 + provided + + + javax.inject + javax.inject + 1 + provided + + + javax.enterprise + cdi-api + 1.1 + + + javax.annotation + javax.annotation-api + 1.2 + provided + + + com.google.inject.extensions + guice-servlet + 4.0 + provided + + + javax.servlet + servlet-api + 2.5 + provided + + + org.slf4j + slf4j-api + 1.7.13 + provided + + + org.osgi + osgi.core + 6.0.0 + provided + + + junit + junit + 4.12 + provided + + + org.testng + testng + 6.9.10 + provided + + + + org.eclipse.sisu.inject/src + + \ No newline at end of file diff --git a/sisu-osgi-api.patch b/sisu-osgi-api.patch new file mode 100644 index 0000000..9250a6c --- /dev/null +++ b/sisu-osgi-api.patch @@ -0,0 +1,11 @@ +--- sisu-plexus/org.eclipse.sisu.plexus/src/org/eclipse/sisu/plexus/PlexusBundlePlan.java~ 2015-09-13 20:15:37.000000000 +0200 ++++ sisu-plexus/org.eclipse.sisu.plexus/src/org/eclipse/sisu/plexus/PlexusBundlePlan.java 2017-01-29 19:56:51.608151337 +0100 +@@ -80,7 +80,7 @@ + + protected static boolean hasPlexusAnnotations( final Bundle bundle ) + { +- final String imports = bundle.getHeaders().get( Constants.IMPORT_PACKAGE ); ++ final String imports = bundle.getHeaders().get( Constants.IMPORT_PACKAGE ).toString(); + return null != imports && imports.contains( "org.codehaus.plexus.component.annotations" ); + } + diff --git a/sisu-parent.pom b/sisu-parent.pom new file mode 100644 index 0000000..87a2bca --- /dev/null +++ b/sisu-parent.pom @@ -0,0 +1,12 @@ + + 4.0.0 + org.fedoraproject.maven + aggregator-project + 0.3.2 + pom + + sisu-inject + sisu-plexus + + \ No newline at end of file diff --git a/sisu-plexus.pom b/sisu-plexus.pom new file mode 100644 index 0000000..7df0739 --- /dev/null +++ b/sisu-plexus.pom @@ -0,0 +1,67 @@ + + 4.0.0 + org.eclipse.sisu + org.eclipse.sisu.plexus + 0.3.2 + + + ${project.groupId} + org.eclipse.sisu.inject + ${project.version} + + + org.codehaus.plexus + plexus-classworlds + 2.5.2 + + + org.codehaus.plexus + plexus-component-annotations + 1.6 + + + org.codehaus.plexus + plexus-utils + 3.0.22 + + + com.google.inject + guice + no_aop + 4.0 + provided + + + org.slf4j + slf4j-api + 1.7.13 + provided + + + org.osgi + osgi.core + 6.0.0 + provided + + + junit + junit + 4.12 + provided + + + + org.eclipse.sisu.plexus/src + + + META-INF/plexus + false + ${basedir}/org.eclipse.sisu.plexus/META-INF/plexus + + components.xml + + + + + \ No newline at end of file diff --git a/sisu.spec b/sisu.spec index dd1d0ec..7de9baa 100644 --- a/sisu.spec +++ b/sisu.spec @@ -5,7 +5,7 @@ Name: sisu Epoch: 1 Version: 0.3.2 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Eclipse dependency injection framework License: EPL URL: http://eclipse.org/sisu @@ -13,56 +13,30 @@ URL: http://eclipse.org/sisu Source0: http://git.eclipse.org/c/%{name}/org.eclipse.%{name}.inject.git/snapshot/%{reltype}s/%{version}%{?reltag}.tar.bz2#/org.eclipse.%{name}.inject-%{version}%{?reltag}.tar.bz2 Source1: http://git.eclipse.org/c/%{name}/org.eclipse.%{name}.plexus.git/snapshot/%{reltype}s/%{version}%{?reltag}.tar.bz2#/org.eclipse.%{name}.plexus-%{version}%{?reltag}.tar.bz2 +Source100: %{name}-parent.pom +Source101: %{name}-inject.pom +Source102: %{name}-plexus.pom + Patch0: %{name}-OSGi-import-guava.patch Patch2: %{name}-ignored-tests.patch +Patch3: %{name}-osgi-api.patch BuildArch: noarch -BuildRequires: maven-local >= 4.2 -BuildRequires: mvn(ch.qos.logback:logback-classic) -BuildRequires: mvn(com.google.inject.extensions:guice-assistedinject) -BuildRequires: mvn(com.google.inject:guice) +BuildRequires: maven-local +BuildRequires: mvn(com.google.inject.extensions:guice-servlet) +BuildRequires: mvn(com.google.inject:guice::no_aop:) BuildRequires: mvn(javax.annotation:javax.annotation-api) BuildRequires: mvn(javax.enterprise:cdi-api) +BuildRequires: mvn(javax.inject:javax.inject) +BuildRequires: mvn(javax.servlet:servlet-api) BuildRequires: mvn(junit:junit) -BuildRequires: mvn(net.sf.cglib:cglib) -BuildRequires: mvn(org.apache.felix:org.apache.felix.framework) -BuildRequires: mvn(org.apache.maven.plugins:maven-clean-plugin) -BuildRequires: mvn(org.apache.maven.plugins:maven-dependency-plugin) -BuildRequires: mvn(org.apache.maven.plugins:maven-deploy-plugin) -BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin) BuildRequires: mvn(org.codehaus.plexus:plexus-classworlds) BuildRequires: mvn(org.codehaus.plexus:plexus-component-annotations) BuildRequires: mvn(org.codehaus.plexus:plexus-utils) -BuildRequires: mvn(org.eclipse.tycho:tycho-maven-plugin) -BuildRequires: mvn(org.eclipse.tycho:tycho-source-plugin) -BuildRequires: mvn(org.jacoco:jacoco-maven-plugin) -BuildRequires: mvn(org.osgi:org.osgi.core) -BuildRequires: mvn(org.ow2.asm:asm) +BuildRequires: mvn(org.osgi:osgi.core) BuildRequires: mvn(org.slf4j:slf4j-api) -BuildRequires: mvn(org.sonatype.oss:oss-parent:pom:) - -BuildRequires: osgi(aopalliance) -BuildRequires: osgi(com.google.inject) -BuildRequires: osgi(com.google.inject.servlet) -BuildRequires: osgi(com.google.guava) -BuildRequires: osgi(javax.el) -BuildRequires: osgi(javax.enterprise.cdi-api) -BuildRequires: osgi(javax.inject) -BuildRequires: osgi(javax.servlet) -BuildRequires: osgi(javax.xml.rpc) -BuildRequires: osgi(org.apache.geronimo.specs.geronimo-annotation_1.1_spec) -BuildRequires: osgi(org.apache.geronimo.specs.geronimo-ejb_3.1_spec) -BuildRequires: osgi(org.codehaus.plexus.classworlds) -BuildRequires: osgi(org.codehaus.plexus.component-annotations) -BuildRequires: osgi(org.codehaus.plexus.utils) -BuildRequires: osgi(org.eclipse.jdt.apt.core) -BuildRequires: osgi(org.eclipse.osgi) -BuildRequires: osgi(org.eclipse.osgi.source) -BuildRequires: osgi(org.hamcrest.core) -BuildRequires: osgi(org.junit) -BuildRequires: osgi(org.testng) -BuildRequires: osgi(slf4j.api) +BuildRequires: mvn(org.testng:testng) %description @@ -71,30 +45,7 @@ style dependency injection. %package inject Summary: Sisu inject - -Obsoletes: %{name} < %{epoch}:%{version}-%{release} -Obsoletes: %{name}-bean < %{epoch}:%{version}-%{release} -Obsoletes: %{name}-bean-binders < %{epoch}:%{version}-%{release} -Obsoletes: %{name}-bean-containers < %{epoch}:%{version}-%{release} -Obsoletes: %{name}-bean-converters < %{epoch}:%{version}-%{release} -Obsoletes: %{name}-bean-inject < %{epoch}:%{version}-%{release} -Obsoletes: %{name}-bean-locators < %{epoch}:%{version}-%{release} -Obsoletes: %{name}-bean-reflect < %{epoch}:%{version}-%{release} -Obsoletes: %{name}-bean-scanners < %{epoch}:%{version}-%{release} -Obsoletes: %{name}-containers < %{epoch}:%{version}-%{release} -Obsoletes: %{name}-inject-bean < %{epoch}:%{version}-%{release} -Obsoletes: %{name}-inject-plexus < %{epoch}:%{version}-%{release} -Obsoletes: %{name}-osgi-registry < %{epoch}:%{version}-%{release} -Obsoletes: %{name}-parent < %{epoch}:%{version}-%{release} -Obsoletes: %{name}-plexus-binders < %{epoch}:%{version}-%{release} -Obsoletes: %{name}-plexus-converters < %{epoch}:%{version}-%{release} -Obsoletes: %{name}-plexus-lifecycles < %{epoch}:%{version}-%{release} -Obsoletes: %{name}-plexus-locators < %{epoch}:%{version}-%{release} -Obsoletes: %{name}-plexus-metadata < %{epoch}:%{version}-%{release} -Obsoletes: %{name}-plexus-scanners < %{epoch}:%{version}-%{release} -Obsoletes: %{name}-plexus-shim < %{epoch}:%{version}-%{release} -Obsoletes: %{name}-registries < %{epoch}:%{version}-%{release} -Obsoletes: %{name}-spi-registry < %{epoch}:%{version}-%{release} +Obsoletes: %{name}-tests < 1:0.3.2-5 %description inject This package contains %{summary}. @@ -105,12 +56,6 @@ Summary: Sisu Plexus %description plexus This package contains %{summary}. -%package tests -Summary: Sisu tests - -%description tests -This package contains %{summary}. - %package javadoc Summary: API documentation for Sisu @@ -122,96 +67,39 @@ This package contains %{summary}. tar xf %{SOURCE0} && mv %{reltype}s/* sisu-inject && rmdir %{reltype}s tar xf %{SOURCE1} && mv %{reltype}s/* sisu-plexus && rmdir %{reltype}s +cp %{SOURCE100} pom.xml +cp %{SOURCE101} sisu-inject/pom.xml +cp %{SOURCE102} sisu-plexus/pom.xml + %patch0 %patch2 - -# Unbundle ASM -rm -rf sisu-inject/org.eclipse.sisu.inject/src/org/eclipse/sisu/space/asm/ -sed -i 's/org.eclipse.sisu.space.asm/org.objectweb.asm/' $(find -name *.java) -sed -i 's/Import-Package: /&org.objectweb.asm;version="5",/' sisu-inject/org.eclipse.sisu.inject/META-INF/MANIFEST.MF -%pom_add_dep org.ow2.asm:asm sisu-inject/org.eclipse.sisu.inject -%pom_add_dep org.ow2.asm:asm sisu-plexus/org.eclipse.sisu.plexus.tests +%patch3 %mvn_file ":{*}" @1 -%mvn_package ":*{inject,plexus,tests}" @1 -%mvn_alias :org.eclipse.sisu.plexus org.sonatype.sisu:sisu-inject-plexus - -%pom_disable_module org.eclipse.sisu.inject.site sisu-inject -%pom_disable_module org.eclipse.sisu.plexus.site sisu-plexus - -%pom_add_dep net.sf.cglib:cglib::test sisu-inject/org.eclipse.sisu.inject.tests -%pom_add_dep net.sf.cglib:cglib::test sisu-plexus/org.eclipse.sisu.plexus.tests - -for pom in \ - sisu-inject \ - sisu-inject/org.eclipse.sisu.inject \ - sisu-inject/org.eclipse.sisu.inject.extender \ - sisu-plexus \ - sisu-plexus/org.eclipse.sisu.plexus \ - sisu-plexus/org.eclipse.sisu.plexus.extender -do - %pom_remove_plugin :target-platform-configuration $pom -done - -for pom in \ - sisu-inject/org.eclipse.sisu.inject \ - sisu-inject/org.eclipse.sisu.inject.extender \ - sisu-plexus/org.eclipse.sisu.plexus \ - sisu-plexus/org.eclipse.sisu.plexus.extender -do - %pom_remove_plugin :animal-sniffer-maven-plugin $pom -done - -for pom in sisu-inject/org.eclipse.sisu.inject.tests/pom.xml sisu-plexus/org.eclipse.sisu.plexus/pom.xml; do - %pom_xpath_inject "pom:dependency[pom:artifactId='cdi-api']" 'provided' $pom -done - -# missing dep org.eclipse.tycho.extras:tycho-sourceref-jgit -%pom_xpath_remove "pom:plugin[pom:artifactId[text()='tycho-packaging-plugin']]/pom:dependencies" sisu-inject -%pom_xpath_remove "pom:plugin[pom:artifactId[text()='tycho-packaging-plugin']]/pom:configuration/pom:sourceReferences" sisu-inject -%pom_xpath_remove "pom:plugin[pom:artifactId[text()='tycho-packaging-plugin']]/pom:dependencies" sisu-plexus -%pom_xpath_remove "pom:plugin[pom:artifactId[text()='tycho-packaging-plugin']]/pom:configuration/pom:sourceReferences" sisu-plexus - - -cat <pom.xml - - 4.0.0 - org.fedoraproject.maven - aggregator-project - dummy - pom - - sisu-inject - sisu-plexus - - -EOF +%mvn_package ":*{inject,plexus}" @1 +%mvn_package : __noinstall %build -%mvn_build -i +%mvn_build %install -%mvn_artifact sisu-inject/pom.xml -%mvn_artifact sisu-inject/org.eclipse.sisu.inject/pom.xml sisu-inject/org.eclipse.sisu.inject/target/org.eclipse.sisu.inject-%{version}%{?reltag}.jar -%mvn_artifact sisu-inject/org.eclipse.sisu.inject.tests/pom.xml sisu-inject/org.eclipse.sisu.inject.tests/target/org.eclipse.sisu.inject.tests-%{version}%{?reltag}.jar -%mvn_artifact sisu-plexus/pom.xml -%mvn_artifact sisu-plexus/org.eclipse.sisu.plexus/pom.xml sisu-plexus/org.eclipse.sisu.plexus/target/org.eclipse.sisu.plexus-%{version}%{?reltag}.jar -%mvn_artifact sisu-plexus/org.eclipse.sisu.plexus.tests/pom.xml sisu-plexus/org.eclipse.sisu.plexus.tests/target/org.eclipse.sisu.plexus.tests-%{version}%{?reltag}.jar %mvn_install - %files inject -f .mfiles-inject %doc sisu-inject/LICENSE.txt %files plexus -f .mfiles-plexus -%files tests -f .mfiles-tests - %files javadoc -f .mfiles-javadoc %doc sisu-inject/LICENSE.txt %changelog +* Sun Jan 29 2017 Mikolaj Izdebski - 1:0.3.2-5 +- Build without Tycho +- Remove sisu-tests subpackage +- Drop old obsoletes + * Mon Feb 22 2016 Mikolaj Izdebski - 1:0.3.2-4 - Add alias for org.sonatype.sisu:sisu-inject-plexus