!75 Update to StratoVirt 2.2.0-9

From: @yezengruan 
Reviewed-by: @ooorz 
Signed-off-by: @ooorz
This commit is contained in:
openeuler-ci-bot 2022-10-10 01:17:53 +00:00 committed by Gitee
commit 0658fd80d5
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
2 changed files with 71 additions and 18 deletions

Binary file not shown.

View File

@ -6,18 +6,26 @@
Name: stratovirt Name: stratovirt
Version: 2.2.0 Version: 2.2.0
Release: 1 Release: 9
Summary: StratoVirt is an opensource VMM(Virtual Machine Manager) which aims to perform next generation virtualization. Summary: StratoVirt is an opensource VMM(Virtual Machine Manager) which aims to perform next generation virtualization.
License: Mulan PSL v2 License: MulanPSL-2.0
URL: https://gitee.com/openeuler/StratoVirt URL: https://gitee.com/openeuler/StratoVirt
Source0: %{name}-%{version}.tar.gz Source0: %{name}-%{version}.tar.gz
ExclusiveArch: x86_64 aarch64 ExclusiveArch: x86_64 aarch64
Requires: pixman
Requires: pixman-devel
%ifarch x86_64
Requires: edk2-ovmf
%endif
%ifarch aarch64 %ifarch aarch64
Requires: dtc Requires: dtc
Requires: edk2-aarch64
BuildRequires: dtc-devel BuildRequires: dtc-devel
%endif %endif
@ -25,6 +33,19 @@ BuildRequires: rust
BuildRequires: cargo BuildRequires: cargo
BuildRequires: rust-packaging BuildRequires: rust-packaging
BuildRequires: gcc BuildRequires: gcc
BuildRequires: pixman
BuildRequires: pixman-devel
%ifarch x86_64
%define rust_gnu_target x86_64-unknown-linux-gnu
%define rust_musl_target x86_64-unknown-linux-musl
%endif
%ifarch aarch64
%define rust_gnu_target aarch64-unknown-linux-gnu
%define rust_musl_target aarch64-unknown-linux-musl
%endif
%define _cargo /usr/bin/env CARGO_HOME=.cargo RUSTC_BOOTSTRAP=1 /usr/bin/cargo
%description %description
Based on Rust programming language, StratoVirt is lightweight, efficient and safe. StratoVirt reduces memory resource consumption and improves VM startup speed while retains isolation capability and security capability of traditional virtualization. StratoVirt works with iSulad and Kata container, and can be integrated in Kubernetes ecosystem perfectly. The current version can be applied to microservices or serverless scenarios. StratoVirt reserves interface and design for importing more features, even standard virtualization. Based on Rust programming language, StratoVirt is lightweight, efficient and safe. StratoVirt reduces memory resource consumption and improves VM startup speed while retains isolation capability and security capability of traditional virtualization. StratoVirt works with iSulad and Kata container, and can be integrated in Kubernetes ecosystem perfectly. The current version can be applied to microservices or serverless scenarios. StratoVirt reserves interface and design for importing more features, even standard virtualization.
@ -32,8 +53,10 @@ Based on Rust programming language, StratoVirt is lightweight, efficient and saf
Summary: %{summary} Summary: %{summary}
%files -n stratovirt %files -n stratovirt
%defattr(-,root,root,-)
%{_bindir}/stratovirt %{_bindir}/stratovirt
%{_bindir}/ozone %{_bindir}/ozone
%{_libdir}/stratovirt/static/stratovirt
%prep %prep
%autosetup -p1 %autosetup -p1
@ -43,30 +66,60 @@ Summary: %{summary}
%cargo_generate_buildrequires %cargo_generate_buildrequires
%build %build
%ifarch aarch64
sed -i '/\[build\]/a target="aarch64-unknown-linux-musl"' ./.cargo/config
%endif
%ifarch x86_64
sed -i '/\[build\]/a target="x86_64-unknown-linux-musl"' ./.cargo/config
%endif
sed -i '/\[source.crates-io\]/{n;d}' ./.cargo/config sed -i '/\[source.crates-io\]/{n;d}' ./.cargo/config
sed -i '/\[source.local-registry\]/{n;d}' ./.cargo/config sed -i '/\[source.local-registry\]/{n;d}' ./.cargo/config
sed -i '/\[source.local-registry\]/a directory = "vendor"' ./.cargo/config sed -i '/\[source.local-registry\]/a directory = "vendor"' ./.cargo/config
sed -i '/^rustflags/d' ./.cargo/config
sed -i '/\[build\]/arustflags = \["-Copt-level=3", "-Cdebuginfo=2", "-Clink-arg=-Wl,-z,relro,-z,now", "-Ccodegen-units=1", "--cap-lints=warn", \]' ./.cargo/config
%ifarch aarch64 %ifarch aarch64
sed -i 's/rustflags = \[/rustflags = \["-Clink-arg=-lgcc", /g' ./.cargo/config sed -i 's/rustflags = \[/&"-Clink-arg=-lgcc", /' ./.cargo/config
%endif %endif
%cargo_build -a %{_cargo} build --release -Z avoid-dev-deps --target=%{rust_musl_target} --all-features
sed -i 's/rustflags = \[/&"-Clink-arg=-lpixman-1", /' ./.cargo/config
%{_cargo} build --release -Z avoid-dev-deps --target=%{rust_gnu_target} --all-features
%check
RUST_BACKTRACE=1 cargo test --all -- --nocapture --test-threads=1
%install %install
%cargo_install -a rm -rf %{buildroot}
chmod 555 ${RPM_BUILD_ROOT}/usr/bin/stratovirt install -d %{buildroot}%{_bindir}
chmod 555 ${RPM_BUILD_ROOT}/usr/bin/ozone install -D -m555 ./target/%{rust_gnu_target}/release/stratovirt %{buildroot}%{_bindir}
install -D -m555 ./target/%{rust_musl_target}/release/ozone %{buildroot}%{_bindir}
install -d %{buildroot}%{_libdir}/stratovirt/static
install -D -m555 ./target/%{rust_musl_target}/release/stratovirt %{buildroot}%{_libdir}/stratovirt/static
%changelog %changelog
* Sun Oct 09 2022 yezengruan <yezengruan@huawei.com> - 2.2.0-9
- Unified license name specification
* Tue Sep 20 2022 yezengruan <yezengruan@huawei.com> - 2.2.0-8
- Add cargo test and build Requires edk2
* Fri Sep 16 2022 yezengruan <yezengruan@huawei.com> - 2.2.0-7
- Update to StratoVirt 2.2.0-rc5
* Wed Sep 07 2022 yezengruan <yezengruan@huawei.com> - 2.2.0-6
- Build both the gnu and musl version of stratovirt
* Tue Sep 06 2022 yezengruan <yezengruan@huawei.com> - 2.2.0-5
- Update to StratoVirt 2.2.0-rc4
* Wed Aug 24 2022 yezengruan <yezengruan@huawei.com> - 2.2.0-4
- Delete repeated changes to the rustflags in .cargo/config
* Tue Aug 23 2022 yezengruan <yezengruan@huawei.com> - 2.2.0-3
- Update to StratoVirt 2.2.0-rc3
- Support VNC, usb keyboard, usb tablet, and virtio-gpu
* Sat Aug 13 2022 yezengruan <yezengruan@huawei.com> - 2.2.0-2
- Update to StratoVirt 2.2.0-rc2
- Support migration, vhost-user net hotplug and free page reporting
* Sat Jul 30 2022 yezengruan <yezengruan@huawei.com> - 2.2.0-1 * Sat Jul 30 2022 yezengruan <yezengruan@huawei.com> - 2.2.0-1
- Update to StratoVirt 2.2.0-rc1 - Update to StratoVirt 2.2.0-rc1