Name: java-jna Version: 3.2.7 Release: 2mamba Summary: Pure Java Access to Native libraries Group: Development/Libraries/Java Vendor: openmamba Distribution: openmamba Packager: Silvan Calarco URL: https://jna.dev.java.net/ # svn export https://jna.dev.java.net/svn/jna/tags/3.2.7/jnalib/ --username guest jna-3.2.7 # rm -rf jna-3.2.7/dist/* # tar czf jna-3.2.7-src.tar.gz jna-3.2.7 Source0: jna-%{version}-src.tar.gz #Source1: http://download.java.net/maven/2/net/java/dev/jna/jna/%{version}/jna-%{version}.pom Source1: java-jna-pom.xml Patch0: java-jna-3.2.7-loadlibrary.patch Patch1: java-jna-3.2.4-tests-headless.patch Patch2: java-jna-3.2.7-fix-javadoc.patch Patch3: java-jna-3.2.7-gcj-javadoc.patch Patch4: java-jna-3.2.7-junit.patch Patch5: java-jna-3.2.7-clover.patch License: LGPL BuildRequires: apache-ant BuildRequires: apache-ant-nodeps BuildRequires: java-openjdk BuildRequires: java-junit48 BuildRequires: libX11-devel BuildRequires: libXt-devel ## AUTOBUILDREQ-BEGIN BuildRequires: glibc-devel BuildRequires: jpackage-utils BuildRequires: libffi-devel ## AUTOBUILDREQ-END Requires: jpackage-utils Requires: libffi BuildRoot: %{_tmppath}/%{name}-%{version}-root %description JNA provides Java programs easy access to native shared libraries (DLLs on Windows) without writing anything but Java code. JNA's design aims to provide native access in a natural way with a minimum of effort. No boilerplate or generated code is required. While some attention is paid to performance, correctness and ease of use take priority. %package javadoc Group: Documentation Summary: Javadocs for %{name} Requires: %{name} = %{version} %description javadoc JNA provides Java programs easy access to native shared libraries (DLLs on Windows) without writing anything but Java code. JNA's design aims to provide native access in a natural way with a minimum of effort. No boilerplate or generated code is required. While some attention is paid to performance, correctness and ease of use take priority. This package contains the javadocs for %{name}. %package contrib Group: Documentation Summary: Contrib for %{name} Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release} Obsoletes: %{name}-examples %description contrib JNA provides Java programs easy access to native shared libraries (DLLs on Windows) without writing anything but Java code. JNA's design aims to provide native access in a natural way with a minimum of effort. No boilerplate or generated code is required. While some attention is paid to performance, correctness and ease of use take priority. This package contains the contributed examples for %{name}. %prep %setup -q -n jna-%{version} sed -e 's|@JNIPATH@|%{_libdir}/jna|' %{PATCH0} | patch -p0 %patch1 %patch2 -p1 chmod -Rf a+rX,u+w,g-w,o-w . %patch3 -p1 %patch4 %patch5 cp %{SOURCE1} ./jna-pom.xml # UnloadTest fail during build since we modify class loading rm test/com/sun/jna/JNAUnloadTest.java # https://jna.dev.java.net/issues/show_bug.cgi?id=155 rm test/com/sun/jna/DirectTest.java find . -name '*.jar' -exec rm -f '{}' \; find . -name '*.class' -exec rm -f '{}' \; rm -rf native/libffi sed -i 's/\r//' LICENSE.txt chmod 0644 LICENSE.txt %build export JAVA_HOME=%{_jvmdir}/jdk ant -Dcflags_extra.native="%{optflags}" -Ddynlink.native=true -Dnomixedjar.native=true jar contrib-jars javadoc sed -i "s/VERSION/%{version}/" jna-pom.xml %install [ "%{buildroot}" != / ] && rm -rf "%{buildroot}" mkdir -p %{buildroot}%{_javadir}/jna install -pm 644 build*/jna.jar \ %{buildroot}%{_javadir}/jna-%{version}.jar install -pm 644 contrib/alphamaskdemo/build/demo-alphamask.jar \ %{buildroot}%{_javadir}/jna/demo-alphamask-%{version}.jar install -pm 644 contrib/balloonmanagerdemo/build/demo-balloonmanager.jar \ %{buildroot}%{_javadir}/jna/demo-balloonmanager-%{version}.jar install -pm 644 contrib/balloontips/build/demo-balloontips.jar \ %{buildroot}%{_javadir}/jna/demo-balloontips-%{version}.jar install -pm 644 contrib/dnddemo/build/demo-dnd.jar \ %{buildroot}%{_javadir}/jna/demo-dnd-%{version}.jar install -pm 644 contrib/ntservice/dist/contrib-ntservice.jar \ %{buildroot}%{_javadir}/jna/contrib-ntservice-%{version}.jar install -pm 644 contrib/platform/dist/platform.jar \ %{buildroot}%{_javadir}/jna/platform-%{version}.jar install -pm 644 contrib/shapedwindowdemo/build/demo-shapedwindow.jar \ %{buildroot}%{_javadir}/jna/demo-shapedwindow-%{version}.jar install -pm 644 contrib/w32keyhook/build/demo-w32keyhook.jar \ %{buildroot}%{_javadir}/jna/demo-w32keyhook-%{version}.jar install -pm 644 contrib/x11/build/demo-x11.jar \ %{buildroot}%{_javadir}/jna/demo-x11-%{version}.jar #install -pm 644 build*/examples.jar \ # %{buildroot}%{_javadir}/jna-examples-%{version}.jar mkdir -p %{buildroot}%{_datadir}/maven2/poms install -m 644 jna-pom.xml %{buildroot}%{_datadir}/maven2/poms/JPP.jna.pom %add_to_maven_depmap net.java.dev.jna jna %{version} JPP/ jna ( cd %{buildroot}%{_javadir} for jar in `ls *-%{version}.jar`; do ln -s $jar `echo $jar | sed -e 's/-%{version}//'` done ) ( cd %{buildroot}%{_javadir}/jna for jar in `ls *-%{version}.jar`; do ln -s $jar `echo $jar | sed -e 's/-%{version}//'` done ) %ifarch %{ix86} install -pm 644 build*/linux-i386.jar \ %{buildroot}%{_javadir}/jna/jna-linux-i386-%{version}.jar %endif %ifarch x86_64 install -pm 644 build*/linux-amd64.jar \ %{buildroot}%{_javadir}/jna/jna-linux-amd64-%{version}.jar %endif mkdir -p %{buildroot}%{_libdir}/jna install -m 755 build*/native/libjnidispatch*.so %{buildroot}%{_libdir}/jna/ mkdir -p %{buildroot}%{_javadocdir}/jna-%{version} cp -a doc/javadoc/* %{buildroot}%{_javadocdir}/jna-%{version} %ifarch %{ix86} %check export CLASSPATH=$(build-classpath junit48) ant \ -Dcflags_extra.native="%{optflags}" \ -Ddynlink.native=true \ -Dnomixedjar.native=true \ test %endif %clean [ "%{buildroot}" != / ] && rm -rf "%{buildroot}" %post %update_maven_depmap %postun %update_maven_depmap %files %defattr(-,root,root) %dir %{_libdir}/jna %{_libdir}/jna/libjnidispatch.so %ifarch %{ix86} %{_javadir}/jna/jna-linux-i386-%{version}.jar %endif %ifarch x86_64 %{_javadir}/jna/jna-linux-amd64-%{version}.jar %endif %{_javadir}/jna-%{version}.jar %{_javadir}/jna.jar %{_datadir}/maven2/poms %{_mavendepmapfragdir} %doc LICENSE.txt release-notes.html TODO %files javadoc %defattr(-,root,root) %{_javadocdir}/jna-%{version} %files contrib %defattr(-,root,root) %{_javadir}/jna/demo-alphamask-%{version}.jar %{_javadir}/jna/demo-alphamask.jar %{_javadir}/jna/demo-balloonmanager-%{version}.jar %{_javadir}/jna/demo-balloonmanager.jar %{_javadir}/jna/demo-balloontips-%{version}.jar %{_javadir}/jna/demo-balloontips.jar %{_javadir}/jna/demo-dnd-%{version}.jar %{_javadir}/jna/demo-dnd.jar %{_javadir}/jna/contrib-ntservice-%{version}.jar %{_javadir}/jna/contrib-ntservice.jar %{_javadir}/jna/platform-%{version}.jar %{_javadir}/jna/platform.jar %{_javadir}/jna/demo-shapedwindow-%{version}.jar %{_javadir}/jna/demo-shapedwindow.jar %{_javadir}/jna/demo-w32keyhook-%{version}.jar %{_javadir}/jna/demo-w32keyhook.jar %{_javadir}/jna/demo-x11-%{version}.jar %{_javadir}/jna/demo-x11.jar %changelog * Mon Mar 21 2011 gil 3.2.7-2mamba - rebuilt with java-openjdk support * Sun Jan 09 2011 gil 3.2.7-1mamba - update to 3.2.7 * Thu Nov 04 2010 gil 3.2.4-2mamba - rebuilt devel * Wed May 19 2010 gil 3.2.4-2mamba - added maven pom * Thu Apr 29 2010 gil 3.2.4-1mamba - update to 3.2.4 * Wed Apr 08 2009 gil 3.0.9-1mamba - package created by autospec