Compare commits

...

4 Commits
rawhide ... f11

Author SHA1 Message Date
Fedora Release Engineering beb09591b3 dist-git conversion 2010-07-29 04:42:17 +00:00
Bill Nottingham 81fe225e38 Fix typo that causes a failure to update the common directory. (releng
#2781)
2009-11-26 01:19:54 +00:00
Richard W.M. Jones 13c0a5ed2e Initial import. 2009-06-04 17:44:00 +00:00
Jason ティビツ 500077a6c4 Initialize branch F-11 for ocaml-ancient 2009-06-04 15:37:16 +00:00
5 changed files with 119 additions and 21 deletions

View File

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
ancient-0.9.0.tar.gz

View File

@ -1,21 +0,0 @@
# Makefile for source rpm: ocaml-ancient
# $Id$
NAME := ocaml-ancient
SPECFILE = $(firstword $(wildcard *.spec))
define find-makefile-common
for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
endef
MAKEFILE_COMMON := $(shell $(find-makefile-common))
ifeq ($(MAKEFILE_COMMON),)
# attept a checkout
define checkout-makefile-common
test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
endef
MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
endif
include $(MAKEFILE_COMMON)

117
ocaml-ancient.spec Normal file
View File

@ -0,0 +1,117 @@
%define opt %(test -x %{_bindir}/ocamlopt && echo 1 || echo 0)
%define debug_package %{nil}
%define ocamllibdir %{_libdir}/ocaml
Name: ocaml-ancient
Version: 0.9.0
Release: 1%{?dist}
Summary: OCaml library for large memory structures and sharing
Group: Development/Libraries
License: LGPLv2+ with exceptions
URL: http://merjis.com/developers/ancient
Source0: http://merjis.com/_file/ancient-%{version}.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: ocaml >= 3.10.0
BuildRequires: ocaml-findlib-devel
BuildRequires: ocaml-ocamldoc
BuildRequires: chrpath
%define _use_internal_dependency_generator 0
%define __find_requires /usr/lib/rpm/ocaml-find-requires.sh
%define __find_provides /usr/lib/rpm/ocaml-find-provides.sh
%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/Libraries
Requires: %{name} = %{version}-%{release}
%description devel
The %{name}-devel package contains libraries and signature files for
developing applications that use %{name}.
%prep
%setup -q -n ancient-%{version}
%build
pushd mmalloc
%configure
make
popd
make CFLAGS='-g -fPIC -Wall -Werror -I%{ocamllibdir} -DOCAML_VERSION_MAJOR=$(OCAML_VERSION_MAJOR) -DOCAML_VERSION_MINOR=$(OCAML_VERSION_MINOR) %{optflags}'
make doc ||:
%install
rm -rf $RPM_BUILD_ROOT
export DESTDIR=$RPM_BUILD_ROOT
export OCAMLFIND_DESTDIR=$RPM_BUILD_ROOT%{_libdir}/ocaml
mkdir -p $RPM_BUILD_ROOT%{_libdir}
mkdir -p $OCAMLFIND_DESTDIR $OCAMLFIND_DESTDIR/stublibs
ocamlfind install ancient ancient.cmi *.mli *.cma ancient.cmx *.cmxa *.a *.so \
mmalloc/*.a META
strip $OCAMLFIND_DESTDIR/stublibs/dll*.so
chrpath --delete $OCAMLFIND_DESTDIR/stublibs/dll*.so
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root,-)
%doc mmalloc/COPYING.LIB
%{_libdir}/ocaml/ancient
%if %opt
%exclude %{_libdir}/ocaml/ancient/*.a
%exclude %{_libdir}/ocaml/ancient/*.cmxa
%exclude %{_libdir}/ocaml/ancient/*.cmx
%endif
%exclude %{_libdir}/ocaml/ancient/*.mli
%{_libdir}/ocaml/stublibs/*.so
%{_libdir}/ocaml/stublibs/*.so.owner
%files devel
%defattr(-,root,root,-)
%doc README.txt html/*
%if %opt
%{_libdir}/ocaml/ancient/*.a
%{_libdir}/ocaml/ancient/*.cmxa
%{_libdir}/ocaml/ancient/*.cmx
%endif
%{_libdir}/ocaml/ancient/*.mli
%changelog
* Tue May 26 2009 Richard W.M. Jones <rjones@redhat.com> - 0.9.0-1
- Initial RPM release.

View File

@ -0,0 +1 @@
a5529e09f3c96247f362b7640e710157 ancient-0.9.0.tar.gz