summaryrefslogtreecommitdiff
path: root/packaging/rust-byte-slice-cast.spec
blob: 668811e4a2c536140fde28f80e17ed0a05896205 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
# Generated by rust2rpm 23
%global _rpm_strip_disable 1
%global debug_package %{nil}

%global crate byte-slice-cast
%global real_crate_name byte_slice_cast
%global rustc_edition 2018

Name:           rust-byte-slice-cast
Version:        1.2.2
Release:        1
Summary:        Safely cast bytes slices from/to slices of built-in fundamental numeric types

License:        MIT
URL:            https://crates.io/crates/byte-slice-cast
Source:         %{crate}-%{version}.tar.gz
Source1:        %{name}.manifest

# ==========================================================
# BuildRequires
# specifies build-time dependencies for the package
# ==========================================================
BuildRequires:  rust



%description
Safely cast bytes slices from/to slices of built-in fundamental numeric types.

%prep
%setup -q
cp %{SOURCE1} .

# ==========================================================
# build section
# crate-type : dylib, proc-macro, cdylib, bin, etc.
# ==========================================================
%build
%{rustc_std_build} --crate-type=dylib \
        --crate-name=%{real_crate_name} \
        %{?rustc_edition:--edition=%{rustc_edition}} \
        --cfg='feature="std"' \
        ./src/lib.rs

# ==========================================================
# install section
# ==========================================================
%install
install -d -m 0755 %{buildroot}%{_rust_dylibdir}
install -m 0644 lib%{real_crate_name}.so %{buildroot}/%{_rust_dylibdir}/lib%{real_crate_name}.so

%check
%if 0%{?run_tests}
%{rustc_std_build} --test --crate-type=dylib \
        --crate-name=%{real_crate_name} \
        %{?rustc_edition:--edition=%{rustc_edition}} \
        --cfg='feature="std"' \
        ./src/lib.rs

./%{real_crate_name}
%endif

%clean

%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig

# ==========================================================
# files section
# ==========================================================
%files
%manifest %{name}.manifest
%license LICENSE
%{_rust_dylibdir}/lib%{real_crate_name}.so