3 %bcond_without opt # build opt
9 %define ocaml_ver 1:4.02
10 Summary: OCaml module manager
11 Summary(pl.UTF-8): Zarządca modułów OCamla
15 License: distributable
16 Group: Development/Tools
17 Source0: http://download.camlcity.org/download/findlib-%{version}.tar.gz
18 # Source0-md5: 703eae112f9e912507c3a2f8d8c48498
19 Patch0: %{name}-bytes.patch
20 URL: http://www.ocaml-programming.de/packages/
22 BuildRequires: ncurses-devel
23 BuildRequires: ocaml >= %{ocaml_ver}
24 BuildRequires: ocaml-camlp4
25 BuildRequires: ocaml-labltk-devel
26 BuildRequires: sed >= 4.0
28 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
31 The "findlib" library provides a scheme to manage reusable software
32 components (packages), and includes tools that support this scheme.
33 Packages are collections of OCaml modules for which metainformation
36 %description -l pl.UTF-8
37 Biblioteka "findlib" udostępnia metodę zarządzania komponentami
38 oprogramowania (pakietami) oraz zawiera narzędzia, które ową metodę
39 wspierają. Pakiety są kolekcjami modułów w OCamlu, dla których mogą
40 być przechowywane metainformacje.
43 Summary: OCaml module manager
44 Summary(pl.UTF-8): Zarządca modułów OCamla
45 Group: Development/Libraries
46 Requires: %{name} = %{version}-%{release}
49 The "findlib" library provides a scheme to manage reusable software
50 components (packages), and includes tools that support this scheme.
51 Packages are collections of OCaml modules for which metainformation
54 This package includes libraries and compiled interfaces of findlib.
56 %description devel -l pl.UTF-8
57 Biblioteka "findlib" udostępnia metodę zarządzania komponentami
58 oprogramowania (pakietami) oraz zawiera narzędzia, które ową metodę
59 wspierają. Pakiety są kolekcjami modułów w OCamlu, dla których mogą
60 być przechowywane metainformacje.
62 Ten pakiet zawiera biblioteki i skompilowane interfejsy findliba.
65 %setup -q -n findlib-%{version}
72 -config %{_sysconfdir}/ocamlfind.conf \
75 sed -i -e 's/-g//' Makefile
77 %{__make} -j1 all %{?with_opt:opt}
80 rm -rf $RPM_BUILD_ROOT
83 prefix=$RPM_BUILD_ROOT
85 %{__rm} $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib/*.mli
87 # now provided by ocaml-labltk.spec (might not exist if building without ocaml-labltk installed)
88 %{__rm} -rf $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/labltk
89 # now provided by ocaml-dbm.spec (might not exist if building without ocaml-dbm installed)
90 %{__rm} -rf $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/dbm
92 # in PLD only META files are stored in site-lib/pkg
93 sed -i -e 's|/site-lib||' $RPM_BUILD_ROOT%{_libdir}/ocaml/topfind
94 ln -sf topfind $RPM_BUILD_ROOT%{_libdir}/ocaml/ocamlfind
95 %{__mv} $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib \
96 $RPM_BUILD_ROOT%{_libdir}/ocaml/findlib
97 install -d $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib
98 %{__mv} $RPM_BUILD_ROOT%{_libdir}/ocaml/findlib/META \
99 $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib
100 echo 'directory = "+findlib"' >> $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib/META
101 %{__mv} $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/num-top \
102 $RPM_BUILD_ROOT%{_libdir}/ocaml/num-top
103 install -d $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/num-top
104 %{__mv} $RPM_BUILD_ROOT%{_libdir}/ocaml/num-top/META \
105 $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/num-top
106 echo 'directory = "+findlib"' >> $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/num-top/META
108 echo 'ldconf = "ignore"' >> $RPM_BUILD_ROOT%{_sysconfdir}/ocamlfind.conf
110 ln -sf ../stublibs $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/libexec
111 ln -sf ../stublibs $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/stublibs
114 rm -rf $RPM_BUILD_ROOT
117 %defattr(644,root,root,755)
118 %doc doc/README LICENSE doc/*-html
119 %attr(755,root,root) %{_bindir}/ocamlfind
120 %attr(755,root,root) %{_bindir}/safe_camlp4
121 %config %{_sysconfdir}/ocamlfind.conf
122 %dir %{_libdir}/ocaml/findlib
123 %attr(755,root,root) %{_libdir}/ocaml/findlib/make_wizard
124 %{_libdir}/ocaml/findlib/make_wizard.pattern
125 %{_libdir}/ocaml/site-lib/findlib
127 %{_libdir}/ocaml/site-lib/libexec
128 %{_libdir}/ocaml/site-lib/stublibs
129 # META files for base ocaml packages
130 %{_libdir}/ocaml/site-lib/bigarray
131 %{_libdir}/ocaml/site-lib/bytes
132 %{_libdir}/ocaml/site-lib/compiler-libs
133 %{_libdir}/ocaml/site-lib/dynlink
134 %{_libdir}/ocaml/site-lib/graphics
135 %{_libdir}/ocaml/site-lib/num
136 %{_libdir}/ocaml/site-lib/num-top
137 %{_libdir}/ocaml/site-lib/ocamlbuild
138 %{_libdir}/ocaml/site-lib/stdlib
139 %{_libdir}/ocaml/site-lib/str
140 %{_libdir}/ocaml/site-lib/threads
141 %{_libdir}/ocaml/site-lib/unix
142 # camlp4 4.02 doesn't provide its META itself
143 %{_libdir}/ocaml/site-lib/camlp4
144 %{_mandir}/man1/ocamlfind.1*
145 %{_mandir}/man5/META.5*
146 %{_mandir}/man5/findlib.conf.5*
147 %{_mandir}/man5/site-lib.5*
150 %defattr(644,root,root,755)
151 %{_libdir}/ocaml/findlib/Makefile.config
152 %{_libdir}/ocaml/findlib/*.cm[xi]
153 %{_libdir}/ocaml/findlib/*.cma
155 %{_libdir}/ocaml/findlib/*.[ao]
156 %{_libdir}/ocaml/findlib/*.cmxa
158 %dir %{_libdir}/ocaml/num-top
159 %{_libdir}/ocaml/num-top/*.cm[ia]
160 %{_libdir}/ocaml/ocamlfind
161 %{_libdir}/ocaml/topfind