X-Git-Url: http://git.pld-linux.org/?p=packages%2Focaml-fuse.git;a=blobdiff_plain;f=ocaml-fuse.spec;h=5bbe3c671f8913aa360586ed4e2bef23e962a791;hp=22296fa28af7d2efb0373bcaf90da540542ddc29;hb=HEAD;hpb=217a5043c343af570f00bb881c96d3c9f1bd6b6a diff --git a/ocaml-fuse.spec b/ocaml-fuse.spec index 22296fa..5bbe3c6 100644 --- a/ocaml-fuse.spec +++ b/ocaml-fuse.spec @@ -1,112 +1,123 @@ # # Conditional build: -%bcond_without ocaml_opt # skip building native optimized binaries (bytecode is always built) +%bcond_without ocaml_opt # native optimized binaries (bytecode is always built) # not yet available on x32 (ocaml 4.02.1), remove when upstream will support it -%ifnarch %{ix86} %{x8664} arm aarch64 ppc sparc sparcv9 +%ifnarch %{ix86} %{x8664} %{arm} aarch64 ppc sparc sparcv9 %undefine with_ocaml_opt %endif -%define modname Fuse -Summary: %{modname} binding for OCaml -Summary(pl.UTF-8): Wiązania %{modname} dla OCamla +%define module ocamlfuse +Summary: Fuse binding for OCaml +Summary(pl.UTF-8): Wiązania Fuse dla OCamla Name: ocaml-fuse -Version: 2.7 -Release: 6 +Version: 2.7.1 +Release: 5 License: GPL v2 Group: Libraries -Source0: http://downloads.sourceforge.net/ocamlfuse/ocamlfuse-%{version}-1.tar.gz -# Source0-md5: cb9cbe4fafb36ead1b78faaacc26f3e3 -URL: http://sourceforge.net/apps/mediawiki/ocamlfuse/ -BuildRequires: libfuse-devel -BuildRequires: ocaml >= 3.08 +#Source0Download: https://github.com/astrada/ocamlfuse/releases +Source0: https://github.com/astrada/ocamlfuse/archive/v%{version}_cvs7/ocamlfuse-%{version}-7.tar.gz +# Source0-md5: a5da871a0983b6723c6b9b735898fe34 +Patch0: no-wrapped.patch +URL: https://github.com/astrada/ocamlfuse +BuildRequires: libfuse-devel >= 2.7 +BuildRequires: ocaml >= 1:4.02.3 +BuildRequires: ocaml-dune >= 1.6 BuildRequires: ocaml-findlib >= 1.4 BuildRequires: ocaml-idl-devel >= 1.0.5 +BuildRequires: pkgconfig %requires_eq ocaml-runtime +Requires: libfuse >= 2.7 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define debug_package %{nil} %description OcamlFuse is a binding to the high-level part of the fuse library, -allowing you to implement linux filesystems in OCaml. Other operating -systems are not supported, if you think you can help we will be glad -to hear. +allowing you to implement Linux filesystems in OCaml. The main features of ocamlfuse are: - Multithreading: each callback runs in a separate ocaml thread, so that a slow call can't block the filesystem - Efficiency: read and write operations use the bigarray library - achieving very high troughput _ Ease of use: the fusexmp filesystem - (mimicking bindfs) is 73 lines of code, including in-memory extended - attributes using a hash table. The hello example is 42 lines of code. + achieving very high troughput +- Ease of use: the fusexmp filesystem (mimicking bindfs) is 73 lines + of code, including in-memory extended attributes using a hash table. + The hello example is 42 lines of code. %description -l pl.UTF-8 -Pakiet ten zawiera binaria potrzebne do uruchamiania programów -używających tej biblioteki. +OcamlFuse to wiązania do wysokopoziomowej części biblioteki fuse, +pozwalające implementować linuksowe systemy plików w OCamlu. + +Główne cechy ocamlfuse to: +- wielowątkowość: każde wywołanie zwrotne działa w osobnym wątku + OCamla, więc powolne wywołanie nie zablokuje systemu plików +- wydajność: operacje odczytu i zapisu wykorzystują bibliotekę + bigarray, osiągając dużą przepustowość +- łatwość użycia: system plików fusexmp (naśladujący bindfs) ma + jedynie 73 linie kodu, włącznie z rozszerzonymi atrybutami w + pamięci, wykorzystującymi tablicę haszującą; przykład "hello + world" ma 42 linie kodu. %package devel Summary: ocamlfuse binding for OCaml - development part -Summary(pl.UTF-8): Wiązania ocamlfuse dla OCamla - cześć programistyczna +Summary(pl.UTF-8): Wiązania ocamlfuse dla OCamla - część programistyczna Group: Development/Libraries Requires: %{name} = %{version}-%{release} %requires_eq ocaml -Requires: libfuse-devel +Requires: libfuse-devel >= 2.7 Requires: ocaml-idl-devel >= 1.0.5 %description devel This package contains files needed to develop OCaml programs using -this library. +Fuse library. %description devel -l pl.UTF-8 -Pakiet ten zawiera pliki niezbędne do tworzenia programów używających -tej biblioteki. +Pakiet ten zawiera pliki niezbędne do tworzenia programów w OCamlu, +używających biblioteki Fuse. %prep -%setup -qc -mv ocamlfuse/* . +%setup -q -n ocamlfuse-2.7.1_cvs7 +%patch0 -p1 %build -%{__make} -j1 -C lib \ - byte-code-library \ - %{?with_ocaml_opt:native-code-library} \ - PACKS=camlidl \ - CC="%{__cc} %{rpmcflags} -fPIC" +%{__make} %install rm -rf $RPM_BUILD_ROOT -cd lib - -install -d $RPM_BUILD_ROOT%{_libdir}/ocaml/{%{modname},stublibs} -install -p *.cm[ixa]* *.a $RPM_BUILD_ROOT%{_libdir}/ocaml/%{modname} -install -p dll*.so $RPM_BUILD_ROOT%{_libdir}/ocaml/stublibs - -install -d $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/%{modname} -cat > $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/%{modname}/META <