%define ocaml_ver 1:3.09.2 Summary: OCaml module manager Summary(pl.UTF-8): Zarządca modułów OCamla Name: ocaml-findlib Version: 1.5.3 Release: 1 License: distributable Group: Development/Tools Source0: http://download.camlcity.org/download/findlib-%{version}.tar.gz # Source0-md5: 687b9dfee7d9d380d2eabe62bab67f09 Patch0: %{name}-bytes.patch URL: http://www.ocaml-programming.de/packages/ BuildRequires: m4 BuildRequires: ncurses-devel BuildRequires: ocaml >= %{ocaml_ver} BuildRequires: ocaml-bytes-devel BuildRequires: ocaml-camlp4 BuildRequires: ocaml-labltk-devel BuildRequires: sed >= 4.0 %requires_eq ocaml BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %description The "findlib" library provides a scheme to manage reusable software components (packages), and includes tools that support this scheme. Packages are collections of OCaml modules for which metainformation can be stored. %description -l pl.UTF-8 Biblioteka "findlib" udostępnia metodę zarządzania komponentami oprogramowania (pakietami) oraz zawiera narzędzia, które ową metodę wspierają. Pakiety są kolekcjami modułów w OCamlu, dla których mogą być przechowywane metainformacje. %package devel Summary: OCaml module manager Summary(pl.UTF-8): Zarządca modułów OCamla Group: Development/Libraries Requires: %{name} = %{version}-%{release} Requires: ocaml-bytes-devel %description devel The "findlib" library provides a scheme to manage reusable software components (packages), and includes tools that support this scheme. Packages are collections of OCaml modules for which metainformation can be stored. This package includes libraries and compiled interfaces of findlib. %description devel -l pl.UTF-8 Biblioteka "findlib" udostępnia metodę zarządzania komponentami oprogramowania (pakietami) oraz zawiera narzędzia, które ową metodę wspierają. Pakiety są kolekcjami modułów w OCamlu, dla których mogą być przechowywane metainformacje. Ten pakiet zawiera biblioteki i skompilowane interfejsy findliba. %prep %setup -q -n findlib-%{version} %patch0 -p1 %build ./configure \ -bindir %{_bindir} \ -mandir %{_mandir} \ -config %{_sysconfdir}/ocamlfind.conf \ -with-toolbox sed -i -e 's/-g//' Makefile %{__make} -j1 all opt %install rm -rf $RPM_BUILD_ROOT %{__make} install \ prefix=$RPM_BUILD_ROOT %{__rm} $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib/*.mli # fake, the real one is already provided by ocaml-bytes %{__rm} $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/bytes/META # in PLD only META files are stored in site-lib/pkg sed -i -e 's|/site-lib||' $RPM_BUILD_ROOT%{_libdir}/ocaml/topfind ln -sf topfind $RPM_BUILD_ROOT%{_libdir}/ocaml/ocamlfind %{__mv} $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib \ $RPM_BUILD_ROOT%{_libdir}/ocaml/findlib install -d $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib %{__mv} $RPM_BUILD_ROOT%{_libdir}/ocaml/findlib/META \ $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib echo 'directory = "+findlib"' >> $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib/META %{__mv} $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/num-top \ $RPM_BUILD_ROOT%{_libdir}/ocaml/num-top install -d $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/num-top %{__mv} $RPM_BUILD_ROOT%{_libdir}/ocaml/num-top/META \ $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/num-top echo 'directory = "+findlib"' >> $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/num-top/META echo 'ldconf = "ignore"' >> $RPM_BUILD_ROOT%{_sysconfdir}/ocamlfind.conf ln -sf ../stublibs $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/libexec ln -sf ../stublibs $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/stublibs %clean rm -rf $RPM_BUILD_ROOT %files %defattr(644,root,root,755) %doc doc/README LICENSE doc/*-html %attr(755,root,root) %{_bindir}/ocamlfind %attr(755,root,root) %{_bindir}/safe_camlp4 %config %{_sysconfdir}/ocamlfind.conf %dir %{_libdir}/ocaml/findlib %attr(755,root,root) %{_libdir}/ocaml/findlib/make_wizard %{_libdir}/ocaml/findlib/make_wizard.pattern %{_libdir}/ocaml/site-lib/findlib # symlinks %{_libdir}/ocaml/site-lib/libexec %{_libdir}/ocaml/site-lib/stublibs # META files for base ocaml packages %{_libdir}/ocaml/site-lib/bigarray %{_libdir}/ocaml/site-lib/camlp4 %{_libdir}/ocaml/site-lib/dbm %{_libdir}/ocaml/site-lib/dynlink %{_libdir}/ocaml/site-lib/graphics %{_libdir}/ocaml/site-lib/labltk %{_libdir}/ocaml/site-lib/num %{_libdir}/ocaml/site-lib/num-top %{_libdir}/ocaml/site-lib/ocamlbuild %{_libdir}/ocaml/site-lib/stdlib %{_libdir}/ocaml/site-lib/str %{_libdir}/ocaml/site-lib/threads %{_libdir}/ocaml/site-lib/unix %{_mandir}/man1/ocamlfind.1* %{_mandir}/man5/META.5* %{_mandir}/man5/findlib.conf.5* %{_mandir}/man5/site-lib.5* %files devel %defattr(644,root,root,755) %{_libdir}/ocaml/findlib/Makefile.config %{_libdir}/ocaml/findlib/*.cm[ixa]* %{_libdir}/ocaml/findlib/*.a %dir %{_libdir}/ocaml/num-top %{_libdir}/ocaml/num-top/*.cm[ia] %{_libdir}/ocaml/ocamlfind %{_libdir}/ocaml/topfind