2022-10-26 09:45:49 +00:00
|
|
|
%rust_arches x86_64 %{ix86} armv7hl aarch64 ppc64 ppc64le riscv64 s390x
|
2019-01-26 07:33:37 +00:00
|
|
|
%version_no_tilde() %{lua:
|
|
|
|
local sep = rpm.expand('%1')
|
|
|
|
local ver = rpm.expand('%2')
|
|
|
|
\
|
|
|
|
if sep == '%1' then
|
|
|
|
sep = '-'
|
|
|
|
end
|
|
|
|
\
|
|
|
|
if ver == '%2' then
|
|
|
|
ver = rpm.expand('%version')
|
|
|
|
end
|
|
|
|
ver = ver:gsub('~', sep)
|
|
|
|
\
|
|
|
|
print(ver)
|
|
|
|
}
|
|
|
|
%__crates_url https://crates.io/api/v1/crates/
|
|
|
|
%crates_source() %{lua:
|
|
|
|
local crate = rpm.expand('%1')
|
|
|
|
local version = rpm.expand('%2')
|
|
|
|
local url = rpm.expand('%__crates_url')
|
|
|
|
\
|
|
|
|
if crate == '%1' then
|
|
|
|
crate = rpm.expand('%real_crate')
|
|
|
|
end
|
|
|
|
if crate == '%real_crate' then
|
|
|
|
crate = rpm.expand('%crate')
|
|
|
|
end
|
|
|
|
if crate == '%crate' then
|
|
|
|
crate = rpm.expand('%name')
|
|
|
|
end
|
|
|
|
\
|
|
|
|
if version == '%2' then
|
|
|
|
version = rpm.expand('%version')
|
|
|
|
end
|
|
|
|
version = version:gsub('~', '-')
|
|
|
|
\
|
|
|
|
print(url .. crate .. '/' .. version .. '/download#/' .. crate .. '-' .. version .. '.crate')
|
|
|
|
}
|
2019-06-08 17:35:38 +00:00
|
|
|
|
|
|
|
# If crate not in _build_crates and _module_build is set, we should skip the build
|
|
|
|
%__cargo_skip_build %{lua:
|
|
|
|
local crate = rpm.expand('%{crate}')
|
|
|
|
local build_crate = false
|
|
|
|
for w in rpm.expand('%{?_build_crates}'):gmatch('%S+') do
|
|
|
|
if w == crate then
|
|
|
|
build_crate = true
|
|
|
|
break
|
|
|
|
end
|
|
|
|
end
|
|
|
|
if (rpm.expand('%{defined _module_build}') ~= '0' and not build_crate) then
|
|
|
|
print(1)
|
|
|
|
else
|
|
|
|
print(0)
|
|
|
|
end}
|