diff --git a/jna.spec b/jna.spec index b8f0260..3648e76 100644 --- a/jna.spec +++ b/jna.spec @@ -1,6 +1,6 @@ Name: jna Version: 3.2.7 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Pure Java access to native libraries Group: Development/Libraries @@ -21,24 +21,23 @@ Patch1: jna-3.2.5-loadlibrary.patch # and using a complex API like X11 through JNA just increases the potential # for problems. Patch2: jna-3.2.4-tests-headless.patch -Patch3: jna-3.2.7-javadoc.patch +Patch3: jna-3.2.7-javadoc.patch # Build using GCJ javadoc -Patch4: jna-3.2.7-gcj-javadoc.patch +Patch4: jna-3.2.7-gcj-javadoc.patch # junit cames from rpm -Patch5: jna-3.2.5-junit.patch +Patch5: jna-3.2.5-junit.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) # We manually require libffi because find-requires doesn't work # inside jars. -Requires: java >= 1:1.6.0 jpackage-utils libffi +Requires: java >= 1:1.6.0, jpackage-utils, libffi Requires(post): jpackage-utils Requires(postun): jpackage-utils -BuildRequires: java-devel >= 1:1.6.0 ant jpackage-utils ant-nodeps junit4 -BuildRequires: libX11-devel libXt-devel libffi-devel +BuildRequires: java-devel >= 1:1.6.0, jpackage-utils, libffi-devel +BuildRequires: ant, ant-junit, ant-nodeps, ant-trax, junit +BuildRequires: libX11-devel, libXt-devel # for ExcludeArch see bug: 468831 -%if 0%{?rhel} < 6 && 0%{?fedora} < 10 ExcludeArch: ppc ppc64 -%endif %description @@ -64,7 +63,7 @@ This package contains the javadocs for %{name}. Summary: Contrib for %{name} Group: Documentation Requires: %{name} = %{version}-%{release} -Obsoletes: %{name}-examples +Obsoletes: %{name}-examples %description contrib @@ -76,10 +75,17 @@ This package contains the contributed examples for %{name}. sed -e 's|@JNIPATH@|%{_libdir}/%{name}|' %{PATCH1} | patch -p1 %patch2 -p1 -b .tests-headless %patch3 -p1 -b .javadoc +# temporary hach for patch3 on epel5 +chmod -Rf a+rX,u+w,g-w,o-w . %patch4 -p0 -b .gcj-javadoc %patch5 -p1 -b .junit cp %{SOURCE1} ./ +# UnloadTest fail during build since we modify class loading +rm test/com/sun/jna/JNAUnloadTest.java +# current bug: https://jna.dev.java.net/issues/show_bug.cgi?id=155 +rm test/com/sun/jna/DirectTest.java + # all java binaries must be removed from the sources #find . -name '*.jar' -delete rm lib/junit.jar @@ -96,9 +102,9 @@ chmod 0644 LICENSE.txt %build # We pass -Ddynlink.native which comes from our patch because # upstream doesn't want to default to dynamic linking. -ant -Dcflags_extra.native="%{optflags}" -Ddynlink.native=true -Dnomixedjar.native=true jar javadoc +ant -Dcflags_extra.native="%{optflags}" -Ddynlink.native=true -Dnomixedjar.native=true jar contrib-jars javadoc # remove compiled contribs -find contrib -name build -delete || : +find contrib -name build -exec rm -rf {} \; || : sed -i "s/VERSION/%{version}/" %{name}-pom.xml %install @@ -107,26 +113,31 @@ rm -rf %{buildroot} # jars install -D -m 644 build*/%{name}.jar %{buildroot}%{_javadir}/%{name}-%{version}.jar (cd %{buildroot}%{_javadir}/; for jar in `ls *-%{version}.jar`; do ln -s $jar `echo $jar | sed -e 's/-%{version}//'`; done) +install -d -m 755 %{buildroot}%{_javadir}/%{name} +find contrib -name '*.jar' -exec cp {} %{buildroot}%{_javadir}/%{name}/ \; # NOTE: JNA has highly custom code to look for native jars in this # directory. Since this roughly matches the jpackage guidelines, # we'll leave it unchanged. install -d -m 755 %{buildroot}%{_libdir}/%{name} install -m 755 build*/native/libjnidispatch*.so %{buildroot}%{_libdir}/%{name}/ +%if 0%{?fedora} >= 9 || 0%{?rhel} > 5 # install maven pom file install -Dm 644 %{name}-pom.xml %{buildroot}%{_mavenpomdir}/JPP.%{name}.pom # ... and maven depmap %add_to_maven_depmap net.java.dev.jna %{name} %{version} JPP %{name} +%endif # javadocs install -p -d -m 755 %{buildroot}%{_javadocdir}/%{name}-%{version} cp -a doc/javadoc/* %{buildroot}%{_javadocdir}/%{name}-%{version} -%if 0%{?rhel} >= 6 || 0%{?fedora} >= 9 +#if 0%{?rhel} >= 6 || 0%{?fedora} >= 9 +%if 0%{?fedora} >= 9 %check -#ant -Dcflags_extra.native="%{optflags}" -Ddynlink.native=true -Dnomixedjar.native=true test +ant -Dcflags_extra.native="%{optflags}" -Ddynlink.native=true -Dnomixedjar.native=true test %endif @@ -134,22 +145,26 @@ cp -a doc/javadoc/* %{buildroot}%{_javadocdir}/%{name}-%{version} rm -rf %{buildroot} +%if 0%{?fedora} >= 9 || 0%{?rhel} > 5 %post %update_maven_depmap %postun %update_maven_depmap +%endif %files %defattr(-,root,root,-) -%doc LICENSE.txt +%doc LICENSE.txt release-notes.html %{_libdir}/%{name} %{_javadir}/%{name}.jar %{_javadir}/%{name}-%{version}.jar +%if 0%{?fedora} >= 9 || 0%{?rhel} > 5 %{_mavenpomdir}/*.pom %{_mavendepmapfragdir}/%{name} +%endif %files javadoc @@ -159,10 +174,13 @@ rm -rf %{buildroot} %files contrib %defattr(-,root,root,-) -%doc contrib +%{_javadir}/%{name} %changelog +* Sun Aug 1 2010 Levente Farkas - 3.2.7-5 +- reenable test and clean up contrib files + * Tue Jul 27 2010 Levente Farkas - 3.2.7-4 - add Obsoletes for jna-examples