+
+%include /usr/lib/rpm/macros.java
+
+%define jarver 1.1.17
+
Summary: Native Tomcat Connector based on APR
Summary(pl.UTF-8): Natywny Connector Tomcata oparty o APR
Name: tomcat-native
-Version: 1.1.16
-Release: 0.1
-License: Apache
+Version: 1.1.20
+Release: 2
+License: Apache v2
Group: Libraries
Source0: http://www.apache.org/dist/tomcat/tomcat-connectors/native/%{version}/source/%{name}-%{version}-src.tar.gz
+# Source0-md5: fb2b9d073cb6575c2d0020eda266ca0c
URL: http://tomcat.apache.org/native-doc
-BuildRequires: apr-util-devel
+BuildRequires: ant
+BuildRequires: apr-devel
+BuildRequires: autoconf
+BuildRequires: automake
BuildRequires: jdk
+BuildRequires: jpackage-utils
+BuildRequires: libtool
BuildRequires: openssl-devel
-Requires: apr
-Requires: openssl
-Suggests: jre
-Suggests: tomcat
+BuildRequires: rpm >= 4.4.9-56
+BuildRequires: rpm-javaprov
+BuildRequires: rpmbuild(macros) >= 1.300
+BuildConflicts: java-gcj-compat
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
platform rather than simply a backend focused technology.
%description -l pl.UTF-8
+Tomcat może wykorzytać Apache Portable Runtime aby zapewnić najwyższą,
+saklowalność, wydajność i lepszą integrację z natywnymi technologiami
+serwerowymi.
-Tomcat może wykorzytać Apache Portable Runtime aby zapewnić
-najwyższą, saklowalność, wydajność i lepszą integrację z
-natywnymi technologiami serwerowymi.
-
-Apache portable Runtime jest wysoce przenośną biblioteką, która
-jest sercem serwera Apache HTTPD 2.x. APR ma wiele zestosowań, m. in.
+Apache portable Runtime jest wysoce przenośną biblioteką, która jest
+sercem serwera Apache HTTPD 2.x. APR ma wiele zestosowań, m. in.
dostępd do zaawansowanych funkcjonalnośći IO (takich jak sendfile,
epoll i OpenSSL), funkcjonalności posiomu systemu operacyjnego
(generacja liczb losowych, stan systemu, itp.) i natywną obsługę
procesów (współdzielona pamięć, potoki NT i gniazda uniksowe).
Te cechy pozwalają na wykorzystanie Tomcata jako sewera www do
-zastosowań ogólnych, pozwalają na o wiele lepszą integrację z
-innymi natywnymi technologiami www i w ogólności pozwalają na
-traktowanie Javy jako zaawansowanej i kompletnej platformy www s nie
-tylko technologii backendowej.
+zastosowań ogólnych, pozwalają na o wiele lepszą integrację z innymi
+natywnymi technologiami www i w ogólności pozwalają na traktowanie
+Javy jako zaawansowanej i kompletnej platformy www a nie tylko
+technologii backendowej.
%package devel
Summary: Header files for tcnative library
Requires: %{name} = %{version}-%{release}
%description devel
-Header files for tcnative library
+Header files for tcnative library.
%description devel -l pl.UTF-8
-Pliki nag¿ówkowe biblioteki tcnative
+Pliki nagłówkowe biblioteki tcnative.
+
+%package static
+Summary: Static tcnative library
+Summary(pl.UTF-8): Statyczna biblioteka tcnative
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+
+%description static
+Static tcnative library.
+
+%description static -l pl.UTF-8
+Statyczna biblioteka tcnative.
%prep
-%setup -q -n %{name}-%{version}-src/jni/native
+%setup -q -n %{name}-%{version}-src
%build
-%configure \
- --with-apr=%{_bindir} \
- --with-java-home=%{java_home}\
+# build java part
+cd jni
+%ant clean jar
+# build native part
+cd native
+./buildconf --with-apr=%{_datadir}/apr
+%configure \
+ --with-java-home=%{java_home} \
+ --with-apr=/usr
%{__make}
%install
rm -rf $RPM_BUILD_ROOT
-%{__make} install DESTDIR=$RPM_BUILD_ROOT
-# Unpackaged files
-rm -f $RPM_BUILD_ROOT%{_libdir}/tcnative.exp
+cd jni
+install -d $RPM_BUILD_ROOT/%{_javadir}
+install dist/tomcat-native-%{jarver}-dev.jar $RPM_BUILD_ROOT/%{_javadir}/tomcat-native-%{jarver}.jar
+ln -s tomcat-native-%{jarver}.jar $RPM_BUILD_ROOT/%{_javadir}/tomcat-native.jar
+
+cd native
+%{__make} install \
+ prefix=%{_prefix} \
+ DESTDIR=$RPM_BUILD_ROOT
+
+# Why Makefile doesn't do that?
+install -d $RPM_BUILD_ROOT/%{_includedir}
+install include/*.h $RPM_BUILD_ROOT/%{_includedir}
%clean
rm -rf $RPM_BUILD_ROOT
+%post -p /sbin/ldconfig
+%postun -p /sbin/ldconfig
+
%files
%defattr(644,root,root,755)
-#%doc CHANGES LICENSE NOTICE
-%attr(755,root,root) %{_libdir}/libtcnative-1.so*
+%doc CHANGELOG.txt KEYS README.txt
+%{_javadir}/%{name}-%{jarver}.jar
+%{_javadir}/%{name}.jar
+%attr(755,root,root) %{_libdir}/libtcnative-1.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libtcnative-1.so.0
+%{_libdir}/libtcnative-1.so
%files devel
%defattr(644,root,root,755)
-%{_libdir}/libtcnative-1.*a
+%{_libdir}/libtcnative-1.la
%{_pkgconfigdir}/tcnative-1.pc
+%{_includedir}/*.h
+
+%files static
+%defattr(644,root,root,755)
+%{_libdir}/libtcnative-1.a