Sophie

Sophie

distrib > Fedora > 14 > x86_64 > media > updates-src > by-pkgid > 8f72a7227f22026a6e4816b390b72804 > files > 1

jaffl-0.5.4-4.fc14.src.rpm

%global git_commit 58c69c9
%global cluster wmeissner

Name:     jaffl
Version:  0.5.4
Release:  4%{?dist}
Summary:  Java Abstracted Foreign Function Layer
Group:    System Environment/Libraries
License:  LGPLv3
URL:      http://github.com/%{cluster}/%{name}
Source0: %{url}/tarball/%{version}/%{cluster}-%{name}-%{git_commit}.tar.gz
Patch0:   jaffl_fix_jar_dependencies.patch

# invokedynamic is a Java 7 feature and the method
# which needs it is only defined and not used
Patch1:   jaffl_remove_invokedynamic.patch

BuildRequires: java-devel
BuildRequires: jpackage-utils
BuildRequires: ant
BuildRequires: ant-nodeps
BuildRequires: jffi
BuildRequires: jnr-x86asm
BuildRequires: objectweb-asm

Requires:      java
Requires:      jpackage-utils
Requires:      jffi
Requires:      jnr-x86asm
Requires:      objectweb-asm
BuildArch:     noarch

%description
An abstracted interface to invoking native functions from java

%package javadoc
Summary:        Javadocs for %{name}
Group:          Documentation
Requires:       %{name} = %{version}-%{release}
Requires:       jpackage-utils

%description javadoc
This package contains the API documentation for %{name}.

%prep
%setup -q -n %{cluster}-%{name}-%{git_commit}
%patch0 -p0
%patch1 -p0

# remove all builtin jars
find -name '*.jar' -o -name '*.class' -exec rm -f '{}' \;

# remove tests/junit dependency
rm -rf test/

mkdir build_lib
build-jar-repository -s -p build_lib jffi jnr-x86asm objectweb-asm/asm \
                                     objectweb-asm/analysis objectweb-asm/commons \
                                     objectweb-asm/tree objectweb-asm/util objectweb-asm/xml

%build
ant

%install
rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT%{_javadir}
mkdir -p $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}

cp dist/%{name}-0.5.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar
ln -s %{_javadir}/%{name}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}.jar

cp -rp dist/javadoc/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
ln -s %{_javadocdir}/%{name}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{name}

# pom
%add_to_maven_depmap org.jruby.extras %{name} %{version} JPP %{name}
mkdir -p $RPM_BUILD_ROOT%{_mavenpomdir}
cp pom.xml  $RPM_BUILD_ROOT%{_mavenpomdir}/JPP-jaffl.pom

%post
%update_maven_depmap

%postun
%update_maven_depmap

%clean
rm -rf $RPM_BUILD_ROOT

%files
%defattr(-,root,root,-)
%{_javadir}/%{name}-%{version}.jar
%{_javadir}/%{name}.jar
%{_mavendepmapfragdir}/%{name}
%{_mavenpomdir}/*
%doc LICENSE

%files javadoc
%defattr(-,root,root,-)
%{_javadocdir}/%{name}
%{_javadocdir}/%{name}-%{version}

%changelog
* Fri Oct 29 2010 Mohammed Morsi <mmorsi@redhat.com> - 0.5.4-4
- license fix, include pom.xml, install javadocs correctly

* Tue Oct 26 2010 Mohammed Morsi <mmorsi@redhat.com> - 0.5.4-3
- change to patch0 to remove class-path-in-manifest rpmlint error

* Thu Sep 16 2010 Matěj Cepl <mcepl@redhat.com> - 0.5.4-2
- Make the package noarch

* Thu Sep  09 2010  <mmorsi@redhat.com> - 0.5.4-1
- bumped version to 0.5.4
- added jaffl_remove_invokedynamic.patch

* Thu Jan  28 2009  <mmorsi@redhat.com> - 0.3.4-1
- Initial build.