Name: wiredtiger Version: 2.5.1 Release: 5%{?dist} Summary: A data storage engine # http://source.wiredtiger.com/develop/license.html License: (GPLv2 or GPLv3) and MIT and BSD URL: http://www.wiredtiger.com/ Source0: https://github.com/wiredtiger/wiredtiger/releases/download/%{version}/%{name}-%{version}.tar.bz2 BuildRequires: libtool BuildRequires: doxygen BuildRequires: swig BuildRequires: java-devel BuildRequires: python2-devel BuildRequires: snappy-devel BuildRequires: zlib-devel Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description WiredTiger is a data storage engine that provides APIs for efficiently storing data in highly concurrent applications. It includes functionality for automatically maintaining indexes. It implements both row and column store formats - so that all types of data can be stored space efficiently. WiredTiger is a library that can be accessed via C, Python and Java APIs. %package libs Summary: The shared libraries provided by WiredTiger %description libs The wiredtiger-libs package provides the WiredTiger shared libraries. %package devel Summary: WiredTiger development files Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description devel The wiredtiger-devel package provides the WiredTiger development files. %package python Summary: Python bindings for WiredTiger Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description python The wiredtiger-python package provides WiredTiger python API. %package java Summary: Java bindings for WiredTiger Requires: %{name}-libs%{?_isa} = %{version}-%{release} Requires: javapackages-tools %description java The wiredtiger-java package provides WiredTiger java API. %prep %autosetup ./autogen.sh # Disable -release for libtool -> disable building libwiredtiger-VERSION.so sed -i -r "s|^(libwiredtiger_la_LDFLAGS =) .*|\1|" Makefile.am # Remove shebang from python modules find lang/python/wiredtiger -name '*.py' -exec sed -i '1{\@^#!/usr/bin/env python@d}' {} \; %build %configure --disable-static \ --with-builtins=zlib,snappy \ --enable-python \ --with-python-prefix=%{buildroot}%{python_sitearch} \ --enable-java JAR="%{java_home}/bin/jar" # Stop the build setting up an rpath sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool make %{?_smp_mflags} CFLAGS="%{optflags}" %install %make_install # Move python files into python_sitearch directory mv %{buildroot}%{python_sitearch}/_%{name}.so %{buildroot}%{python_sitearch}/%{name} # Remove wiredtiger python test files rm %{buildroot}%{python_sitearch}/%{name}/*-test.py* # Put java libs and .jar into right location mkdir %{buildroot}%{_libdir}/%{name} mv %{buildroot}%{_javadir}/%{name}-%{version}/lib* %{buildroot}%{_libdir}/%{name} rm %{buildroot}%{_libdir}/%{name}/lib*.so mkdir -p %{buildroot}%{_jnidir} mv %{buildroot}%{_javadir}/%{name}-%{version}/%{name}.jar %{buildroot}%{_jnidir}/ rmdir %{buildroot}%{_javadir}/%{name}-%{version} # Remove .la files rm -f %{buildroot}%{_libdir}/lib%{name}.la rm -f %{buildroot}%{_libdir}/%{name}/lib%{name}_java.la %post libs -p /sbin/ldconfig %postun libs -p /sbin/ldconfig %post java -p /sbin/ldconfig %postun java -p /sbin/ldconfig %files %{_bindir}/wt %{_mandir}/man1/wt.1.gz %files libs %doc README NEWS %license LICENSE %{_libdir}/lib%{name}.so.* %{_mandir}/man3/%{name}.3.gz %files devel %{_libdir}/lib%{name}.so %{_libdir}/pkgconfig/%{name}.pc %{_includedir}/* %files python %dir %{python_sitearch}/%{name} %{python_sitearch}/%{name}/*.py* %attr(0755, -, -) %{python_sitearch}/%{name}/_%{name}.so %files java %{_libdir}/%{name} %{_jnidir}/%{name}.jar %changelog * Fri Mar 27 2015 Marek Skalicky - 2.5.1-5 - Fixed java and python requires * Wed Mar 25 2015 Marek Skalicky - 2.5.1-4 - Fixed python _wiretiger.so permissions - Use python_sitearch location and with-python-prefix * Mon Mar 23 2015 Marek Skalicky - 2.5.1-3 - Removed python test files - Fixed java JNI location - Add +x permission for .so file * Mon Mar 23 2015 Marek Skalicky - 2.5.1-2 - Fixed package-review issues * Thu Mar 12 2015 Marek Skalicky - 2.5.1-1 - Initial packaging