3 %bcond_without ocaml_opt # build opt
4 %bcond_without tk # build without tk support
6 %ifnarch %{ix86} %{x8664} %{arm} aarch64 ppc sparc sparcv9
7 %undefine with_ocaml_opt
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: 24047dd8a0da5322253de9b7aa254e42
19 URL: http://projects.camlcity.org/projects/findlib.html
21 BuildRequires: ncurses-devel
22 BuildRequires: ocaml >= 1:4.04
23 BuildRequires: ocaml-camlp4
24 %{?with_tk:BuildRequires: ocaml-labltk-devel}
25 BuildRequires: ocaml-ocamldoc-devel
26 BuildRequires: sed >= 4.0
28 Conflicts: ocaml-curses < 1.0.3-13
29 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
31 %if %{without ocaml_opt}
32 %define no_install_post_strip 1
33 # debug package strips binaries which renders ocamlfind broken
34 %define _enable_debug_packages 0
38 The "findlib" library provides a scheme to manage reusable software
39 components (packages), and includes tools that support this scheme.
40 Packages are collections of OCaml modules for which metainformation
43 %description -l pl.UTF-8
44 Biblioteka "findlib" udostępnia metodę zarządzania komponentami
45 oprogramowania (pakietami) oraz zawiera narzędzia, które ową metodę
46 wspierają. Pakiety są kolekcjami modułów w OCamlu, dla których mogą
47 być przechowywane metainformacje.
50 Summary: OCaml module manager
51 Summary(pl.UTF-8): Zarządca modułów OCamla
52 Group: Development/Libraries
53 Requires: %{name} = %{version}-%{release}
56 The "findlib" library provides a scheme to manage reusable software
57 components (packages), and includes tools that support this scheme.
58 Packages are collections of OCaml modules for which metainformation
61 This package includes libraries and compiled interfaces of findlib.
63 %description devel -l pl.UTF-8
64 Biblioteka "findlib" udostępnia metodę zarządzania komponentami
65 oprogramowania (pakietami) oraz zawiera narzędzia, które ową metodę
66 wspierają. Pakiety są kolekcjami modułów w OCamlu, dla których mogą
67 być przechowywane metainformacje.
69 Ten pakiet zawiera biblioteki i skompilowane interfejsy findliba.
72 %setup -q -n findlib-%{version}
78 -config %{_sysconfdir}/ocamlfind.conf \
79 -sitelib %{_libdir}/ocaml \
82 sed -i -e 's/-g//' Makefile
84 %{__make} -j1 all %{?with_ocaml_opt:opt}
87 rm -rf $RPM_BUILD_ROOT
90 prefix=$RPM_BUILD_ROOT
92 %{__rm} $RPM_BUILD_ROOT%{_libdir}/ocaml/findlib/*.mli
94 # now provided by ocaml-dbm.spec (might not exist if building without ocaml-dbm installed)
95 %{__rm} -rf $RPM_BUILD_ROOT%{_libdir}/ocaml/dbm
96 # now provided by ocaml-labltk.spec (might not exist if building without ocaml-labltk installed)
97 %{__rm} -rf $RPM_BUILD_ROOT%{_libdir}/ocaml/labltk
98 # now provided by ocaml-ocamlbuild.spec (might not exist if building without ocaml-ocamlbuild installed)
99 %{__rm} -rf $RPM_BUILD_ROOT%{_libdir}/ocaml/ocamlbuild
101 ln -sf topfind $RPM_BUILD_ROOT%{_libdir}/ocaml/ocamlfind
103 echo 'ldconf = "ignore"' >> $RPM_BUILD_ROOT%{_sysconfdir}/ocamlfind.conf
106 rm -rf $RPM_BUILD_ROOT
109 %defattr(644,root,root,755)
110 %doc doc/README LICENSE doc/*-html
111 %attr(755,root,root) %{_bindir}/ocamlfind
112 %attr(755,root,root) %{_bindir}/safe_camlp4
113 %config %{_sysconfdir}/ocamlfind.conf
114 %dir %{_libdir}/ocaml/findlib
116 %attr(755,root,root) %{_libdir}/ocaml/findlib/make_wizard
117 %{_libdir}/ocaml/findlib/make_wizard.pattern
119 %{_libdir}/ocaml/findlib/META
120 %{_libdir}/ocaml/findlib/Makefile.config
121 %{_libdir}/ocaml/findlib/Makefile.packages
122 %{_libdir}/ocaml/findlib/findlib.cma
123 %{_libdir}/ocaml/findlib/findlib_dynload.cma
124 %{_libdir}/ocaml/findlib/findlib_top.cma
125 %if %{with ocaml_opt}
126 %attr(755,root,root) %{_libdir}/ocaml/findlib/findlib.cmxs
127 %attr(755,root,root) %{_libdir}/ocaml/findlib/findlib_dynload.cmxs
128 %attr(755,root,root) %{_libdir}/ocaml/findlib/findlib_top.cmxs
130 # META files for base ocaml packages
131 %{_libdir}/ocaml/bigarray
132 %{_libdir}/ocaml/bytes
133 %{_libdir}/ocaml/compiler-libs
134 %{_libdir}/ocaml/dynlink
135 %{_libdir}/ocaml/ocamldoc
136 %{_libdir}/ocaml/stdlib
138 %{_libdir}/ocaml/threads
139 %{_libdir}/ocaml/unix
140 # camlp4 4.02 doesn't provide its META itself
141 %{_libdir}/ocaml/camlp4
142 %{_mandir}/man1/ocamlfind.1*
143 %{_mandir}/man5/META.5*
144 %{_mandir}/man5/findlib.conf.5*
145 %{_mandir}/man5/site-lib.5*
148 %defattr(644,root,root,755)
149 %{_libdir}/ocaml/findlib/findlib.cmi
150 %{_libdir}/ocaml/findlib/findlib_config.cmi
151 %{_libdir}/ocaml/findlib/findlib_config.ml
152 %{_libdir}/ocaml/findlib/fl_*.cmi
153 %{_libdir}/ocaml/findlib/ocaml_args.cmi
154 %{_libdir}/ocaml/findlib/topfind.cmi
155 %if %{with ocaml_opt}
156 %{_libdir}/ocaml/findlib/findlib.a
157 %{_libdir}/ocaml/findlib/findlib.cmxa
158 %{_libdir}/ocaml/findlib/findlib_dynload.a
159 %{_libdir}/ocaml/findlib/findlib_dynload.cmxa
160 %{_libdir}/ocaml/findlib/findlib_top.a
161 %{_libdir}/ocaml/findlib/findlib_top.cmxa
163 %{_libdir}/ocaml/ocamlfind
164 %{_libdir}/ocaml/topfind