Add OSGi manifest to tck jar

- Install with mvn_install
This commit is contained in:
Mat Booth 2015-02-18 18:05:31 +00:00
parent e3ea6f16fd
commit a68927fcb6
4 changed files with 48 additions and 28 deletions

2
.gitignore vendored
View File

@ -1,2 +1,4 @@
/atinject-1.tar.xz /atinject-1.tar.xz
/LICENSE-2.0.txt /LICENSE-2.0.txt
/noarch
/*.src.rpm

12
MANIFEST-TCK.MF Normal file
View File

@ -0,0 +1,12 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Tck
Bundle-SymbolicName: com.google.code.atinject.tck
Bundle-Version: 1.0.0
Bundle-Vendor: GOOGLE
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Require-Bundle: org.junit;bundle-version="3.8.2"
Export-Package: org.atinject.tck,
org.atinject.tck.auto;x-internal:=true,
org.atinject.tck.auto.accessories;x-internal:=true
Import-Package: javax.inject;version="1.0.0"

View File

@ -1,10 +1,10 @@
Manifest-Version: 1.0 Manifest-Version: 1.0
Bundle-ManifestVersion: 2 Bundle-ManifestVersion: 2
Bundle-Name: %bundleName Bundle-Name: Atinject Dependency Injection Annotations
Bundle-SymbolicName: javax.inject Bundle-SymbolicName: javax.inject
Bundle-Version: 1.0.0.v20091030 Bundle-Version: 1.0.0.v20091030
Bundle-ClassPath: . Bundle-ClassPath: .
Bundle-Vendor: %bundleProvider Bundle-Vendor: Eclipse.org
Bundle-Localization: plugin Bundle-Localization: plugin
Export-Package: javax.inject;version="1.0.0" Export-Package: javax.inject;version="1.0.0"
Bundle-RequiredExecutionEnvironment: J2SE-1.5 Bundle-RequiredExecutionEnvironment: J2SE-1.5

View File

@ -1,6 +1,6 @@
Name: atinject Name: atinject
Version: 1 Version: 1
Release: 17.20100611svn86%{?dist} Release: 18.20100611svn86%{?dist}
Summary: Dependency injection specification for Java (JSR-330) Summary: Dependency injection specification for Java (JSR-330)
License: ASL 2.0 License: ASL 2.0
URL: http://code.google.com/p/atinject/ URL: http://code.google.com/p/atinject/
@ -13,15 +13,18 @@ BuildArch: noarch
# rm -rf atinject-1/{lib,javadoc}/ # rm -rf atinject-1/{lib,javadoc}/
# tar caf atinject-1.tar.xz atinject-1 # tar caf atinject-1.tar.xz atinject-1
Source0: %{name}-%{version}.tar.xz Source0: %{name}-%{version}.tar.xz
# These manifests based on the ones shipped by eclipse.org
Source1: MANIFEST.MF Source1: MANIFEST.MF
Source2: http://www.apache.org/licenses/LICENSE-2.0.txt Source2: MANIFEST-TCK.MF
Source3: http://www.apache.org/licenses/LICENSE-2.0.txt
# Compile with source/target 1.5 # Compile with source/target 1.5
Patch0: %{name}-target-1.5.patch Patch0: %{name}-target-1.5.patch
BuildRequires: java-devel BuildRequires: javapackages-local
BuildRequires: junit BuildRequires: junit
Requires: java-headless
Provides: javax.inject Provides: javax.inject
@ -48,55 +51,58 @@ Requires: junit
%prep %prep
%setup -q %setup -q
cp %{SOURCE2} LICENSE cp %{SOURCE3} LICENSE
ln -s %{_javadir} lib ln -s %{_javadir} lib
%patch0 -p1 %patch0 -p1
# Fix dep in TCK pom
sed -i -e 's/pom\.groupId/project.groupId/' tck-pom.xml
# J2EE API symlinks
%mvn_file :javax.inject atinject javax.inject/atinject
# TCK sub-package
%mvn_file :javax.inject-tck atinject-tck
%mvn_package :javax.inject-tck tck
%build %build
set -e set -e
alias rm=: alias rm=:
alias xargs=: alias xargs=:
. ./build.sh . ./build.sh
# Inject OSGi manifest required by Eclipse. # Inject OSGi manifests required by Eclipse.
jar umf %{SOURCE1} build/dist/*.jar jar umf %{SOURCE1} build/dist/javax.inject.jar
jar umf %{SOURCE2} build/tck/dist/javax.inject-tck.jar
%mvn_artifact pom.xml build/dist/javax.inject.jar
%mvn_artifact tck-pom.xml build/tck/dist/javax.inject-tck.jar
%install %install
# Maven POMs %mvn_install
install -d -m 755 %{buildroot}%{_mavenpomdir}
install -p -m 644 pom.xml %{buildroot}%{_mavenpomdir}/JPP-%{name}.pom
install -p -m 644 tck-pom.xml %{buildroot}%{_mavenpomdir}/JPP-%{name}-tck.pom
# JARs
install -d -m 755 %{buildroot}%{_javadir}
install -p -m 644 build/dist/*.jar %{buildroot}%{_javadir}/%{name}.jar
install -p -m 644 build/tck/dist/*.jar %{buildroot}%{_javadir}/%{name}-tck.jar
# XMvn metadata
%add_maven_depmap
%add_maven_depmap JPP-%{name}-tck.pom %{name}-tck.jar -f tck
# Javadocs # Javadocs
install -d -m 755 %{buildroot}%{_javadocdir}/%{name}/tck install -d -m 755 %{buildroot}%{_javadocdir}/%{name}/tck
cp -pr build/javadoc/* %{buildroot}%{_javadocdir}/%{name} cp -pr build/javadoc/* %{buildroot}%{_javadocdir}/%{name}
cp -pr build/tck/javadoc/* %{buildroot}%{_javadocdir}/%{name}/tck cp -pr build/tck/javadoc/* %{buildroot}%{_javadocdir}/%{name}/tck
# J2EE API symlinks
install -d -m 755 %{buildroot}%{_javadir}/javax.inject/
ln -sf ../%{name}.jar %{buildroot}%{_javadir}/javax.inject/
%files -f .mfiles %files -f .mfiles
%doc LICENSE %doc LICENSE
%{_javadir}/javax.inject %dir %{_javadir}/javax.inject
%dir %{_mavenpomdir}/javax.inject
%files tck -f .mfiles-tck %files tck -f .mfiles-tck
%files javadoc %files javadoc
%doc LICENSE %doc LICENSE
%doc %{_javadocdir}/%{name} %{_javadocdir}/atinject
%changelog %changelog
* Wed Feb 18 2015 Mat Booth <mat.booth@redhat.com> - 1-18.20100611svn86
- Add OSGi manifest to tck jar
- Install with mvn_install
* Mon Jun 09 2014 Michal Srb <msrb@redhat.com> - 1-17.20100611svn86 * Mon Jun 09 2014 Michal Srb <msrb@redhat.com> - 1-17.20100611svn86
- Apply the "source/target 1.5" patch - Apply the "source/target 1.5" patch