X-Git-Url: http://git.pld-linux.org/?p=packages%2Focaml-findlib.git;a=blobdiff_plain;f=ocaml-findlib.spec;h=7ab247e9862c7644062115b6e049641e44600bae;hp=acc35fdf669012c7a4ab1366b5755ec63439a784;hb=af05b9c;hpb=da7419170d59b2421c16fd1d58daea3bf915284b diff --git a/ocaml-findlib.spec b/ocaml-findlib.spec index acc35fd..7ab247e 100644 --- a/ocaml-findlib.spec +++ b/ocaml-findlib.spec @@ -1,19 +1,35 @@ -%define ocaml_ver 1:3.09.2 +# +# Conditional build: +%bcond_without opt # build opt + +%ifarch x32 +%undefine with_opt +%endif + +%if !%{with opt} +%define no_install_post_strip 1 +# debug package strips binaries which renders ocamlfind broken +%define _enable_debug_packages 0 +%endif + +%define ocaml_ver 1:4.02 Summary: OCaml module manager Summary(pl.UTF-8): Zarządca modułów OCamla Name: ocaml-findlib -Version: 1.2.1 -Release: 3 +Version: 1.5.5 +Release: 8 License: distributable Group: Development/Tools -Source0: http://www.ocaml-programming.de/packages/findlib-%{version}.tar.gz -# Source0-md5: fa580a4c1fc28c06fe79aa1c98b6ef2d +Source0: http://download.camlcity.org/download/findlib-%{version}.tar.gz +# Source0-md5: 703eae112f9e912507c3a2f8d8c48498 +Patch0: %{name}-bytes.patch URL: http://www.ocaml-programming.de/packages/ BuildRequires: m4 BuildRequires: ncurses-devel BuildRequires: ocaml >= %{ocaml_ver} BuildRequires: ocaml-camlp4 BuildRequires: ocaml-labltk-devel +BuildRequires: sed >= 4.0 %requires_eq ocaml BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) @@ -53,38 +69,52 @@ 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 + -config %{_sysconfdir}/ocamlfind.conf \ + -with-toolbox -sed -e 's/-g//' Makefile > Makefile.tmp -mv -f Makefile.tmp Makefile +sed -i -e 's/-g//' Makefile -%{__make} all opt +%{__make} -j1 all %{?with_opt:opt} %install rm -rf $RPM_BUILD_ROOT -%{__make} install prefix=$RPM_BUILD_ROOT +%{__make} install \ + prefix=$RPM_BUILD_ROOT + +%{__rm} $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib/*.mli -rm -f $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib/*.mli +# now provided by ocaml-labltk.spec (might not exist if building without ocaml-labltk installed) +%{__rm} -rf $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/labltk +# now provided by ocaml-dbm.spec (might not exist if building without ocaml-dbm installed) +%{__rm} -rf $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/dbm # 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 %{_libdir}/ocaml/topfind $RPM_BUILD_ROOT%{_libdir}/ocaml/ocamlfind -rm -f $RPM_BUILD_ROOT%{_libdir}/ocaml/findlib -cp -a $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib \ +ln -sf topfind $RPM_BUILD_ROOT%{_libdir}/ocaml/ocamlfind +%{__mv} $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib \ $RPM_BUILD_ROOT%{_libdir}/ocaml/findlib -rm -f $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib/*.* -rm -f $RPM_BUILD_ROOT%{_libdir}/ocaml/findlib/META -echo 'directory = "+findlib"' >> $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/META +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 -s ../stublibs $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/libexec -ln -s ../stublibs $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/stublibs +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 @@ -92,15 +122,47 @@ rm -rf $RPM_BUILD_ROOT %files %defattr(644,root,root,755) %doc doc/README LICENSE doc/*-html -%attr(755,root,root) %{_bindir}/* +%attr(755,root,root) %{_bindir}/ocamlfind +%attr(755,root,root) %{_bindir}/safe_camlp4 %config %{_sysconfdir}/ocamlfind.conf -%{_libdir}/ocaml/site-lib -%{_mandir}/man[15]/* +%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/bytes +%{_libdir}/ocaml/site-lib/compiler-libs +%{_libdir}/ocaml/site-lib/dynlink +%{_libdir}/ocaml/site-lib/graphics +%{_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 +# camlp4 4.02 doesn't provide its META itself +%{_libdir}/ocaml/site-lib/camlp4 +%{_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) -%dir %{_libdir}/ocaml/findlib -%{_libdir}/ocaml/findlib/*.cm[ixa]* -%{_libdir}/ocaml/findlib/*.a +%{_libdir}/ocaml/findlib/Makefile.config +%{_libdir}/ocaml/findlib/*.cm[xi] +%{_libdir}/ocaml/findlib/*.cma +%if %{with opt} +%{_libdir}/ocaml/findlib/*.[ao] +%{_libdir}/ocaml/findlib/*.cmxa +%{_libdir}/ocaml/findlib/*.cmxs +%endif +%dir %{_libdir}/ocaml/num-top +%{_libdir}/ocaml/num-top/*.cm[ia] %{_libdir}/ocaml/ocamlfind %{_libdir}/ocaml/topfind