commit:     3144ebf32ee3ea94eaba8ca847968d97d44f190b
Author:     Jakov Smolić <jsmolic <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 11 10:36:02 2023 +0000
Commit:     Jakov Smolić <jsmolic <AT> gentoo <DOT> org>
CommitDate: Tue Apr 18 18:43:57 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3144ebf3

app-emulation/cloud-hypervisor: new package, add 31.0, 9999

- Cloud hypervisor is an open source VMM implemented in rust.

Signed-off-by: Jakov Smolić <jsmolic <AT> gentoo.org>

 app-emulation/cloud-hypervisor/Manifest            |  2 +
 .../cloud-hypervisor/cloud-hypervisor-31.0.ebuild  | 39 +++++++++++++++++++
 .../cloud-hypervisor/cloud-hypervisor-9999.ebuild  | 29 ++++++++++++++
 .../files/cloud-hypervisor-31.0-vendor-config      | 45 ++++++++++++++++++++++
 app-emulation/cloud-hypervisor/metadata.xml        | 11 ++++++
 5 files changed, 126 insertions(+)

diff --git a/app-emulation/cloud-hypervisor/Manifest 
b/app-emulation/cloud-hypervisor/Manifest
new file mode 100644
index 000000000000..5519f9b3e4fc
--- /dev/null
+++ b/app-emulation/cloud-hypervisor/Manifest
@@ -0,0 +1,2 @@
+DIST cloud-hypervisor-31.0-vendor.tar.gz 36783838 BLAKE2B 
6087223f6cf17954bbe81a792233e735672da97e7b83515ce705b6b789afefcdee1d5a6c3a8f9aded27fd842eab0d1c31b1d09c0e56391ba4422ae4360befd5d
 SHA512 
3595445a765a3571fe3597488940f7fa01576063de2324aa7a212f69b09b9fb0163ff922e3f789696702626ca51df4512fe9e60fe0cd59c3ea191c421718bf4f
+DIST cloud-hypervisor-31.0.tar.gz 849675 BLAKE2B 
b88f1cb53fde6085c33e969d508fbccf29d54e2f04cee143340d0a43547a967d7cdea6bc880c24c84e34bfc4a4d8c4e4478aeb54e858d4518e528f07b521b9b3
 SHA512 
9ddb8bce534331f609d00703e1c47e4359723432661aef4e0b920f8b289f13c9fda68d0f3320bcbc80824f699df1e456375b6268355c8a79d69c78e5d7659f52

diff --git a/app-emulation/cloud-hypervisor/cloud-hypervisor-31.0.ebuild 
b/app-emulation/cloud-hypervisor/cloud-hypervisor-31.0.ebuild
new file mode 100644
index 000000000000..0868c1875f6b
--- /dev/null
+++ b/app-emulation/cloud-hypervisor/cloud-hypervisor-31.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Auto-Generated by cargo-ebuild 0.5.4
+
+EAPI=8
+
+CRATES=" "
+inherit cargo
+
+DESCRIPTION="Open source Virtual Machine Monitor (VMM) that runs on top of KVM"
+HOMEPAGE="https://www.cloudhypervisor.org";
+SRC_URI="https://github.com/cloud-hypervisor/cloud-hypervisor/archive/refs/tags/v${PV}.tar.gz
 -> ${P}.tar.gz
+               https://dev.gentoo.org/~jsmolic/distfiles/${P}-vendor.tar.gz";
+
+LICENSE="0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD Boost-1.0 MIT 
MPL-2.0 Unicode-DFS-2016 Unlicense ZLIB"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# rust does not use *FLAGS from make.conf, silence portage warning
+# update with proper path to binaries this crate installs, omit leading /
+QA_FLAGS_IGNORED="usr/bin/${PN}"
+
+src_unpack() {
+       cargo_src_unpack
+       mkdir  "${S}"/{vendor,.cargo} || die
+       ln -s "${WORKDIR}/vendor/"* "${S}"/vendor || die
+       cp "${FILESDIR}"/${P}-vendor-config "${S}"/.cargo/config.toml
+}
+
+src_prepare() {
+       default
+       sed -i 's/strip = true/strip = false/' Cargo.toml || die
+}
+
+src_configure() {
+       cargo_gen_config
+       cargo_src_configure --frozen
+}

