These are the package versions currently shipped by Fedora. This allows using system packages by setting export MESON_PACKAGE_CACHE_DIR=/usr/share/cargo/registry/ Of course, other distros may place it somewhere else. Ubuntu matches versions on syn and unicode-ident but is a tiny bit off on quote and proc-macro2. However, given how far I was able to bump the versions with only a tiny meson tweak to syn, I think it should work with the Ubuntu versions as well. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26726>
56 lines
1.4 KiB
Meson
56 lines
1.4 KiB
Meson
project(
|
|
'proc-macro2',
|
|
'rust',
|
|
version : '1.0.56',
|
|
license :'MIT OR Apache-2.0',
|
|
)
|
|
|
|
rc = meson.get_compiler('rust')
|
|
|
|
if rc.version().version_compare('< 1.31')
|
|
error('Minimum rustc supported version is 1.31')
|
|
endif
|
|
|
|
rust_args = [
|
|
'--cfg', 'feature="proc-macro"',
|
|
'--cfg', 'feature="default"',
|
|
'--cfg', 'use_proc_macro',
|
|
'--cfg', 'wrap_proc_macro',
|
|
]
|
|
if rc.version().version_compare('< 1.32')
|
|
rust_args += ['--cfg', 'no_libprocmacro_unwind_safe']
|
|
endif
|
|
if rc.version().version_compare('< 1.39')
|
|
rust_args += ['--cfg', 'no_bind_by_move_pattern_guard']
|
|
endif
|
|
if rc.version().version_compare('< 1.44')
|
|
rust_args += ['--cfg', 'no_lexerror_display']
|
|
endif
|
|
if rc.version().version_compare('< 1.45')
|
|
rust_args += ['--cfg', 'no_hygiene']
|
|
endif
|
|
if rc.version().version_compare('< 1.47')
|
|
rust_args += ['--cfg', 'no_ident_new_raw']
|
|
endif
|
|
if rc.version().version_compare('< 1.54')
|
|
rust_args += ['--cfg', 'no_literal_from_str']
|
|
endif
|
|
if rc.version().version_compare('< 1.55')
|
|
rust_args += ['--cfg', 'no_group_open_close']
|
|
endif
|
|
if rc.version().version_compare('< 1.57')
|
|
rust_args += ['--cfg', 'no_is_available']
|
|
endif
|
|
|
|
u_ind = subproject('unicode-ident').get_variable('lib')
|
|
|
|
lib = static_library(
|
|
'proc_macro2',
|
|
'src/lib.rs',
|
|
rust_args : rust_args,
|
|
override_options : ['rust_std=2021', 'build.rust_std=2021'],
|
|
link_with : u_ind,
|
|
rust_abi : 'rust',
|
|
native : true,
|
|
)
|