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