# ==========================================================
BuildRequires: rust
BuildRequires: rust-arbitrary
-#BuildRequires: rust-criterion
BuildRequires: rust-iana-time-zone
BuildRequires: rust-num-integer
BuildRequires: rust-num-traits
+BuildRequires: rust-serde
+
+#BuildRequires: rust-criterion
#BuildRequires: rust-pure-rust-locales
#BuildRequires: rust-rkyv
#BuildRequires: rust-rustc-serialize
-BuildRequires: rust-serde
#BuildRequires: rust-time # by removing "oldtime" feature, this is not needed for now
# current rust-time is 0.3.20 but this needs 0.1.4
-Requires: rust-iana-time-zone
-Requires: rust-num-integer
-Requires: rust-num-traits
+
+Requires: rust-iana-time-zone
+Requires: rust-num-integer
+Requires: rust-num-traits
# ==========================================================
# dev-dependencies
# ==========================================================
+%if 0%{?run_tests}
+BuildRequires: rust-num-iter
# BuildRequires: rust-bincode
# BuildRequires: rust-doc-comment
-# BuildRequires: rust-num-iter
# BuildRequires: rust-serde_derive
# BuildRequires: rust-serde_json
+%endif
%description
%rust_dylib_extern iana_time_zone \
%rust_dylib_extern num_integer \
%rust_dylib_extern num_traits \
- %rust_dylib_extern time \
./src/lib.rs
# ==========================================================
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="default"' \
+ --cfg='feature="clock"' \
+ --cfg='feature="std"' \
+ %rust_dylib_extern iana_time_zone \
+ %rust_dylib_extern num_integer \
+ %rust_dylib_extern num_traits \
+ %rust_dylib_extern num_iter \
+ ./src/lib.rs
+
+./%{real_crate_name}
+%endif
+
%clean
%post -p /sbin/ldconfig