ocaml-findlib/ocaml-findlib.spec

262 lines
7.6 KiB
RPMSpec

#
# spec file for package ocaml-findlib
#
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2010-2011 Andrew Psaltis <ampsaltis at gmail dot com>
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Version: 1.6.2
Release: 0
%{ocaml_preserve_bytecode}
Name: ocaml-findlib
Summary: Objective CAML package manager and build helper
License: MIT
Group: Development/Libraries/Other
Url: http://projects.camlcity.org/projects/findlib.html
Source0: findlib-%{version}.tar.xz
Patch0: findlib-1.3.3.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
# ocaml autodep start for pkg: ocaml-findlib
# hardcoded rpm dependency for pre 12.1 to compensate for lack of ocaml() provides/requires
%if 0%{?suse_version} < 1210
Requires: ocaml-compiler-libs
Requires: ocaml-runtime
%endif
# ocaml autodep end for pkg: ocaml-findlib
Provides: ocamlfind = %{version}
BuildRequires: gawk
BuildRequires: m4
BuildRequires: ncurses-devel
BuildRequires: ocaml >= 4.02.0
BuildRequires: ocaml-camlp4-devel >= 4.02.0
BuildRequires: ocaml-ocamlbuild
BuildRequires: ocaml-ocamldoc
BuildRequires: ocaml-rpm-macros >= 4.02.1
%description
Findlib is a library manager for Objective Caml. It provides a
convention how to store libraries, and a file format ("META") to
describe the properties of libraries. There is also a tool (ocamlfind)
for interpreting the META files, so that it is very easy to use
libraries in programs and scripts.
%package devel
Summary: Development files for ocaml-findlib
Group: Development/Libraries/Other
Requires: %{name} = %{version}-%{release}
%description devel
The ocaml-findlib-devel package contains libraries and signature files
for developing applications that use ocaml-findlib.
%package bigarray
Summary: Development files for ocaml-findlib
Group: Development/Libraries/Other
Requires: ocaml-runtime
%description bigarray
The ocaml-findlib-bigarray contains signature files for developing applications that use bigarray
%files bigarray
%defattr(-,root,root,-)
%dir %{_libdir}/ocaml/bigarray
%{_libdir}/ocaml/bigarray/META
%package bytes
Summary: Development files for ocaml-findlib
Group: Development/Libraries/Other
%description bytes
The ocaml-findlib-bytes contains signature files for developing applications that use bytes
%files bytes
%defattr(-,root,root,-)
%dir %{_libdir}/ocaml/bytes
%{_libdir}/ocaml/bytes/META
%package camlp4
Summary: Development files for ocaml-findlib
Group: Development/Libraries/Other
Requires: ocaml-camlp4-devel
%description camlp4
The ocaml-findlib-camlp4 contains signature files for developing applications that use camlp4
%files camlp4
%defattr(-,root,root,-)
%dir %{_libdir}/ocaml/camlp4
%{_libdir}/ocaml/camlp4/META
%package compiler-libs
Summary: Development files for ocaml-findlib
Group: Development/Libraries/Other
Requires: ocaml-compiler-libs
%description compiler-libs
The ocaml-findlib-compiler-libs contains signature files for developing applications that use compiler-libs
%files compiler-libs
%defattr(-,root,root,-)
%dir %{_libdir}/ocaml/compiler-libs
%{_libdir}/ocaml/compiler-libs/META
%package dynlink
Summary: Development files for ocaml-findlib
Group: Development/Libraries/Other
Requires: ocaml-runtime
%description dynlink
The ocaml-findlib-dynlink contains signature files for developing applications that use dynlink
%files dynlink
%defattr(-,root,root,-)
%dir %{_libdir}/ocaml/dynlink
%{_libdir}/ocaml/dynlink/META
%package graphics
Summary: Development files for ocaml-findlib
Group: Development/Libraries/Other
Requires: ocaml-runtime
%description graphics
The ocaml-findlib-graphics contains signature files for developing applications that use graphics
%files graphics
%defattr(-,root,root,-)
%dir %{_libdir}/ocaml/graphics
%{_libdir}/ocaml/graphics/META
%package num
Summary: Development files for ocaml-findlib
Group: Development/Libraries/Other
Requires: ocaml-runtime
%description num
The ocaml-findlib-num contains signature files for developing applications that use num
%files num
%defattr(-,root,root,-)
%dir %{_libdir}/ocaml/num
%{_libdir}/ocaml/num/META
%package ocamldoc
Summary: Development files for ocaml-findlib
Group: Development/Libraries/Other
%description ocamldoc
The ocaml-findlib-ocamldoc contains signature files for developing applications that use ocamldoc
%files ocamldoc
%defattr(-,root,root,-)
%dir %{_libdir}/ocaml/ocamldoc
%{_libdir}/ocaml/ocamldoc/META
%package stdlib
Summary: Development files for ocaml-findlib
Group: Development/Libraries/Other
%description stdlib
The ocaml-findlib-stdlib contains signature files for developing applications that use stdlib
%files stdlib
%defattr(-,root,root,-)
%dir %{_libdir}/ocaml/stdlib
%{_libdir}/ocaml/stdlib/META
%package str
Summary: Development files for ocaml-findlib
Group: Development/Libraries/Other
Requires: ocaml-runtime
%description str
The ocaml-findlib-str contains signature files for developing applications that use str
%files str
%defattr(-,root,root,-)
%dir %{_libdir}/ocaml/str
%{_libdir}/ocaml/str/META
%package threads
Summary: Development files for ocaml-findlib
Group: Development/Libraries/Other
Requires: ocaml-runtime
%description threads
The ocaml-findlib-threads contains signature files for developing applications that use threads
%files threads
%defattr(-,root,root,-)
%dir %{_libdir}/ocaml/threads
%{_libdir}/ocaml/threads/META
%package unix
Summary: Development files for ocaml-findlib
Group: Development/Libraries/Other
Requires: ocaml-runtime
%description unix
The ocaml-findlib-unix contains signature files for developing applications that use unix
%files unix
%defattr(-,root,root,-)
%dir %{_libdir}/ocaml/unix
%{_libdir}/ocaml/unix/META
%prep
%setup -q -n findlib-%{version}
%patch0 -p1
%build
(cd tools/extract_args && make)
tools/extract_args/extract_args -o src/findlib/ocaml_args.ml ocamlc ocamlcp ocamlmktop ocamlopt ocamldep ocamldoc ||:
./configure -config %{_sysconfdir}/ocamlfind.conf \
-bindir %{_bindir} \
-sitelib `ocamlc -where` \
-mandir %{_mandir} \
-with-toolbox
make all
%if %{ocaml_native_compiler}
make opt
%endif
rm doc/guide-html/TIMESTAMP
%install
make install DESTDIR=$RPM_BUILD_ROOT
rm -rfv $RPM_BUILD_ROOT%{_libdir}/ocaml/ocamlbuild
%files
%defattr(-,root,root,-)
%doc LICENSE doc/README
%config(noreplace) %{_sysconfdir}/ocamlfind.conf
%{_bindir}/*
%{_mandir}/man?/*
#
%{_libdir}/ocaml/topfind
%dir %{_libdir}/ocaml/findlib
%if %{ocaml_native_compiler}
%{_libdir}/ocaml/*/*.cmxs
%endif
%files devel
%defattr(-,root,root,-)
%doc LICENSE doc/README doc/guide-html
%{_libdir}/ocaml/*/Makefile.config
#
%dir %{_libdir}/ocaml/findlib
%dir %{_libdir}/ocaml/num-top
%{_libdir}/ocaml/findlib/META
%{_libdir}/ocaml/num-top/META
%if %{ocaml_native_compiler}
%{_libdir}/ocaml/*/*.a
%{_libdir}/ocaml/*/*.cmxa
%endif
%{_libdir}/ocaml/*/*.cma
%{_libdir}/ocaml/*/*.cmi
%{_libdir}/ocaml/*/*.mli
%changelog