Browse Source
This is a standard replacement for Box<dyn Error> which is more efficient (it only occcupies one word) and provides a backtrace of the error. This could be plumbed into &error_abort in the future. Reviewed-by: Zhao Liu <zhao1.liu@intel.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>pull/287/head
7 changed files with 46 additions and 3 deletions
@ -0,0 +1,7 @@ |
|||
[wrap-file] |
|||
directory = anyhow-1.0.98 |
|||
source_url = https://crates.io/api/v1/crates/anyhow/1.0.98/download |
|||
source_filename = anyhow-1.0.98.tar.gz |
|||
source_hash = e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487 |
|||
#method = cargo |
|||
patch_directory = anyhow-1-rs |
|||
@ -0,0 +1,33 @@ |
|||
project('anyhow-1-rs', 'rust', |
|||
meson_version: '>=1.5.0', |
|||
version: '1.0.98', |
|||
license: 'MIT OR Apache-2.0', |
|||
default_options: []) |
|||
|
|||
rustc = meson.get_compiler('rust') |
|||
|
|||
rust_args = ['--cap-lints', 'allow'] |
|||
rust_args += ['--cfg', 'feature="std"'] |
|||
if rustc.version().version_compare('<1.65.0') |
|||
error('rustc version ' + rustc.version() + ' is unsupported. Please upgrade to at least 1.65.0') |
|||
endif |
|||
rust_args += [ '--cfg', 'std_backtrace' ] # >= 1.65.0 |
|||
if rustc.version().version_compare('<1.81.0') |
|||
rust_args += [ '--cfg', 'anyhow_no_core_error' ] |
|||
endif |
|||
|
|||
_anyhow_rs = static_library( |
|||
'anyhow', |
|||
files('src/lib.rs'), |
|||
gnu_symbol_visibility: 'hidden', |
|||
override_options: ['rust_std=2018', 'build.rust_std=2018'], |
|||
rust_abi: 'rust', |
|||
rust_args: rust_args, |
|||
dependencies: [], |
|||
) |
|||
|
|||
anyhow_dep = declare_dependency( |
|||
link_with: _anyhow_rs, |
|||
) |
|||
|
|||
meson.override_dependency('anyhow-1-rs', anyhow_dep) |
|||
Loading…
Reference in new issue