- make library modules public
[packages/ocaml-fuse.git] / ocaml-fuse.spec
1 #
2 # Conditional build:
3 %bcond_without  ocaml_opt       # skip building native optimized binaries (bytecode is always built)
4
5 # not yet available on x32 (ocaml 4.02.1), remove when upstream will support it
6 %ifnarch %{ix86} %{x8664} arm aarch64 ppc sparc sparcv9
7 %undefine       with_ocaml_opt
8 %endif
9
10 %define         module  Fuse
11 Summary:        Fuse binding for OCaml
12 Summary(pl.UTF-8):      Wiązania Fuse dla OCamla
13 Name:           ocaml-fuse
14 Version:        2.7.1
15 Release:        3
16 License:        GPL v2
17 Group:          Libraries
18 Source0:        https://github.com/astrada/ocamlfuse/archive/v%{version}_cvs7/ocamlfuse-%{version}-7.tar.gz
19 # Source0-md5:  a5da871a0983b6723c6b9b735898fe34
20 Patch0:         keep-name.patch
21 Patch1:         no-wrapped.patch
22 URL:            http://sourceforge.net/apps/mediawiki/ocamlfuse/
23 BuildRequires:  libfuse-devel
24 BuildRequires:  ocaml >= 3.08
25 BuildRequires:  ocaml-dune
26 BuildRequires:  ocaml-findlib >= 1.4
27 BuildRequires:  ocaml-idl-devel >= 1.0.5
28 %requires_eq    ocaml-runtime
29 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
30
31 %define         debug_package   %{nil}
32
33 %description
34 OcamlFuse is a binding to the high-level part of the fuse library,
35 allowing you to implement linux filesystems in OCaml. Other operating
36 systems are not supported, if you think you can help we will be glad
37 to hear.
38
39 The main features of ocamlfuse are:
40 - Multithreading: each callback runs in a separate ocaml thread, so
41   that a slow call can't block the filesystem
42 - Efficiency: read and write operations use the bigarray library
43   achieving very high troughput _ Ease of use: the fusexmp filesystem
44   (mimicking bindfs) is 73 lines of code, including in-memory extended
45   attributes using a hash table. The hello example is 42 lines of code.
46
47 %description -l pl.UTF-8
48 Pakiet ten zawiera binaria potrzebne do uruchamiania programów
49 używających tej biblioteki.
50
51 %package devel
52 Summary:        ocamlfuse binding for OCaml - development part
53 Summary(pl.UTF-8):      Wiązania ocamlfuse dla OCamla - cześć programistyczna
54 Group:          Development/Libraries
55 Requires:       %{name} = %{version}-%{release}
56 %requires_eq    ocaml
57 Requires:       libfuse-devel
58 Requires:       ocaml-idl-devel >= 1.0.5
59
60 %description devel
61 This package contains files needed to develop OCaml programs using
62 this library.
63
64 %description devel -l pl.UTF-8
65 Pakiet ten zawiera pliki niezbędne do tworzenia programów używających
66 tej biblioteki.
67
68 %prep
69 %setup -q -n ocamlfuse-2.7.1_cvs7
70 %patch0 -p1
71 %patch1 -p1
72
73 %{__mv} {ocamlfuse,Fuse}.opam
74
75 %build
76 %{__make}
77
78 %install
79 rm -rf $RPM_BUILD_ROOT
80
81 %{__make} install \
82         DESTDIR=$RPM_BUILD_ROOT
83
84 %clean
85 rm -rf $RPM_BUILD_ROOT
86
87 %files
88 %defattr(644,root,root,755)
89 %{_libdir}/ocaml/%{module}/META
90 %{_libdir}/ocaml/%{module}/dune-package
91 %{_libdir}/ocaml/%{module}/opam
92 %{_libdir}/ocaml/%{module}/*.cmi
93 %{_libdir}/ocaml/%{module}/*.cmt
94 %{_libdir}/ocaml/%{module}/*.cmti
95 %if %{with ocaml_opt}
96 %{_libdir}/ocaml/%{module}/*.cmxs
97 %endif
98 %attr(755,root,root) %{_libdir}/ocaml/stublibs/*.so
99
100 %files devel
101 %defattr(644,root,root,755)
102 %doc LICENSE lib/*.mli
103 %dir %{_libdir}/ocaml/%{module}
104 %{_libdir}/ocaml/%{module}/*.cma
105 %{_libdir}/ocaml/%{module}/*.cm[ix]
106 %{_libdir}/ocaml/%{module}/*.a
107 %{_libdir}/ocaml/%{module}/*.mli
108 %if %{with ocaml_opt}
109 %{_libdir}/ocaml/%{module}/*.cmxa
110 %endif
This page took 0.072115 seconds and 3 git commands to generate.