%global opt %(test -x %{_bindir}/ocamlopt && echo 1 || echo 0) %global debug_package %{nil} %global _use_internal_dependency_generator 0 %global __find_requires /usr/lib/rpm/ocaml-find-requires.sh %global __find_provides /usr/lib/rpm/ocaml-find-provides.sh %define libname %(echo %{name} | sed -e 's/^ocaml-//') Name: ocaml-biniou Version: 1.0.9 Release: 1%{?dist} Summary: Safe and fast binary data format License: BSD URL: http://mjambon.com/biniou.html Source0: http://mjambon.com/releases/biniou/biniou-%{version}.tar.gz Patch0: %{libname}-1.0.9-destdir.patch BuildRequires: ocaml >= 3.10.0 BuildRequires: ocaml-findlib-devel BuildRequires: ocaml-easy-format-devel BuildRequires: ocaml-ocamldoc %description Biniou (pronounced "be new") is a binary data format designed for speed, safety, ease of use and backward compatibility as protocols evolve. Biniou is vastly equivalent to JSON in terms of functionality but allows implementations several times faster (4 times faster than yojson), with 25-35% space savings. Biniou data can be decoded into human-readable form without knowledge of type definitions except for field and variant names which are represented by 31-bit hashes. A program named bdump is provided for routine visualization of biniou data files. The program atdgen can be used to derive OCaml-Biniou serializers and deserializers from type definitions. %package devel Summary: Development files for %{name} Requires: %{name} = %{version}-%{release} %description devel The %{name}-devel package contains libraries and signature files for developing applications that use %{name}. %prep %setup -q -n %{libname}-%{version} %patch0 -p1 -b .destdir %build # You may need a %%configure step here (or ./configure if it doesn't work). make %if %opt make opt %endif %install rm -rf $RPM_BUILD_ROOT # These rules work if the library uses 'ocamlfind install' to install itself. export DESTDIR=$RPM_BUILD_ROOT export OCAMLFIND_DESTDIR=$RPM_BUILD_ROOT%{_libdir}/ocaml mkdir -p $RPM_BUILD_ROOT%{_bindir} mkdir -p $OCAMLFIND_DESTDIR make install strip $RPM_BUILD_ROOT%{_bindir}/bdump strip $OCAMLFIND_DESTDIR/%{libname}/*.cmxs %files %doc LICENSE %{_bindir}/bdump %{_libdir}/ocaml/%{libname}/ %if %opt %exclude %{_libdir}/ocaml/*/*.a %exclude %{_libdir}/ocaml/*/*.cmxa %exclude %{_libdir}/ocaml/*/*.cmx %endif %exclude %{_libdir}/ocaml/*/*.mli %exclude %{_libdir}/ocaml/*/*.o %files devel %doc LICENSE README.md Changes %if %opt %{_libdir}/ocaml/*/*.a %{_libdir}/ocaml/*/*.cmxa %{_libdir}/ocaml/*/*.cmx %endif %{_libdir}/ocaml/*/*.mli %{_libdir}/ocaml/*/*.o %changelog * Mon Jan 20 2014 Michel Salim - 1.0.9-1 - Initial package