diff --git a/app-emulation/cloud-hypervisor/cloud-hypervisor-9999.ebuild 
b/app-emulation/cloud-hypervisor/cloud-hypervisor-9999.ebuild
new file mode 100644
index 000000000000..d305e53758a1
--- /dev/null
+++ b/app-emulation/cloud-hypervisor/cloud-hypervisor-9999.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Auto-Generated by cargo-ebuild 0.5.4
+
+EAPI=8
+
+inherit cargo git-r3
+
+DESCRIPTION="Open source Virtual Machine Monitor (VMM) that runs on top of KVM"
+HOMEPAGE="https://www.cloudhypervisor.org";
+EGIT_REPO_URI="https://github.com/cloud-hypervisor/cloud-hypervisor.git";
+
+LICENSE="0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD Boost-1.0 MIT 
MPL-2.0 Unicode-DFS-2016 Unlicense ZLIB"
+SLOT="0"
+
+# rust does not use *FLAGS from make.conf, silence portage warning
+# update with proper path to binaries this crate installs, omit leading /
+QA_FLAGS_IGNORED="usr/bin/${PN}"
+
+src_unpack() {
+       git-r3_src_unpack
+       cargo_live_src_unpack
+}
+
+src_configure() {
+       cargo_gen_config
+       cargo_src_configure --frozen
+}

diff --git 
a/app-emulation/cloud-hypervisor/files/cloud-hypervisor-31.0-vendor-config 
b/app-emulation/cloud-hypervisor/files/cloud-hypervisor-31.0-vendor-config
new file mode 100644
index 000000000000..b20bf67b611d
--- /dev/null
+++ b/app-emulation/cloud-hypervisor/files/cloud-hypervisor-31.0-vendor-config
@@ -0,0 +1,45 @@
+[source.crates-io]
+replace-with = "vendored-sources"
+
+[source."https://github.com/cloud-hypervisor/kvm-bindings";]
+git = "https://github.com/cloud-hypervisor/kvm-bindings";
+branch = "ch-v0.6.0-tdx"
+replace-with = "vendored-sources"
+
+[source."https://github.com/cloud-hypervisor/versionize_derive";]
+git = "https://github.com/cloud-hypervisor/versionize_derive";
+branch = "ch"
+replace-with = "vendored-sources"
+
+[source."https://github.com/firecracker-microvm/micro-http";]
+git = "https://github.com/firecracker-microvm/micro-http";
+branch = "main"
+replace-with = "vendored-sources"
+
+[source."https://github.com/rust-vmm/acpi_tables";]
+git = "https://github.com/rust-vmm/acpi_tables";
+branch = "main"
+replace-with = "vendored-sources"
+
+[source."https://github.com/rust-vmm/mshv";]
+git = "https://github.com/rust-vmm/mshv";
+branch = "main"
+replace-with = "vendored-sources"
+
+[source."https://github.com/rust-vmm/vfio";]
+git = "https://github.com/rust-vmm/vfio";
+branch = "main"
+replace-with = "vendored-sources"
+
+[source."https://github.com/rust-vmm/vfio-user";]
+git = "https://github.com/rust-vmm/vfio-user";
+branch = "main"
+replace-with = "vendored-sources"
+
+[source."https://github.com/rust-vmm/vm-fdt";]
+git = "https://github.com/rust-vmm/vm-fdt";
+branch = "main"
+replace-with = "vendored-sources"
+
+[source.vendored-sources]
+directory = "vendor"

diff --git a/app-emulation/cloud-hypervisor/metadata.xml 
b/app-emulation/cloud-hypervisor/metadata.xml
new file mode 100644
index 000000000000..81242aa0ae84
--- /dev/null
+++ b/app-emulation/cloud-hypervisor/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+       <maintainer type="person">
+               <email>[email protected]</email>
+               <name>Jakov Smolić</name>
+       </maintainer>
+       <upstream>
+               <remote-id 
type="github">cloud-hypervisor/cloud-hypervisor</remote-id>
+       </upstream>
+</pkgmetadata>

Reply via email to