]>
Commit | Line | Data |
---|---|---|
1 | # | |
2 | # Conditional build: | |
3 | %bcond_without opt # build opt | |
4 | ||
5 | %define modname Fuse | |
6 | Summary: %{modname} binding for OCaml | |
7 | Summary(pl.UTF-8): Wiązania %{modname} dla OCamla | |
8 | Name: ocaml-fuse | |
9 | Version: 2.7 | |
10 | Release: 1 | |
11 | License: GPL v2 | |
12 | Group: Libraries | |
13 | Source0: http://downloads.sourceforge.net/ocamlfuse/ocamlfuse-%{version}-1.tar.gz | |
14 | # Source0-md5: cb9cbe4fafb36ead1b78faaacc26f3e3 | |
15 | URL: http://sourceforge.net/apps/mediawiki/ocamlfuse/ | |
16 | BuildRequires: libfuse-devel | |
17 | BuildRequires: ocaml >= 3.08 | |
18 | BuildRequires: ocaml-findlib >= 1.4 | |
19 | BuildRequires: ocaml-idl-devel >= 1.0.5 | |
20 | %requires_eq ocaml-runtime | |
21 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
22 | ||
23 | %define debug_package %{nil} | |
24 | ||
25 | %description | |
26 | OcamlFuse is a binding to the high-level part of the fuse library, | |
27 | allowing you to implement linux filesystems in OCaml. Other operating | |
28 | systems are not supported, if you think you can help we will be glad | |
29 | to hear. | |
30 | ||
31 | The main features of ocamlfuse are: | |
32 | - Multithreading: each callback runs in a separate ocaml thread, so | |
33 | that a slow call can't block the filesystem | |
34 | - Efficiency: read and write operations use the bigarray library | |
35 | achieving very high troughput _ Ease of use: the fusexmp filesystem | |
36 | (mimicking bindfs) is 73 lines of code, including in-memory extended | |
37 | attributes using a hash table. The hello example is 42 lines of code. | |
38 | ||
39 | %description -l pl.UTF-8 | |
40 | Pakiet ten zawiera binaria potrzebne do uruchamiania programów | |
41 | używających tej biblioteki. | |
42 | ||
43 | %package devel | |
44 | Summary: ocamlfuse binding for OCaml - development part | |
45 | Summary(pl.UTF-8): Wiązania ocamlfuse dla OCamla - cześć programistyczna | |
46 | Group: Development/Libraries | |
47 | Requires: %{name} = %{version}-%{release} | |
48 | %requires_eq ocaml | |
49 | ||
50 | %description devel | |
51 | This package contains files needed to develop OCaml programs using | |
52 | this library. | |
53 | ||
54 | %description devel -l pl.UTF-8 | |
55 | Pakiet ten zawiera pliki niezbędne do tworzenia programów używających | |
56 | tej biblioteki. | |
57 | ||
58 | %prep | |
59 | %setup -qc | |
60 | mv ocamlfuse/* . | |
61 | ||
62 | %build | |
63 | %{__make} -j1 all -C lib \ | |
64 | PACKS=camlidl \ | |
65 | CC="%{__cc} %{rpmcflags} -fPIC" | |
66 | ||
67 | %install | |
68 | rm -rf $RPM_BUILD_ROOT | |
69 | cd lib | |
70 | ||
71 | install -d $RPM_BUILD_ROOT%{_libdir}/ocaml/{%{modname},stublibs} | |
72 | install -p *.cm[ixa]* *.a $RPM_BUILD_ROOT%{_libdir}/ocaml/%{modname} | |
73 | install -p dll*.so $RPM_BUILD_ROOT%{_libdir}/ocaml/stublibs | |
74 | ||
75 | install -d $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/%{modname} | |
76 | cat > $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/%{modname}/META <<EOF | |
77 | requires = "" | |
78 | version = "%{version}" | |
79 | directory = "+%{modname}" | |
80 | archive(byte) = "%{modname}.cma" | |
81 | archive(native) = "%{modname}.cmxa" | |
82 | linkopts = "" | |
83 | EOF | |
84 | ||
85 | %clean | |
86 | rm -rf $RPM_BUILD_ROOT | |
87 | ||
88 | %files | |
89 | %defattr(644,root,root,755) | |
90 | %attr(755,root,root) %{_libdir}/ocaml/stublibs/*.so | |
91 | ||
92 | %files devel | |
93 | %defattr(644,root,root,755) | |
94 | %doc LICENSE lib/*.mli | |
95 | %dir %{_libdir}/ocaml/%{modname} | |
96 | %{_libdir}/ocaml/%{modname}/*.cm[ixa]* | |
97 | %{_libdir}/ocaml/%{modname}/*.a | |
98 | %{_libdir}/ocaml/site-lib/%{modname} |