Пакет jnr-ffi: Specfile

BuildRequires: /proc
BuildRequires: jpackage-compat
%global git_commit 103ea1a
%global cluster jnr

Name:     jnr-ffi
Version:  0.5.10
Release:  alt2_3jpp7
Summary:  Java Abstracted Foreign Function Layer
Group:    System/Libraries
License:  ASL 2.0 or LGPLv3+
URL:      http://github.com/%{cluster}/%{name}
Source0:  https://download.github.com/%{cluster}-%{name}-%{version}-0-g%{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: jpackage-utils
BuildRequires: ant
BuildRequires: jffi
BuildRequires: jnr-x86asm
BuildRequires: objectweb-asm

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

Obsoletes: jaffl < %{version}-%{release}
Provides:  jaffl = %{version}-%{release}
Source44: import.info

%description
An abstracted interface to invoking native functions from java

%package javadoc
Summary:        Javadocs for %{name}
Group:          Development/Java
Requires:       %{name} = %{version}-%{release}
Requires:       jpackage-utils
BuildArch: noarch

%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
sed -i -e 's,-mimpure-text,,g' `find . -name GNUmakefile`

%build
ant

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

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

cp -rp dist/javadoc/* $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-jnr-ffi.pom

#%add_maven_depmap JPP-jnr-ffi.pom jnr-ffi.jar


%files
%{_javadir}/jaffl.jar
%{_javadir}/%{name}.jar
%{_mavendepmapfragdir}/%{name}
%{_mavenpomdir}/*
%doc LICENSE

%files javadoc
%{_javadocdir}/%{name}

%changelog
* Tue Oct 02 2012 Igor Vlasenko <viy@altlinux.ru> 0.5.10-alt2_3jpp7
- gcc47 build

* Sat Apr 07 2012 Igor Vlasenko <viy@altlinux.ru> 0.5.10-alt1_3jpp7
- new version