import rust-rav1e-0.7.1-4.el10

i10ce changed/i10ce/rust-rav1e-0.7.1-4.el10
Dmitry Samoylik 2 months ago
commit 2be4f62e4e

@ -0,0 +1,756 @@
From 418a8c70fef6c26637550ee5c0bab1948b528b96 Mon Sep 17 00:00:00 2001
From: Fabio Valentini <decathorpe@gmail.com>
Date: Sat, 3 Feb 2024 19:05:21 +0100
Subject: [PATCH] remove references to removed "built" and "profiling" crates
The "built" crate embeds information about the state of the git
repository into the binary, but this is useless when using tarballs.
The macros from the "profiling" crate are compiled down to no-ops
since the required features are disabled in release builds.
---
build.rs | 2 --
src/activity.rs | 2 --
src/api/internal.rs | 10 ----------
src/api/lookahead.rs | 4 ----
src/bin/common.rs | 9 +--------
src/bin/muxer/ivf.rs | 1 -
src/bin/muxer/y4m.rs | 1 -
src/bin/rav1e.rs | 2 --
src/bin/stats.rs | 1 -
src/cdef.rs | 4 ----
src/context/block_unit.rs | 1 -
src/deblock.rs | 3 ---
src/encoder.rs | 13 -------------
src/lib.rs | 27 +++++----------------------
src/lrf.rs | 5 -----
src/me.rs | 8 --------
src/rate.rs | 2 --
src/rdo.rs | 8 --------
src/scenechange/fast.rs | 2 --
src/scenechange/mod.rs | 1 -
src/segmentation.rs | 2 --
21 files changed, 6 insertions(+), 102 deletions(-)
diff --git a/build.rs b/build.rs
index 87987fc..50af563 100644
--- a/build.rs
+++ b/build.rs
@@ -247,8 +247,6 @@ fn build_asm_files() {
#[allow(unused_variables)]
fn main() {
- built::write_built_file().expect("Failed to acquire build-time information");
-
let arch = env::var("CARGO_CFG_TARGET_ARCH").unwrap();
let os = env::var("CARGO_CFG_TARGET_OS").unwrap();
// let env = env::var("CARGO_CFG_TARGET_ENV").unwrap();
diff --git a/src/activity.rs b/src/activity.rs
index a4558cb..041185c 100644
--- a/src/activity.rs
+++ b/src/activity.rs
@@ -19,7 +19,6 @@ pub struct ActivityMask {
}
impl ActivityMask {
- #[profiling::function]
pub fn from_plane<T: Pixel>(luma_plane: &Plane<T>) -> ActivityMask {
let PlaneConfig { width, height, .. } = luma_plane.cfg;
@@ -54,7 +53,6 @@ impl ActivityMask {
ActivityMask { variances: variances.into_boxed_slice() }
}
- #[profiling::function]
pub fn fill_scales(
&self, bit_depth: usize, activity_scales: &mut Box<[DistortionScale]>,
) {
diff --git a/src/api/internal.rs b/src/api/internal.rs
index ffaf27c..2aacda6 100644
--- a/src/api/internal.rs
+++ b/src/api/internal.rs
@@ -315,7 +315,6 @@ impl<T: Pixel> ContextInner<T> {
}
}
- #[profiling::function]
pub fn send_frame(
&mut self, mut frame: Option<Arc<Frame<T>>>,
params: Option<FrameParameters>,
@@ -647,7 +646,6 @@ impl<T: Pixel> ContextInner<T> {
/// `rec_buffer` and `lookahead_rec_buffer` on the `FrameInvariants`. This
/// function must be called after every new `FrameInvariants` is initially
/// computed.
- #[profiling::function]
fn compute_lookahead_motion_vectors(&mut self, output_frameno: u64) {
let frame_data = self.frame_data.get(&output_frameno).unwrap();
@@ -860,7 +858,6 @@ impl<T: Pixel> ContextInner<T> {
});
}
- #[profiling::function]
pub fn compute_keyframe_placement(
lookahead_frames: &[&Arc<Frame<T>>], keyframes_forced: &BTreeSet<u64>,
keyframe_detector: &mut SceneChangeDetector<T>,
@@ -879,7 +876,6 @@ impl<T: Pixel> ContextInner<T> {
*next_lookahead_frame += 1;
}
- #[profiling::function]
pub fn compute_frame_invariants(&mut self) {
while self.set_frame_properties(self.next_lookahead_output_frameno).is_ok()
{
@@ -892,7 +888,6 @@ impl<T: Pixel> ContextInner<T> {
}
}
- #[profiling::function]
fn update_block_importances(
fi: &FrameInvariants<T>, me_stats: &crate::me::FrameMEStats,
frame: &Frame<T>, reference_frame: &Frame<T>, bit_depth: usize,
@@ -1055,7 +1050,6 @@ impl<T: Pixel> ContextInner<T> {
}
/// Computes the block importances for the current output frame.
- #[profiling::function]
fn compute_block_importances(&mut self) {
// SEF don't need block importances.
if self.frame_data[&self.output_frameno]
@@ -1279,7 +1273,6 @@ impl<T: Pixel> ContextInner<T> {
}
}
- #[profiling::function]
pub fn encode_show_existing_packet(
&mut self, cur_output_frameno: u64,
) -> Result<Packet<T>, EncoderStatus> {
@@ -1315,7 +1308,6 @@ impl<T: Pixel> ContextInner<T> {
self.finalize_packet(rec, source, input_frameno, frame_type, qp, enc_stats)
}
- #[profiling::function]
pub fn encode_normal_packet(
&mut self, cur_output_frameno: u64,
) -> Result<Packet<T>, EncoderStatus> {
@@ -1478,7 +1470,6 @@ impl<T: Pixel> ContextInner<T> {
}
}
- #[profiling::function]
pub fn receive_packet(&mut self) -> Result<Packet<T>, EncoderStatus> {
if self.done_processing() {
return Err(EncoderStatus::LimitReached);
@@ -1544,7 +1535,6 @@ impl<T: Pixel> ContextInner<T> {
})
}
- #[profiling::function]
fn garbage_collect(&mut self, cur_input_frameno: u64) {
if cur_input_frameno == 0 {
return;
diff --git a/src/api/lookahead.rs b/src/api/lookahead.rs
index 177f6ad..51450fa 100644
--- a/src/api/lookahead.rs
+++ b/src/api/lookahead.rs
@@ -26,7 +26,6 @@ pub(crate) const IMP_BLOCK_SIZE_IN_MV_UNITS: i64 =
pub(crate) const IMP_BLOCK_AREA_IN_MV_UNITS: i64 =
IMP_BLOCK_SIZE_IN_MV_UNITS * IMP_BLOCK_SIZE_IN_MV_UNITS;
-#[profiling::function]
pub(crate) fn estimate_intra_costs<T: Pixel>(
temp_plane: &mut Plane<T>, frame: &Frame<T>, bit_depth: usize,
cpu_feature_level: CpuFeatureLevel,
@@ -122,7 +121,6 @@ pub(crate) fn estimate_intra_costs<T: Pixel>(
intra_costs.into_boxed_slice()
}
-#[profiling::function]
pub(crate) fn estimate_importance_block_difference<T: Pixel>(
frame: Arc<Frame<T>>, ref_frame: Arc<Frame<T>>,
) -> f64 {
@@ -178,7 +176,6 @@ pub(crate) fn estimate_importance_block_difference<T: Pixel>(
imp_block_costs as f64 / (w_in_imp_b * h_in_imp_b) as f64
}
-#[profiling::function]
pub(crate) fn estimate_inter_costs<T: Pixel>(
frame: Arc<Frame<T>>, ref_frame: Arc<Frame<T>>, bit_depth: usize,
mut config: EncoderConfig, sequence: Arc<Sequence>, buffer: RefMEStats,
@@ -267,7 +264,6 @@ pub(crate) fn estimate_inter_costs<T: Pixel>(
inter_costs as f64 / (w_in_imp_b * h_in_imp_b) as f64
}
-#[profiling::function]
pub(crate) fn compute_motion_vectors<T: Pixel>(
fi: &mut FrameInvariants<T>, fs: &mut FrameState<T>, inter_cfg: &InterConfig,
) {
diff --git a/src/bin/common.rs b/src/bin/common.rs
index 0fc106b..14a91f1 100644
--- a/src/bin/common.rs
+++ b/src/bin/common.rs
@@ -23,11 +23,6 @@ use std::io;
use std::io::prelude::*;
use std::path::PathBuf;
-pub mod built_info {
- // The file has been placed there by the build script.
- include!(concat!(env!("OUT_DIR"), "/built.rs"));
-}
-
#[derive(Clap)]
#[clap(
name = "rav1e",
@@ -278,10 +273,8 @@ fn get_long_version() -> &'static str {
rustflags = "(None)";
}
format!(
- "{}\n{} {}\nCompiled CPU Features: {}\nRuntime Assembly Support: {}{}\nThreading: {}\nUnstable Features: {}\nCompiler Flags: {}",
+ "{}\nCompiled CPU Features: {}\nRuntime Assembly Support: {}{}\nThreading: {}\nUnstable Features: {}\nCompiler Flags: {}",
get_version(),
- built_info::RUSTC_VERSION,
- built_info::TARGET,
option_env!("CARGO_CFG_TARGET_FEATURE").unwrap_or("(None)"),
if cfg!(feature = "asm") { "Enabled" } else { "Disabled" },
if cfg!(feature = "asm") {
diff --git a/src/bin/muxer/ivf.rs b/src/bin/muxer/ivf.rs
index 8b1333b..ecc4b8d 100644
--- a/src/bin/muxer/ivf.rs
+++ b/src/bin/muxer/ivf.rs
@@ -36,7 +36,6 @@ impl Muxer for IvfMuxer {
);
}
- #[profiling::function]
fn write_frame(&mut self, pts: u64, data: &[u8], _frame_type: FrameType) {
write_ivf_frame(&mut self.output, pts, data);
}
diff --git a/src/bin/muxer/y4m.rs b/src/bin/muxer/y4m.rs
index 0246a14..c6e5152 100644
--- a/src/bin/muxer/y4m.rs
+++ b/src/bin/muxer/y4m.rs
@@ -12,7 +12,6 @@ use rav1e::prelude::*;
use std::io::Write;
use std::slice;
-#[profiling::function]
pub fn write_y4m_frame<T: Pixel>(
y4m_enc: &mut y4m::Encoder<Box<dyn Write + Send>>, rec: &Frame<T>,
y4m_details: VideoDetails,
diff --git a/src/bin/rav1e.rs b/src/bin/rav1e.rs
index da7c3ca..4fc67dd 100644
--- a/src/bin/rav1e.rs
+++ b/src/bin/rav1e.rs
@@ -147,7 +147,6 @@ impl<D: Decoder> Source<D> {
}
}
- #[profiling::function]
fn read_frame<T: Pixel>(
&mut self, ctx: &mut Context<T>, video_info: VideoDetails,
) -> Result<(), CliError> {
@@ -183,7 +182,6 @@ impl<D: Decoder> Source<D> {
// Encode and write a frame.
// Returns frame information in a `Result`.
-#[profiling::function]
fn process_frame<T: Pixel, D: Decoder>(
ctx: &mut Context<T>, output_file: &mut dyn Muxer, source: &mut Source<D>,
pass1file: Option<&mut File>, pass2file: Option<&mut File>,
diff --git a/src/bin/stats.rs b/src/bin/stats.rs
index 548556b..8e2c925 100644
--- a/src/bin/stats.rs
+++ b/src/bin/stats.rs
@@ -29,7 +29,6 @@ pub struct FrameSummary {
pub enc_stats: EncoderStats,
}
-#[profiling::function]
pub fn build_frame_summary<T: Pixel>(
packets: Packet<T>, bit_depth: usize, chroma_sampling: ChromaSampling,
metrics_cli: MetricsEnabled,
diff --git a/src/cdef.rs b/src/cdef.rs
index 72b7d6a..81fabfd 100644
--- a/src/cdef.rs
+++ b/src/cdef.rs
@@ -321,7 +321,6 @@ fn adjust_strength(strength: i32, var: i32) -> i32 {
}
}
-#[profiling::function]
pub fn cdef_analyze_superblock_range<T: Pixel>(
fi: &FrameInvariants<T>, in_frame: &Frame<T>, blocks: &TileBlocks<'_>,
sb_w: usize, sb_h: usize,
@@ -336,7 +335,6 @@ pub fn cdef_analyze_superblock_range<T: Pixel>(
ret
}
-#[profiling::function]
pub fn cdef_analyze_superblock<T: Pixel>(
fi: &FrameInvariants<T>, in_frame: &Frame<T>, blocks: &TileBlocks<'_>,
sbo: TileSuperBlockOffset,
@@ -397,7 +395,6 @@ pub fn cdef_analyze_superblock<T: Pixel>(
/// # Panics
///
/// - If called with invalid parameters
-#[profiling::function]
pub fn cdef_filter_superblock<T: Pixel>(
fi: &FrameInvariants<T>, input: &Frame<T>, output: &mut TileMut<'_, T>,
blocks: &TileBlocks<'_>, tile_sbo: TileSuperBlockOffset, cdef_index: u8,
@@ -593,7 +590,6 @@ pub fn cdef_filter_superblock<T: Pixel>(
// tile boundary), the filtering process ignores input pixels that
// don't exist.
-#[profiling::function]
pub fn cdef_filter_tile<T: Pixel>(
fi: &FrameInvariants<T>, input: &Frame<T>, tb: &TileBlocks,
output: &mut TileMut<'_, T>,
diff --git a/src/context/block_unit.rs b/src/context/block_unit.rs
index f68bc9c..a2248ce 100644
--- a/src/context/block_unit.rs
+++ b/src/context/block_unit.rs
@@ -1124,7 +1124,6 @@ impl<'a> ContextWriter<'a> {
}
}
- #[profiling::function]
fn setup_mvref_list<T: Pixel>(
&self, bo: TileBlockOffset, ref_frames: [RefType; 2],
mv_stack: &mut ArrayVec<CandidateMV, 9>, bsize: BlockSize,
diff --git a/src/deblock.rs b/src/deblock.rs
index 7619877..132440c 100644
--- a/src/deblock.rs
+++ b/src/deblock.rs
@@ -1290,7 +1290,6 @@ fn sse_h_edge<T: Pixel>(
}
// Deblocks all edges, vertical and horizontal, in a single plane
-#[profiling::function]
pub fn deblock_plane<T: Pixel>(
deblock: &DeblockState, p: &mut PlaneRegionMut<T>, pli: usize,
blocks: &TileBlocks, crop_w: usize, crop_h: usize, bd: usize,
@@ -1540,7 +1539,6 @@ fn sse_plane<T: Pixel>(
}
// Deblocks all edges in all planes of a frame
-#[profiling::function]
pub fn deblock_filter_frame<T: Pixel>(
deblock: &DeblockState, tile: &mut TileMut<T>, blocks: &TileBlocks,
crop_w: usize, crop_h: usize, bd: usize, planes: usize,
@@ -1616,7 +1614,6 @@ fn sse_optimize<T: Pixel>(
level
}
-#[profiling::function]
pub fn deblock_filter_optimize<T: Pixel, U: Pixel>(
fi: &FrameInvariants<T>, rec: &Tile<U>, input: &Tile<U>,
blocks: &TileBlocks, crop_w: usize, crop_h: usize,
diff --git a/src/encoder.rs b/src/encoder.rs
index 357ebf1..2c43575 100644
--- a/src/encoder.rs
+++ b/src/encoder.rs
@@ -563,7 +563,6 @@ pub struct SegmentationState {
}
impl SegmentationState {
- #[profiling::function]
pub fn update_threshold(&mut self, base_q_idx: u8, bd: usize) {
let base_ac_q = ac_q(base_q_idx, 0, bd).get() as u64;
let real_ac_q = ArrayVec::<_, MAX_SEGMENTS>::from_iter(
@@ -741,7 +740,6 @@ impl<T: Pixel> CodedFrameData<T> {
// Assumes that we have already computed activity scales and distortion scales
// Returns -0.5 log2(mean(scale))
- #[profiling::function]
pub fn compute_spatiotemporal_scores(&mut self) -> i64 {
let mut scores = self
.distortion_scales
@@ -767,7 +765,6 @@ impl<T: Pixel> CodedFrameData<T> {
// Assumes that we have already computed distortion_scales
// Returns -0.5 log2(mean(scale))
- #[profiling::function]
pub fn compute_temporal_scores(&mut self) -> i64 {
let inv_mean = DistortionScale::inv_mean(&self.distortion_scales);
for scale in self.distortion_scales.iter_mut() {
@@ -1664,7 +1661,6 @@ pub fn encode_tx_block<T: Pixel, W: Writer>(
/// # Panics
///
/// - If the block size is invalid for subsampling
-#[profiling::function]
pub fn motion_compensate<T: Pixel>(
fi: &FrameInvariants<T>, ts: &mut TileStateMut<'_, T>,
cw: &mut ContextWriter, luma_mode: PredictionMode, ref_frames: [RefType; 2],
@@ -1893,7 +1889,6 @@ pub fn save_block_motion<T: Pixel>(
}
}
-#[profiling::function]
pub fn encode_block_pre_cdef<T: Pixel, W: Writer>(
seq: &Sequence, ts: &TileStateMut<'_, T>, cw: &mut ContextWriter, w: &mut W,
bsize: BlockSize, tile_bo: TileBlockOffset, skip: bool,
@@ -1934,7 +1929,6 @@ pub fn encode_block_pre_cdef<T: Pixel, W: Writer>(
///
/// - If chroma and luma do not match for inter modes
/// - If an invalid motion vector is found
-#[profiling::function]
pub fn encode_block_post_cdef<T: Pixel, W: Writer>(
fi: &FrameInvariants<T>, ts: &mut TileStateMut<'_, T>,
cw: &mut ContextWriter, w: &mut W, luma_mode: PredictionMode,
@@ -2564,7 +2558,6 @@ pub fn write_tx_tree<T: Pixel, W: Writer>(
(partition_has_coeff, tx_dist)
}
-#[profiling::function]
pub fn encode_block_with_modes<T: Pixel, W: Writer>(
fi: &FrameInvariants<T>, ts: &mut TileStateMut<'_, T>,
cw: &mut ContextWriter, w_pre_cdef: &mut W, w_post_cdef: &mut W,
@@ -2631,7 +2624,6 @@ pub fn encode_block_with_modes<T: Pixel, W: Writer>(
);
}
-#[profiling::function]
fn encode_partition_bottomup<T: Pixel, W: Writer>(
fi: &FrameInvariants<T>, ts: &mut TileStateMut<'_, T>,
cw: &mut ContextWriter, w_pre_cdef: &mut W, w_post_cdef: &mut W,
@@ -3234,7 +3226,6 @@ fn get_initial_cdfcontext<T: Pixel>(fi: &FrameInvariants<T>) -> CDFContext {
cdf.unwrap_or_else(|| CDFContext::new(fi.base_q_idx))
}
-#[profiling::function]
fn encode_tile_group<T: Pixel>(
fi: &FrameInvariants<T>, fs: &mut FrameState<T>, inter_cfg: &InterConfig,
) -> Vec<u8> {
@@ -3373,7 +3364,6 @@ pub struct SBSQueueEntry {
pub w_post_cdef: WriterBase<WriterRecorder>,
}
-#[profiling::function]
fn check_lf_queue<T: Pixel>(
fi: &FrameInvariants<T>, ts: &mut TileStateMut<'_, T>,
cw: &mut ContextWriter, w: &mut WriterBase<WriterEncoder>,
@@ -3465,7 +3455,6 @@ fn check_lf_queue<T: Pixel>(
}
}
-#[profiling::function]
fn encode_tile<'a, T: Pixel>(
fi: &FrameInvariants<T>, ts: &'a mut TileStateMut<'_, T>,
fc: &'a mut CDFContext, blocks: &'a mut TileBlocksMut<'a>,
@@ -3690,7 +3679,6 @@ fn write_tile_group_header(tile_start_and_end_present_flag: bool) -> Vec<u8> {
/// # Panics
///
/// - If the frame packets cannot be written
-#[profiling::function]
pub fn encode_show_existing_frame<T: Pixel>(
fi: &FrameInvariants<T>, fs: &mut FrameState<T>, inter_cfg: &InterConfig,
) -> Vec<u8> {
@@ -3765,7 +3753,6 @@ fn get_initial_segmentation<T: Pixel>(
/// # Panics
///
/// - If the frame packets cannot be written
-#[profiling::function]
pub fn encode_frame<T: Pixel>(
fi: &FrameInvariants<T>, fs: &mut FrameState<T>, inter_cfg: &InterConfig,
) -> Vec<u8> {
diff --git a/src/lib.rs b/src/lib.rs
index 7575b1f..263d114 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -118,11 +118,6 @@ extern crate pretty_assertions;
#[macro_use]
extern crate log;
-pub(crate) mod built_info {
- // The file has been placed there by the build script.
- include!(concat!(env!("OUT_DIR"), "/built.rs"));
-}
-
mod serialize {
cfg_if::cfg_if! {
if #[cfg(feature="serialize")] {
@@ -316,24 +311,12 @@ pub mod version {
}
}
- cfg_if::cfg_if! {
- if #[cfg(feature="git_version")] {
- fn git_version() -> &'static str {
- crate::built_info::GIT_VERSION.unwrap_or_default()
- }
-
- fn git_hash() -> &'static str {
- crate::built_info::GIT_COMMIT_HASH.unwrap_or_default()
- }
- } else {
- fn git_version() -> &'static str {
- "UNKNOWN"
- }
+ fn git_version() -> &'static str {
+ "UNKNOWN"
+ }
- fn git_hash() -> &'static str {
- "UNKNOWN"
- }
- }
+ fn git_hash() -> &'static str {
+ "UNKNOWN"
}
/// Commit hash (short)
///
diff --git a/src/lrf.rs b/src/lrf.rs
index fc663bf..5470f6b 100644
--- a/src/lrf.rs
+++ b/src/lrf.rs
@@ -525,7 +525,6 @@ impl<'a, T: Pixel> Iterator for HorzPaddedIter<'a, T> {
impl<T: Pixel> ExactSizeIterator for HorzPaddedIter<'_, T> {}
impl<T: Pixel> FusedIterator for HorzPaddedIter<'_, T> {}
-#[profiling::function]
pub fn setup_integral_image<T: Pixel>(
integral_image_buffer: &mut IntegralImageBuffer,
integral_image_stride: usize, crop_w: usize, crop_h: usize, stripe_w: usize,
@@ -625,7 +624,6 @@ pub fn setup_integral_image<T: Pixel>(
}
}
-#[profiling::function]
pub fn sgrproj_stripe_filter<T: Pixel, U: Pixel>(
set: u8, xqd: [i8; 2], fi: &FrameInvariants<T>,
integral_image_buffer: &IntegralImageBuffer, integral_image_stride: usize,
@@ -842,7 +840,6 @@ pub fn sgrproj_stripe_filter<T: Pixel, U: Pixel>(
// Input params follow the same rules as sgrproj_stripe_filter.
// Inputs are relative to the colocated slice views.
-#[profiling::function]
pub fn sgrproj_solve<T: Pixel>(
set: u8, fi: &FrameInvariants<T>,
integral_image_buffer: &IntegralImageBuffer, input: &PlaneRegion<'_, T>,
@@ -1094,7 +1091,6 @@ pub fn sgrproj_solve<T: Pixel>(
}
}
-#[profiling::function]
fn wiener_stripe_filter<T: Pixel>(
coeffs: [[i8; 3]; 2], fi: &FrameInvariants<T>, crop_w: usize, crop_h: usize,
stripe_w: usize, stripe_h: usize, stripe_x: usize, stripe_y: isize,
@@ -1483,7 +1479,6 @@ impl RestorationState {
}
}
- #[profiling::function]
pub fn lrf_filter_frame<T: Pixel>(
&mut self, out: &mut Frame<T>, pre_cdef: &Frame<T>,
fi: &FrameInvariants<T>,
diff --git a/src/me.rs b/src/me.rs
index 4e7a461..b8ec7a5 100644
--- a/src/me.rs
+++ b/src/me.rs
@@ -382,7 +382,6 @@ impl MotionEstimationSubsets {
}
}
-#[profiling::function]
fn get_subset_predictors(
tile_bo: TileBlockOffset, tile_me_stats: &TileMEStats<'_>,
frame_ref_opt: Option<ReadGuardMEStats<'_>>, ref_frame_id: usize,
@@ -689,7 +688,6 @@ fn refine_subsampled_motion_estimate<T: Pixel>(
}
}
-#[profiling::function]
fn full_pixel_me<T: Pixel>(
fi: &FrameInvariants<T>, ts: &TileStateMut<'_, T>,
org_region: &PlaneRegion<T>, p_ref: &Plane<T>, tile_bo: TileBlockOffset,
@@ -880,7 +878,6 @@ fn sub_pixel_me<T: Pixel>(
);
}
-#[profiling::function]
fn get_best_predictor<T: Pixel>(
fi: &FrameInvariants<T>, po: PlaneOffset, org_region: &PlaneRegion<T>,
p_ref: &Plane<T>, predictors: &[MotionVector], bit_depth: usize,
@@ -951,7 +948,6 @@ const DIAMOND_R1_PATTERN: [MotionVector; 4] = search_pattern!(
/// For each step size, candidate motion vectors are examined for improvement
/// to the current search location. The search location is moved to the best
/// candidate (if any). This is repeated until the search location stops moving.
-#[profiling::function]
fn fullpel_diamond_search<T: Pixel>(
fi: &FrameInvariants<T>, po: PlaneOffset, org_region: &PlaneRegion<T>,
p_ref: &Plane<T>, current: &mut MotionSearchResult, bit_depth: usize,
@@ -1051,7 +1047,6 @@ const SQUARE_REFINE_PATTERN: [MotionVector; 8] = search_pattern!(
///
/// `current` provides the initial search location and serves as
/// the output for the final search results.
-#[profiling::function]
fn hexagon_search<T: Pixel>(
fi: &FrameInvariants<T>, po: PlaneOffset, org_region: &PlaneRegion<T>,
p_ref: &Plane<T>, current: &mut MotionSearchResult, bit_depth: usize,
@@ -1166,7 +1161,6 @@ const UMH_PATTERN: [MotionVector; 16] = search_pattern!(
/// the output for the final search results.
///
/// `me_range` parameter determines how far these stages can search.
-#[profiling::function]
fn uneven_multi_hex_search<T: Pixel>(
fi: &FrameInvariants<T>, po: PlaneOffset, org_region: &PlaneRegion<T>,
p_ref: &Plane<T>, current: &mut MotionSearchResult, bit_depth: usize,
@@ -1307,7 +1301,6 @@ fn uneven_multi_hex_search<T: Pixel>(
/// For each step size, candidate motion vectors are examined for improvement
/// to the current search location. The search location is moved to the best
/// candidate (if any). This is repeated until the search location stops moving.
-#[profiling::function]
fn subpel_diamond_search<T: Pixel>(
fi: &FrameInvariants<T>, po: PlaneOffset, org_region: &PlaneRegion<T>,
_p_ref: &Plane<T>, bit_depth: usize, pmv: [MotionVector; 2], lambda: u32,
@@ -1460,7 +1453,6 @@ fn compute_mv_rd<T: Pixel>(
MVCandidateRD { cost: 256 * sad as u64 + rate as u64 * lambda as u64, sad }
}
-#[profiling::function]
fn full_search<T: Pixel>(
fi: &FrameInvariants<T>, x_lo: isize, x_hi: isize, y_lo: isize, y_hi: isize,
w: usize, h: usize, org_region: &PlaneRegion<T>, p_ref: &Plane<T>,
diff --git a/src/rate.rs b/src/rate.rs
index 2116725..888e6d7 100644
--- a/src/rate.rs
+++ b/src/rate.rs
@@ -719,7 +719,6 @@ impl RCState {
}
// TODO: Separate quantizers for Cb and Cr.
- #[profiling::function]
pub(crate) fn select_qi<T: Pixel>(
&self, ctx: &ContextInner<T>, output_frameno: u64, fti: usize,
maybe_prev_log_base_q: Option<i64>, log_isqrt_mean_scale: i64,
@@ -1068,7 +1067,6 @@ impl RCState {
(log_base_q, log_q)
}
- #[profiling::function]
pub fn update_state(
&mut self, bits: i64, fti: usize, show_frame: bool, log_target_q: i64,
trial: bool, droppable: bool,
diff --git a/src/rdo.rs b/src/rdo.rs
index b86ba7b..ed3764c 100644
--- a/src/rdo.rs
+++ b/src/rdo.rs
@@ -810,7 +810,6 @@ const fn dmv_in_range(mv: MotionVector, ref_mv: MotionVector) -> bool {
}
#[inline]
-#[profiling::function]
fn luma_chroma_mode_rdo<T: Pixel>(
luma_mode: PredictionMode, fi: &FrameInvariants<T>, bsize: BlockSize,
tile_bo: TileBlockOffset, ts: &mut TileStateMut<'_, T>,
@@ -957,7 +956,6 @@ fn luma_chroma_mode_rdo<T: Pixel>(
///
/// - If the best RD found is negative.
/// This should never happen and indicates a development error.
-#[profiling::function]
pub fn rdo_mode_decision<T: Pixel>(
fi: &FrameInvariants<T>, ts: &mut TileStateMut<'_, T>,
cw: &mut ContextWriter, bsize: BlockSize, tile_bo: TileBlockOffset,
@@ -1115,7 +1113,6 @@ pub fn rdo_mode_decision<T: Pixel>(
}
}
-#[profiling::function]
fn inter_frame_rdo_mode_decision<T: Pixel>(
fi: &FrameInvariants<T>, ts: &mut TileStateMut<'_, T>,
cw: &mut ContextWriter, bsize: BlockSize, tile_bo: TileBlockOffset,
@@ -1388,7 +1385,6 @@ fn inter_frame_rdo_mode_decision<T: Pixel>(
best
}
-#[profiling::function]
fn intra_frame_rdo_mode_decision<T: Pixel>(
fi: &FrameInvariants<T>, ts: &mut TileStateMut<'_, T>,
cw: &mut ContextWriter, bsize: BlockSize, tile_bo: TileBlockOffset,
@@ -1587,7 +1583,6 @@ fn intra_frame_rdo_mode_decision<T: Pixel>(
/// # Panics
///
/// - If the block size is invalid for subsampling.
-#[profiling::function]
pub fn rdo_cfl_alpha<T: Pixel>(
ts: &mut TileStateMut<'_, T>, tile_bo: TileBlockOffset, bsize: BlockSize,
luma_tx_size: TxSize, fi: &FrameInvariants<T>,
@@ -1943,7 +1938,6 @@ fn rdo_partition_simple<T: Pixel, W: Writer>(
///
/// - If the best RD found is negative.
/// This should never happen, and indicates a development error.
-#[profiling::function]
pub fn rdo_partition_decision<T: Pixel, W: Writer>(
fi: &FrameInvariants<T>, ts: &mut TileStateMut<'_, T>,
cw: &mut ContextWriter, w_pre_cdef: &mut W, w_post_cdef: &mut W,
@@ -2021,7 +2015,6 @@ pub fn rdo_partition_decision<T: Pixel, W: Writer>(
}
}
-#[profiling::function]
fn rdo_loop_plane_error<T: Pixel>(
base_sbo: TileSuperBlockOffset, offset_sbo: TileSuperBlockOffset,
sb_w: usize, sb_h: usize, fi: &FrameInvariants<T>, ts: &TileStateMut<'_, T>,
@@ -2098,7 +2091,6 @@ fn rdo_loop_plane_error<T: Pixel>(
/// # Panics
///
/// - If both CDEF and LRF are disabled.
-#[profiling::function]
pub fn rdo_loop_decision<T: Pixel, W: Writer>(
base_sbo: TileSuperBlockOffset, fi: &FrameInvariants<T>,
ts: &mut TileStateMut<'_, T>, cw: &mut ContextWriter, w: &mut W,
diff --git a/src/scenechange/fast.rs b/src/scenechange/fast.rs
index 2ae8c18..b6220e6 100644
--- a/src/scenechange/fast.rs
+++ b/src/scenechange/fast.rs
@@ -18,7 +18,6 @@ pub(super) const FAST_THRESHOLD: f64 = 18.0;
impl<T: Pixel> SceneChangeDetector<T> {
/// The fast algorithm detects fast cuts using a raw difference
/// in pixel values between the scaled frames.
- #[profiling::function]
pub(super) fn fast_scenecut(
&mut self, frame1: Arc<Frame<T>>, frame2: Arc<Frame<T>>,
) -> ScenecutResult {
@@ -67,7 +66,6 @@ impl<T: Pixel> SceneChangeDetector<T> {
}
/// Calculates the average sum of absolute difference (SAD) per pixel between 2 planes
- #[profiling::function]
fn delta_in_planes(&self, plane1: &Plane<T>, plane2: &Plane<T>) -> f64 {
let delta = sad_plane::sad_plane(plane1, plane2, self.cpu_feature_level);
diff --git a/src/scenechange/mod.rs b/src/scenechange/mod.rs
index b2c89af..2b576e5 100644
--- a/src/scenechange/mod.rs
+++ b/src/scenechange/mod.rs
@@ -149,7 +149,6 @@ impl<T: Pixel> SceneChangeDetector<T> {
/// to the second frame in `frame_set`.
///
/// This will gracefully handle the first frame in the video as well.
- #[profiling::function]
pub fn analyze_next_frame(
&mut self, frame_set: &[&Arc<Frame<T>>], input_frameno: u64,
previous_keyframe: u64,
diff --git a/src/segmentation.rs b/src/segmentation.rs
index a733398..d97c119 100644
--- a/src/segmentation.rs
+++ b/src/segmentation.rs
@@ -19,7 +19,6 @@ use crate::FrameState;
pub const MAX_SEGMENTS: usize = 8;
-#[profiling::function]
pub fn segmentation_optimize<T: Pixel>(
fi: &FrameInvariants<T>, fs: &mut FrameState<T>,
) {
@@ -159,7 +158,6 @@ fn segmentation_optimize_inner<T: Pixel>(
fs.segmentation.update_threshold(fi.base_q_idx, fi.config.bit_depth);
}
-#[profiling::function]
pub fn select_segment<T: Pixel>(
fi: &FrameInvariants<T>, ts: &TileStateMut<'_, T>, tile_bo: TileBlockOffset,
bsize: BlockSize, skip: bool,
--
2.43.0

Binary file not shown.

@ -0,0 +1,28 @@
--- rav1e-0.7.1/Cargo.toml 1970-01-01T00:00:01+00:00
+++ rav1e-0.7.1/Cargo.toml 2024-10-02T17:35:30.801010+00:00
@@ -335,24 +335,7 @@
unstable = []
wasm = ["wasm-bindgen"]
-[target."cfg(any(decode_test, decode_test_dav1d))".dependencies.system-deps]
-version = "6"
-
-[target."cfg(fuzzing)".dependencies.arbitrary]
-version = "1.3"
-
-[target."cfg(fuzzing)".dependencies.interpolate_name]
-version = "0.2.4"
-
-[target."cfg(fuzzing)".dependencies.libfuzzer-sys]
-version = "0.4.7"
-
-[target."cfg(fuzzing)".dependencies.rand]
-version = "0.8"
-
-[target."cfg(fuzzing)".dependencies.rand_chacha]
-version = "0.3"
-
[target."cfg(unix)".dependencies.signal-hook]
version = "0.3"
optional = true
+

@ -0,0 +1,171 @@
--- rav1e-0.7.1/Cargo.toml 1970-01-01T00:00:01+00:00
+++ rav1e-0.7.1/Cargo.toml 2024-10-02T17:37:50.466711+00:00
@@ -30,8 +30,11 @@
default-run = "rav1e"
description = "The fastest and safest AV1 encoder"
readme = "README.md"
-license = "BSD-2-Clause"
+license = "BSD-2-Clause AND ISC"
repository = "https://github.com/xiph/rav1e/"
+
+[package.metadata.capi.library]
+version_suffix_components = 1
[package.metadata.docs.rs]
no-default-features = true
@@ -72,16 +75,6 @@
"unstable",
]
-[[bench]]
-name = "bench"
-path = "benches/bench.rs"
-harness = false
-required-features = ["bench"]
-
-[dependencies.aom-sys]
-version = "0.3.3"
-optional = true
-
[dependencies.arg_enum_proc_macro]
version = "0.3.4"
@@ -102,10 +95,6 @@
[dependencies.bitstream-io]
version = "2"
-
-[dependencies.byteorder]
-version = "1.5.0"
-optional = true
[dependencies.cfg-if]
version = "1.0"
@@ -133,23 +122,12 @@
version = "0.8"
optional = true
-[dependencies.dav1d-sys]
-version = "0.6.0"
-optional = true
-package = "libdav1d-sys"
-
[dependencies.fern]
version = "0.6"
optional = true
-[dependencies.image]
-version = "0.24.7"
-features = ["png"]
-optional = true
-default-features = false
-
[dependencies.itertools]
-version = "0.12"
+version = "0.13"
[dependencies.ivf]
version = "0.1"
@@ -183,9 +161,6 @@
[dependencies.paste]
version = "1.0"
-[dependencies.profiling]
-version = "1"
-
[dependencies.rayon]
version = "0.1"
default-features = false
@@ -215,25 +190,9 @@
version = "0.8"
optional = true
-[dependencies.tracing]
-version = "0.1.40"
-optional = true
-
-[dependencies.tracing-chrome]
-version = "0.7.1"
-optional = true
-
-[dependencies.tracing-subscriber]
-version = "0.3.18"
-optional = true
-
[dependencies.v_frame]
version = "0.3.7"
-[dependencies.wasm-bindgen]
-version = "0.2.89"
-optional = true
-
[dependencies.y4m]
version = "0.8"
optional = true
@@ -241,9 +200,6 @@
[dev-dependencies.assert_cmd]
version = "2.0"
-[dev-dependencies.criterion]
-version = "0.5"
-
[dev-dependencies.interpolate_name]
version = "0.2.4"
@@ -264,10 +220,6 @@
[dev-dependencies.semver]
version = "1.0"
-
-[build-dependencies.built]
-version = "0.7.1"
-features = []
[build-dependencies.cc]
version = "1.0"
@@ -284,7 +236,6 @@
"nasm-rs",
"cc",
]
-bench = []
binaries = [
"ivf",
"y4m",
@@ -299,22 +250,14 @@
capi = ["scan_fmt"]
channel-api = ["crossbeam"]
check_asm = []
-decode_test = ["aom-sys"]
-decode_test_dav1d = ["dav1d-sys"]
default = [
"binaries",
"asm",
"threading",
"signal_support",
- "git_version",
]
desync_finder = ["backtrace"]
dump_ivf = ["ivf"]
-dump_lookahead_data = [
- "byteorder",
- "image",
-]
-git_version = ["built/git2"]
quick_test = []
scenechange = []
serialize = [
@@ -326,14 +269,7 @@
]
signal_support = ["signal-hook"]
threading = ["rayon/threads"]
-tracing = [
- "profiling/profile-with-tracing",
- "tracing-subscriber",
- "tracing-chrome",
- "dep:tracing",
-]
unstable = []
-wasm = ["wasm-bindgen"]
[target."cfg(unix)".dependencies.signal-hook]
version = "0.3"

@ -0,0 +1,643 @@
## START: Set by rpmautospec
## (rpmautospec version 0.7.2)
## RPMAUTOSPEC: autorelease, autochangelog
%define autorelease(e:s:pb:n) %{?-p:0.}%{lua:
release_number = 4;
base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}"));
print(release_number + base_release_number - 1);
}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}}
## END: Set by rpmautospec
# Generated by rust2rpm 26
%bcond_without check
# Apache-2.0 OR MIT
# Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT
# BSD-2-Clause
# BSD-2-Clause AND ISC
# MIT
# MIT OR Apache-2.0
# Unlicense OR MIT
%global binary_license BSD-2-Clause AND ISC AND MIT AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (Unlicense OR MIT)
# LICENSE.dependencies contains a full license breakdown
%global crate rav1e
Name: rust-rav1e
Version: 0.7.1
Release: %autorelease
Summary: Fastest and safest AV1 encoder
# rav1e is published under the terms of the BSD-2-Clause license,
# with the exception of one file: "src/ext/x86/x86inc.asm" (ISC license)
License: BSD-2-Clause AND ISC
URL: https://crates.io/crates/rav1e
Source: %{crates_source}
# Automatically generated patch to strip dependencies and normalize metadata
Patch: rav1e-fix-metadata-auto.diff
# Manually created patch for downstream crate metadata changes
# * update license expression in crate metadata
# * bump itertools dependency from 0.12 to 0.13
# * drop references to benchmarks
# * drop unused feature for dumping lookahead data and its dependencies
# * drop unused features for profiling and tracing and their dependencies
# * drop WASM-specific wasm-bindgen dependency and wasm feature
# * drop unused, benchmark-only criterion dev-dependency
# * drop unused aom-sys / libdav1d-sys dependencies (decode tests are not run)
# * compatibility fixes for cargo-c v0.9.26 and newer:
# https://github.com/lu-zero/cargo-c/pull/346
# https://github.com/lu-zero/cargo-c/pull/352
Patch: rav1e-fix-metadata.diff
Patch: 0001-remove-references-to-removed-built-and-profiling-cra.patch
BuildRequires: cargo-rpm-macros >= 24
BuildRequires: cargo-c
%global _description %{expand:
The fastest and safest AV1 encoder.}
%description %{_description}
%package -n %{crate}
Summary: %{summary}
License: %{binary_license}
%description -n %{crate} %{_description}
%files -n %{crate}
%license LICENSE
%license PATENTS
%license LICENSE.dependencies
%doc README.md
%{_bindir}/rav1e
%{_bindir}/rav1e-ch
%package -n %{crate}-libs
Summary: Library files for rav1e
License: %{binary_license}
%description -n %{crate}-libs
Library files for rav1e, the fastest and safest AV1 encoder.
%files -n %{crate}-libs
%license LICENSE
%license LICENSE.dependencies
%license PATENTS
%doc README.md
%{_libdir}/librav1e.so.0*
%package -n %{crate}-devel
Summary: %{summary}
License: %{binary_license}
Requires: %{crate}-libs%{?_isa} = %{version}-%{release}
%description -n %{crate}-devel %{_description}
%files -n %{crate}-devel
%{_includedir}/rav1e/
%{_libdir}/librav1e.so
%{_libdir}/pkgconfig/rav1e.pc
%package devel
Summary: %{summary}
BuildArch: noarch
%description devel %{_description}
This package contains library source intended for building other packages which
use the "%{crate}" crate.
%files devel
%license %{crate_instdir}/LICENSE
%license %{crate_instdir}/PATENTS
%doc %{crate_instdir}/README.md
%{crate_instdir}/
%package -n %{name}+default-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+default-devel %{_description}
This package contains library source intended for building other packages which
use the "default" feature of the "%{crate}" crate.
%files -n %{name}+default-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+asm-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+asm-devel %{_description}
This package contains library source intended for building other packages which
use the "asm" feature of the "%{crate}" crate.
%files -n %{name}+asm-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+av-metrics-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+av-metrics-devel %{_description}
This package contains library source intended for building other packages which
use the "av-metrics" feature of the "%{crate}" crate.
%files -n %{name}+av-metrics-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+backtrace-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+backtrace-devel %{_description}
This package contains library source intended for building other packages which
use the "backtrace" feature of the "%{crate}" crate.
%files -n %{name}+backtrace-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+binaries-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+binaries-devel %{_description}
This package contains library source intended for building other packages which
use the "binaries" feature of the "%{crate}" crate.
%files -n %{name}+binaries-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+capi-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+capi-devel %{_description}
This package contains library source intended for building other packages which
use the "capi" feature of the "%{crate}" crate.
%files -n %{name}+capi-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+cc-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+cc-devel %{_description}
This package contains library source intended for building other packages which
use the "cc" feature of the "%{crate}" crate.
%files -n %{name}+cc-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+channel-api-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+channel-api-devel %{_description}
This package contains library source intended for building other packages which
use the "channel-api" feature of the "%{crate}" crate.
%files -n %{name}+channel-api-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+check_asm-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+check_asm-devel %{_description}
This package contains library source intended for building other packages which
use the "check_asm" feature of the "%{crate}" crate.
%files -n %{name}+check_asm-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+clap-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+clap-devel %{_description}
This package contains library source intended for building other packages which
use the "clap" feature of the "%{crate}" crate.
%files -n %{name}+clap-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+clap_complete-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+clap_complete-devel %{_description}
This package contains library source intended for building other packages which
use the "clap_complete" feature of the "%{crate}" crate.
%files -n %{name}+clap_complete-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+console-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+console-devel %{_description}
This package contains library source intended for building other packages which
use the "console" feature of the "%{crate}" crate.
%files -n %{name}+console-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+crossbeam-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+crossbeam-devel %{_description}
This package contains library source intended for building other packages which
use the "crossbeam" feature of the "%{crate}" crate.
%files -n %{name}+crossbeam-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+desync_finder-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+desync_finder-devel %{_description}
This package contains library source intended for building other packages which
use the "desync_finder" feature of the "%{crate}" crate.
%files -n %{name}+desync_finder-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+dump_ivf-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+dump_ivf-devel %{_description}
This package contains library source intended for building other packages which
use the "dump_ivf" feature of the "%{crate}" crate.
%files -n %{name}+dump_ivf-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+fern-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+fern-devel %{_description}
This package contains library source intended for building other packages which
use the "fern" feature of the "%{crate}" crate.
%files -n %{name}+fern-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+ivf-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+ivf-devel %{_description}
This package contains library source intended for building other packages which
use the "ivf" feature of the "%{crate}" crate.
%files -n %{name}+ivf-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+nasm-rs-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+nasm-rs-devel %{_description}
This package contains library source intended for building other packages which
use the "nasm-rs" feature of the "%{crate}" crate.
%files -n %{name}+nasm-rs-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+nom-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+nom-devel %{_description}
This package contains library source intended for building other packages which
use the "nom" feature of the "%{crate}" crate.
%files -n %{name}+nom-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+quick_test-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+quick_test-devel %{_description}
This package contains library source intended for building other packages which
use the "quick_test" feature of the "%{crate}" crate.
%files -n %{name}+quick_test-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+scan_fmt-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+scan_fmt-devel %{_description}
This package contains library source intended for building other packages which
use the "scan_fmt" feature of the "%{crate}" crate.
%files -n %{name}+scan_fmt-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+scenechange-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+scenechange-devel %{_description}
This package contains library source intended for building other packages which
use the "scenechange" feature of the "%{crate}" crate.
%files -n %{name}+scenechange-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+serde-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+serde-devel %{_description}
This package contains library source intended for building other packages which
use the "serde" feature of the "%{crate}" crate.
%files -n %{name}+serde-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+serde-big-array-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+serde-big-array-devel %{_description}
This package contains library source intended for building other packages which
use the "serde-big-array" feature of the "%{crate}" crate.
%files -n %{name}+serde-big-array-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+serialize-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+serialize-devel %{_description}
This package contains library source intended for building other packages which
use the "serialize" feature of the "%{crate}" crate.
%files -n %{name}+serialize-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+signal-hook-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+signal-hook-devel %{_description}
This package contains library source intended for building other packages which
use the "signal-hook" feature of the "%{crate}" crate.
%files -n %{name}+signal-hook-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+signal_support-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+signal_support-devel %{_description}
This package contains library source intended for building other packages which
use the "signal_support" feature of the "%{crate}" crate.
%files -n %{name}+signal_support-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+threading-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+threading-devel %{_description}
This package contains library source intended for building other packages which
use the "threading" feature of the "%{crate}" crate.
%files -n %{name}+threading-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+toml-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+toml-devel %{_description}
This package contains library source intended for building other packages which
use the "toml" feature of the "%{crate}" crate.
%files -n %{name}+toml-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+unstable-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+unstable-devel %{_description}
This package contains library source intended for building other packages which
use the "unstable" feature of the "%{crate}" crate.
%files -n %{name}+unstable-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+y4m-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+y4m-devel %{_description}
This package contains library source intended for building other packages which
use the "y4m" feature of the "%{crate}" crate.
%files -n %{name}+y4m-devel
%ghost %{crate_instdir}/Cargo.toml
%prep
%autosetup -n %{crate}-%{version} -p1
%cargo_prep
%generate_buildrequires
# cargo-c requires all optional dependencies to be available
%cargo_generate_buildrequires -a
%build
%cargo_build -f channel-api,unstable
%cargo_cbuild -f channel-api,unstable
%{cargo_license_summary -f channel-api,unstable}
%{cargo_license -f channel-api,unstable} > LICENSE.dependencies
%install
%cargo_install -f channel-api,unstable
%cargo_cinstall -f channel-api,unstable
rm -v %{buildroot}%{_libdir}/librav1e.a
%if %{with check}
%check
%cargo_test -f channel-api,unstable
%endif
%changelog
* Thu Dec 19 2024 Dmitriy Samoylik <samoylikdv@msvsphere-os.ru> - 0.7.1-4
- Rebuilt for MSVSphere 10
## START: Generated by rpmautospec
* Wed Oct 02 2024 Fabio Valentini <decathorpe@gmail.com> - 0.7.1-4
- Drop unused dump_lookahead_data feature and its dependencies
* Sat Jul 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Thu May 23 2024 Fabio Valentini <decathorpe@gmail.com> - 0.7.1-2
- Rebuild with Rust 1.78 to fix incomplete debuginfo and backtraces
* Sat Feb 03 2024 Fabio Valentini <decathorpe@gmail.com> - 0.7.1-1
- update to version 0.7.1; Fixes RHBZ#2256283
* Fri Jan 26 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.6.6-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Tue Dec 05 2023 Fabio Valentini <decathorpe@gmail.com> - 0.6.6-4
- Compatibility fixes for cargo-c v0.9.26 and newer
* Sat Sep 30 2023 Fabio Valentini <decathorpe@gmail.com> - 0.6.6-3
- Migrate to new cargo_cbuild and cargo_cinstall macros
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.6.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Tue Jun 27 2023 Fabio Valentini <decathorpe@gmail.com> - 0.6.6-1
- Update to version 0.6.6; Fixes RHBZ#2149770
* Fri Feb 17 2023 Fabio Valentini <decathorpe@gmail.com> - 0.5.1-9
- Ensure default Rust compiler flags apply to the shared library build
* Fri Feb 17 2023 Fabio Valentini <decathorpe@gmail.com> - 0.5.1-8
- Disambiguate code which is ambiguous with Rust 1.67+
* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Fri Jan 13 2023 Fabio Valentini <decathorpe@gmail.com> - 0.5.1-6
- Backport upstream patch to fix UB / crash in test code
* Mon Aug 08 2022 Fabio Valentini <decathorpe@gmail.com> - 0.5.1-5
- Remove unused dependencies; split off source-only Rust devel package
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Sat Jun 25 2022 Robert-André Mauchin <zebob.m@gmail.com> - 0.5.1-3
- Fix devel package name
* Thu Jun 23 2022 Robert-André Mauchin <zebob.m@gmail.com> - 0.5.1-2
- Bump dav1d-sys dep
* Sun Jun 19 2022 Robert-André Mauchin <zebob.m@gmail.com> - 0.5.1-1
- Update to 0.5.1 Close: rhbz#2032033
* Tue Feb 22 2022 Fabio Valentini <decathorpe@gmail.com> - 0.5.0-6
- Hack the workaround of the workaround
* Tue Feb 22 2022 Fabio Valentini <decathorpe@gmail.com> - 0.5.0-5
- Work around codegen issues when compiling doctests with LLVM 13
* Mon Feb 21 2022 Fabio Valentini <decathorpe@gmail.com> - 0.5.0-4
- Bump system-deps from 3.1.2 to 6
* Tue Feb 15 2022 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 0.5.0-3
- Rebuild with package notes
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Sun Nov 21 2021 Robert-André Mauchin <zebob.m@gmail.com> - 0.5.0-1
- Update to 0.5.0 Close: rhbz#1991588
* Sat Aug 07 2021 Fabio Valentini <decathorpe@gmail.com> - 0.4.1-4
- Rebuild with crossbeam-deque 0.8.1 / 0.7.4 for CVE-2021-32810
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.4.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Sat Jul 10 12:15:47 CEST 2021 Robert-André Mauchin <zebob.m@gmail.com> - 0.4.1-2
- Add patch to fix https://github.com/xiph/rav1e/issues/2662
* Wed Apr 7 17:07:05 CEST 2021 Robert-André Mauchin <zebob.m@gmail.com> - 0.4.1-1
- Update to 0.4.1
- Close: rhbz#1915864
* Mon Mar 29 16:18:27 CEST 2021 Robert-André Mauchin <zebob.m@gmail.com> - 0.4.0-1
- Update to 0.4.0
- Close: rhbz#1915864
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.4.0~alpha-0.3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Dec 28 13:32:03 CET 2020 Igor Raits <ignatenkobrain@fedoraproject.org> - 0.4.0~alpha-0.2
- Rebuild
* Wed Dec 09 15:17:53 CET 2020 Robert-André Mauchin <zebob.m@gmail.com> - 0.4.0~alpha-0.1
- Update to 0.4.0~alpha
* Sun Dec 06 04:37:40 CET 2020 Robert-André Mauchin <zebob.m@gmail.com> - 0.3.4-3
- Rebuild with new cargo-c to fix pkgconfig includedir
- Fix: rhbz#1902211
* Tue Oct 20 2020 Fabio Valentini <decathorpe@gmail.com> - 0.3.4-2
- Temporarily skip some broken tests on aarch64.
* Tue Oct 20 2020 Fabio Valentini <decathorpe@gmail.com> - 0.3.4-1
- Update to version 0.3.4.
* Wed Aug 26 2020 Josh Stone <jistone@redhat.com> - 0.3.3-3
- Bump paste to 1.0
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Thu Jun 11 2020 Josh Stone <jistone@redhat.com> - 0.3.3-1
- Update to 0.3.3
* Mon Mar 09 17:45:25 CET 2020 Robert-André Mauchin <zebob.m@gmail.com> - 0.3.1-2
- Fix pkgconfig prefix path
* Thu Feb 20 21:15:47 CET 2020 Igor Raits <ignatenkobrain@fedoraproject.org> - 0.3.1-1
- Update to 0.3.1
* Tue Feb 11 01:28:07 CET 2020 Robert-André Mauchin <zebob.m@gmail.com> - 0.3.0-1
- Initial package
## END: Generated by rpmautospec
Loading…
Cancel
Save