Further attempts to libblkio
[fedora-reviews.git] / libblkio / libblkio.spec
1 %global forgeurl https://gitlab.com/libblkio/libblkio
2 %global commit c8f5ed9a1460d90a522bda55da09f013fa7da61c
3 # Upstream has not tagged any versions so far.
4 Version:       0.1
5 %forgemeta
6
7 Summary:       Block device I/O library
8 Name:          libblkio
9 Release:       1%{?dist}
10 URL:           %{forgeurl}
11 Source0:       %{forgesource}
12 License:       ASL 2.0 or MIT
13
14 # Bundled missing dependencies.
15 #
16 # These were created by running "cargo vendor" in the source tree
17 # and then making a tarball of just the following directories:
18 # vendor/io-uring
19 # vendor/memfd
20 # vendor/winapi*
21 Source1:       vendor.tar.gz
22
23 # Basic build requirements.
24 BuildRequires: gcc, gcc-c++
25 BuildRequires: make
26 BuildRequires: meson
27 BuildRequires: rust-packaging >= 21
28 BuildRequires: rustfmt
29 BuildRequires: cargo
30 BuildRequires: python3-docutils
31 BuildRequires: pkgconf
32 BuildRequires: crate(autocfg/default)
33 BuildRequires: crate(bitflags/default)
34 BuildRequires: crate(cc/default)
35 BuildRequires: crate(cfg-if/default)
36 # BuildRequires: crate(concat-idents...)
37 BuildRequires: crate(const-cstr/default)
38 # BuildRequires: crate(io-uring...)
39 BuildRequires: crate(lazy_static/default)
40 BuildRequires: crate(libc/default)
41 # BuildRequires: crate(memfd...)
42 BuildRequires: crate(memmap/default)
43 BuildRequires: crate(memoffset/default)
44 BuildRequires: crate(nix/default)
45 BuildRequires: crate(proc-macro2/default)
46 BuildRequires: crate(syn/default)
47 BuildRequires: crate(unicode-xid/default)
48 BuildRequires: crate(virtio-bindings/default)
49
50
51 %description
52 libblkio is a library for high-performance block device I/O with
53 support for multi-queue devices. A C API is provided so that
54 applications can use the library from most programming languages.
55
56
57 %package devel
58 Summary:       Development tools for %{name}
59 Requires:      %{name}%{_isa} = %{version}-%{release}
60
61
62 %description devel
63 This package contains development tools for %{name}.
64
65
66 %prep
67 %forgesetup
68 tar zxf %{SOURCE1}
69
70
71 %build
72 %{meson}
73 %{meson_build}
74
75
76 %install
77 %{meson_install}
78
79 pushd %{buildroot}%{_libdir}
80 ln -s libblkio.so libblkio.so.0
81 ln -s libblkio.so.0 libblkio.so.0.0
82 popd
83
84
85 %files
86 %license LICENSE-APACHE LICENSE-MIT LICENSE.crosvm
87 %doc README.rst
88 %{_libdir}/libblkio.so.0*
89
90
91 %files devel
92 %license LICENSE-APACHE LICENSE-MIT LICENSE.crosvm
93 %doc README.rst
94 %{_includedir}/blkio.h
95 %{_libdir}/libblkio.so
96 %{_libdir}/pkgconfig/blkio.pc
97 %{_mandir}/man3/blkio.3*
98
99
100 %changelog
101 * Tue Sep 06 2022 Richard W.M. Jones <rjones@redhat.com> - 0.1-1
102 - Initial package