Sophie

Sophie

distrib > Mageia > 9 > armv7hl > media > core-release-src > by-pkgid > 51bc1ec5d4bf2cda7a3139acfd9086d5 > files > 5

ocaml-ancient-0.9.0-18.mga9.src.rpm

Name:       ocaml-ancient
Version:    0.9.0
Release:    %mkrel 18
Summary:    OCaml library for large memory structures and sharing
License:    LGPL + OCaml linking exception
Group:      Development/OCaml
URL:        http://git.annexia.org/?p=ocaml-ancient.git
Source0:    %{name}-%{version}.tgz
Patch0:     ocaml-ancient-0.9.0-fixgendoc.patch
Patch1:         ancient-0.9.0-use-ocamlopt-g.patch
# Use header_t with OCaml 4.04.0.
Patch2:         ancient-0.9.0-use-header_t.patch
BuildRequires:  ocaml-compiler
BuildRequires:  ocaml-findlib

%description
Ancient is an OCaml module that allows you to use in-memory data
structures which are larger than available memory and so are kept in
swap. If you try this in normal OCaml code, you'll find that the
machine quickly descends into thrashing as the garbage collector
repeatedly iterates over swapped memory structures. This module lets
you break that limitation. Of course the module doesn't work by magic.
If your program tries to access these large structures, they still
need to be swapped back in, but it is suitable for large, sparsely
accessed structures.

Secondly, this module allows you to share those structures between
processes. In this mode, the structures are backed by a disk file, and
any process that has read/write access to that disk file can map that
file in and see the structures.

Developers should read the README.txt file included with the
ocaml-ancient-devel package carefully.

%package    devel
Summary:    Development files for %{name}
Group:      Development/OCaml
Requires:   %{name} = %{version}-%{release}

%description    devel
The %{name}-devel package contains libraries and signature files for
developing applications that use %{name}.

%prep
%setup -q
%autopatch -p1

%build
pushd mmalloc
%configure
%make_build
popd
OCAML_VERSION_MAJOR=`ocaml ocaml_version.ml major`
OCAML_VERSION_MINOR=`ocaml ocaml_version.ml minor`
make ancient.cma ancient.cmxa META \
  CFLAGS="-g -fPIC -Wall -Werror -I%{_libdir}/ocaml \
    -DOCAML_VERSION_MAJOR=$OCAML_VERSION_MAJOR \
    -DOCAML_VERSION_MINOR=$OCAML_VERSION_MINOR"

make doc

%install
make install \
  DESTDIR=%{buildroot} \
  OCAMLLIBDIR=%{_libdir}/ocaml
cp dllancient.so ancient.cmx mmalloc/libmmalloc.a \
  %{buildroot}%{_libdir}/ocaml/ancient/

%files
%doc README.txt
%dir %{_libdir}/ocaml/ancient
%{_libdir}/ocaml/ancient/META
%{_libdir}/ocaml/ancient/ancient.cmi
%{_libdir}/ocaml/ancient/ancient.cma
%{_libdir}/ocaml/ancient/dllancient.so

%files devel
%doc html/
%{_libdir}/ocaml/ancient/ancient.a
%{_libdir}/ocaml/ancient/ancient.cmx
%{_libdir}/ocaml/ancient/ancient.cmxa
%{_libdir}/ocaml/ancient/ancient.mli
%{_libdir}/ocaml/ancient/libancient.a
%{_libdir}/ocaml/ancient/libmmalloc.a


%changelog
* Wed May 18 2022 pterjan <pterjan> 0.9.0-18.mga9
+ Revision: 1858750
- Rebuild for OCaml 4.14

* Tue Mar 29 2022 umeabot <umeabot> 0.9.0-17.mga9
+ Revision: 1832507
- Mageia 9 Mass Rebuild

* Wed Oct 13 2021 tv <tv> 0.9.0-16.mga9
+ Revision: 1750937
- Rebuild for ocaml 4.13.1

* Wed Mar 03 2021 tv <tv> 0.9.0-15.mga9
+ Revision: 1697382
- rebuild for ocaml-4.2-12

* Sun Jan 10 2021 pterjan <pterjan> 0.9.0-14.mga8
+ Revision: 1670426
- Rebuild to generate ocamlx provides

* Fri Feb 28 2020 umeabot <umeabot> 0.9.0-13.mga8
+ Revision: 1551127
- Rebuild for ocaml 4.10.0 final

* Wed Feb 19 2020 umeabot <umeabot> 0.9.0-12.mga8
+ Revision: 1544390
- Mageia 8 Mass Rebuild

* Sun Jan 26 2020 tv <tv> 0.9.0-11.mga8
+ Revision: 1483000
- rebuild for ocaml-4.10

* Tue Oct 23 2018 tv <tv> 0.9.0-10.mga7
+ Revision: 1324023
- rebuild with ocaml-4.07.1

* Mon Oct 22 2018 pterjan <pterjan> 0.9.0-9.mga7
+ Revision: 1323719
- Rebuild for ocaml 4.07

* Sun Sep 23 2018 umeabot <umeabot> 0.9.0-8.mga7
+ Revision: 1299830
- Mageia 7 Mass Rebuild

* Tue Dec 05 2017 tv <tv> 0.9.0-7.mga7
+ Revision: 1181346
- fix build with ocaml 4.06
- rebuild for new ocaml

* Sun Sep 25 2016 pterjan <pterjan> 0.9.0-6.mga6
+ Revision: 1056221
- Rebuild for fix in ocaml

* Wed Feb 10 2016 pterjan <pterjan> 0.9.0-5.mga6
+ Revision: 953010
- Rebuild for new ocaml

* Wed Oct 15 2014 umeabot <umeabot> 0.9.0-4.mga5
+ Revision: 745255
- Second Mageia 5 Mass Rebuild

* Tue Sep 16 2014 umeabot <umeabot> 0.9.0-3.mga5
+ Revision: 682975
- Mageia 5 Mass Rebuild

* Fri Oct 18 2013 umeabot <umeabot> 0.9.0-2.mga4
+ Revision: 522369
- Mageia 4 Mass Rebuild

* Tue Feb 26 2013 blue_prawn <blue_prawn> 0.9.0-1.mga3
+ Revision: 400421
- build requires findlib
- imported package ocaml-ancient