]> git.pld-linux.org Git - packages/ocaml-findlib.git/blobdiff - ocaml-findlib.spec
- unify ocaml_opt bcond name
[packages/ocaml-findlib.git] / ocaml-findlib.spec
index f590db01468b52dd658d9928114ca3e1b43420b0..505f5b43ac7ba0c6919de5a4931ea0765bda1496 100644 (file)
@@ -1,13 +1,22 @@
-%define                ocaml_ver       1:3.09.2
+#
+# Conditional build:
+%bcond_without ocaml_opt               # build opt
+
+%ifnarch %{ix86} %{x8664} arm aarch64 ppc sparc sparcv9 
+%undefine      with_ocaml_opt
+%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.3.3
-Release:       2
+Version:       1.5.5
+Release:       9
 License:       distributable
 Group:         Development/Tools
 Source0:       http://download.camlcity.org/download/findlib-%{version}.tar.gz
-# Source0-md5: a4c22ad5e0d38367a73cf58a25fcbebd
+# Source0-md5: 703eae112f9e912507c3a2f8d8c48498
+Patch0:                %{name}-bytes.patch
 URL:           http://www.ocaml-programming.de/packages/
 BuildRequires: m4
 BuildRequires: ncurses-devel
@@ -18,6 +27,12 @@ BuildRequires:       sed >= 4.0
 %requires_eq   ocaml
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
+%if %{without ocaml_opt}
+%define                no_install_post_strip   1
+# debug package strips binaries which renders ocamlfind broken
+%define                _enable_debug_packages  0
+%endif
+
 %description
 The "findlib" library provides a scheme to manage reusable software
 components (packages), and includes tools that support this scheme.
@@ -54,16 +69,18 @@ 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 -i -e 's/-g//' Makefile
 
-%{__make} -j1 all opt
+%{__make} -j1 all %{?with_ocaml_opt:opt}
 
 %install
 rm -rf $RPM_BUILD_ROOT
@@ -73,18 +90,31 @@ rm -rf $RPM_BUILD_ROOT
 
 %{__rm} $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
-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} $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib/*.*
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/ocaml/findlib/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
@@ -95,7 +125,28 @@ rm -rf $RPM_BUILD_ROOT
 %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/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*
@@ -103,8 +154,15 @@ rm -rf $RPM_BUILD_ROOT
 
 %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 ocaml_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
This page took 0.061276 seconds and 4 git commands to generate.