Snap for 5925869 from bf52788ad59868e6da6265310b192f95e5074db9 to sdk-release
Change-Id: I7fc811138a1c0bc338ac05492753c2838f3eb25e
diff --git a/Android.bp b/Android.bp
new file mode 100644
index 0000000..d612393
--- /dev/null
+++ b/Android.bp
@@ -0,0 +1,578 @@
+rust_binary_host {
+ name: "crosvm.experimental",
+ crate_name: "crosvm",
+ edition: "2018",
+ enabled: false,
+ relative_install_path: "x86_64-linux-gnu",
+ srcs: ["src/main.rs"],
+
+ target: {
+ linux_glibc_x86_64: {
+ rlibs: ["libx86_64_rust"],
+ enabled: true,
+ },
+ },
+
+ // Install the crosvm prebuilts as requirements until we're building these as well.
+ required: [
+ "x86_64_linux_gnu_libepoxy.so.0_for_crosvm",
+ "x86_64_linux_gnu_libgbm.so.1_for_crosvm",
+ "x86_64_linux_gnu_libvirglrenderer.so.0_for_crosvm",
+ ],
+
+ features: [
+ "default-no-sandbox",
+ "gpu",
+ ],
+ flags: [
+ "-C overflow-checks=y",
+ "-C panic=abort",
+ "-L device/google/cuttlefish_vmm/x86_64-linux-gnu/bin/",
+ ],
+ ld_flags: [
+ "-Wl,--rpath,\\$$ORIGIN",
+ "-Wl,--rpath,\\$$ORIGIN/../../lib64",
+ ],
+
+ rlibs: [
+ "libassertions",
+ "libarch",
+ "libaudio_streams",
+ "libbit_field",
+ "libbyteorder",
+ "libdata_model",
+ "libdevices",
+ "libgpu_buffer",
+ "libio_jail",
+ "libkernel_cmdline",
+ "libkernel_loader",
+ "libkvm",
+ "libkvm_sys",
+ "libc_rust",
+ "liblibcras",
+ "libmsg_socket",
+ "libnet_util",
+ "libp9",
+ "libqcow",
+ "librand_ish",
+ "libresources",
+ "libsync_rust",
+ "libsys_util",
+ "libvhost",
+ "libvm_control",
+ ],
+ proc_macros: [
+ "libremain",
+ "libenumn",
+ ],
+ shared_libs: [
+ "libminijail",
+ "libcap",
+ ],
+ static_libs: [
+ "libusb",
+ "libdisplay_wl",
+ "libwayland_client",
+ "libffi",
+ "libfdt",
+ ],
+}
+
+rust_library_host_rlib {
+ name: "libvm_control",
+ crate_name: "vm_control",
+ edition: "2018",
+ srcs: ["vm_control/src/lib.rs"],
+
+ features: ["sandboxed-libusb"],
+
+ rlibs: [
+ "libbyteorder",
+ "libdata_model",
+ "libkvm",
+ "libc_rust",
+ "libmsg_socket",
+ "libresources",
+ "libsys_util",
+ ],
+}
+
+rust_library_host_rlib {
+ name: "libnet_sys",
+ crate_name: "net_sys",
+ edition: "2018",
+ srcs: ["net_sys/src/lib.rs"],
+
+ rlibs: ["libsys_util"],
+}
+
+rust_library_host_rlib {
+ name: "libio_jail",
+ crate_name: "io_jail",
+ edition: "2018",
+ srcs: ["io_jail/src/lib.rs"],
+
+ rlibs: ["libc_rust"],
+}
+
+rust_library_host_rlib {
+ name: "libdevices",
+ deny_warnings: false,
+ crate_name: "devices",
+ edition: "2018",
+ srcs: ["devices/src/lib.rs"],
+
+ features: [
+ "gpu",
+ "wl-dmabuf",
+ ],
+
+ rlibs: [
+ "libaudio_streams",
+ "libbit_field",
+ "libbyteorder",
+ "libdata_model",
+ "libgpu_buffer",
+ "libgpu_display",
+ "libgpu_renderer",
+ "libio_jail",
+ "libkvm",
+ "libc_rust",
+ "libmsg_socket",
+ "libnet_sys",
+ "libnet_util",
+ "libp9",
+ "libresources",
+ "libsync_rust",
+ "libsys_util",
+ "libusb_util",
+ "libvhost",
+ "libvirtio_sys",
+ "libvm_control",
+ ],
+ proc_macros: [
+ "libmsg_on_socket_derive",
+ "libenumn",
+ "libremain",
+ ],
+}
+
+rust_library_host_rlib {
+ name: "libnet_util",
+ crate_name: "net_util",
+ edition: "2018",
+ srcs: ["net_util/src/lib.rs"],
+
+ rlibs: [
+ "libc_rust",
+ "libnet_sys",
+ "libsys_util",
+ ],
+}
+
+rust_library_host_rlib {
+ name: "libkvm_sys",
+ crate_name: "kvm_sys",
+ edition: "2018",
+ srcs: ["kvm_sys/src/lib.rs"],
+
+ rlibs: [
+ "libc_rust",
+ "libsys_util",
+ ],
+}
+
+rust_proc_macro {
+ name: "libpoll_token_derive",
+ crate_name: "poll_token_derive",
+ edition: "2018",
+ srcs: ["sys_util/poll_token_derive/poll_token_derive.rs"],
+
+ rlibs: [
+ "libsyn",
+ "libquote",
+ "libproc_macro2",
+ ],
+}
+
+rust_library_host_rlib {
+ name: "libvhost",
+ crate_name: "vhost",
+ edition: "2018",
+ srcs: ["vhost/src/lib.rs"],
+
+ rlibs: [
+ "libassertions",
+ "libc_rust",
+ "libnet_util",
+ "libsys_util",
+ "libvirtio_sys",
+ ],
+}
+
+rust_library_host_rlib {
+ name: "libsys_util",
+ deny_warnings: false,
+ edition: "2018",
+ crate_name: "sys_util",
+ srcs: ["sys_util/src/lib.rs"],
+
+ rlibs: [
+ "libdata_model",
+ "libc_rust",
+ "libsync_rust",
+ "libsyscall_defines",
+ ],
+ proc_macros: ["libpoll_token_derive"],
+}
+
+rust_library_host_rlib {
+ name: "libsyscall_defines",
+ crate_name: "syscall_defines",
+ edition: "2018",
+ srcs: ["syscall_defines/src/lib.rs"],
+}
+
+rust_library_host_rlib {
+ name: "libusb_util",
+ crate_name: "usb_util",
+ edition: "2018",
+ srcs: ["usb_util/src/lib.rs"],
+
+ rlibs: [
+ "libassertions",
+ "libdata_model",
+ "libsync_rust",
+ ],
+}
+
+rust_proc_macro {
+ name: "libbit_field_derive",
+ crate_name: "bit_field_derive",
+ edition: "2018",
+ srcs: ["bit_field/bit_field_derive/bit_field_derive.rs"],
+
+ rlibs: [
+ "libproc_macro2",
+ "libquote",
+ "libsyn",
+ ],
+}
+
+rust_library_host_rlib {
+ name: "libbit_field",
+ crate_name: "bit_field",
+ edition: "2018",
+ srcs: ["bit_field/src/lib.rs"],
+
+ proc_macros: ["libbit_field_derive"],
+}
+
+rust_library_host_rlib {
+ name: "libdata_model",
+ crate_name: "data_model",
+ edition: "2018",
+ srcs: ["data_model/src/lib.rs"],
+
+ rlibs: ["libassertions"],
+}
+
+rust_library_host_rlib {
+ name: "libtempfile",
+ crate_name: "tempfile",
+ edition: "2018",
+ srcs: ["tempfile/src/lib.rs"],
+
+ rlibs: ["librand_ish"],
+}
+
+rust_library_host_rlib {
+ name: "libassertions",
+ crate_name: "assertions",
+ srcs: ["assertions/src/lib.rs"],
+}
+
+rust_library_host_rlib {
+ name: "libarch",
+ crate_name: "arch",
+ edition: "2018",
+ srcs: ["arch/src/lib.rs"],
+
+ rlibs: [
+ "libbyteorder",
+ "libdevices",
+ "libio_jail",
+ "libkernel_cmdline",
+ "libkvm",
+ "libc_rust",
+ "libresources",
+ "libsync_rust",
+ "libsys_util",
+ ],
+}
+
+rust_library_host_rlib {
+ name: "libresources",
+ deny_warnings: false,
+ crate_name: "resources",
+ edition: "2018",
+ srcs: ["resources/src/lib.rs"],
+
+ features: ["wl-dmabuf"],
+
+ rlibs: [
+ "libgpu_buffer",
+ "libc_rust",
+ "libmsg_socket",
+ "libsys_util",
+ ],
+}
+
+rust_library_host_rlib {
+ name: "libvirtio_sys",
+ crate_name: "virtio_sys",
+ edition: "2018",
+ srcs: ["virtio_sys/src/lib.rs"],
+
+ rlibs: ["libsys_util"],
+}
+
+rust_library_host_rlib {
+ name: "libkvm",
+ crate_name: "kvm",
+ edition: "2018",
+ srcs: ["kvm/src/lib.rs"],
+
+ rlibs: [
+ "libkvm_sys",
+ "libmsg_socket",
+ "libc_rust",
+ "libsys_util",
+ ],
+}
+
+rust_library_host_rlib {
+ name: "libgpu_renderer",
+ crate_name: "gpu_renderer",
+ edition: "2018",
+ srcs: ["gpu_renderer/src/lib.rs"],
+
+ rlibs: [
+ "libdata_model",
+ "libc_rust",
+ "libsys_util",
+ ],
+}
+
+rust_library_host_rlib {
+ name: "libmsg_socket",
+ crate_name: "msg_socket",
+ edition: "2018",
+ srcs: ["msg_socket/src/lib.rs"],
+
+ rlibs: [
+ "libdata_model",
+ "libsys_util",
+ ],
+ proc_macros: ["libmsg_on_socket_derive"],
+}
+
+rust_proc_macro {
+ name: "libmsg_on_socket_derive",
+ crate_name: "msg_on_socket_derive",
+ edition: "2018",
+ srcs: ["msg_socket/msg_on_socket_derive/msg_on_socket_derive.rs"],
+
+ rlibs: [
+ "libproc_macro2",
+ "libquote",
+ "libsyn",
+ ],
+}
+
+rust_library_host_rlib {
+ name: "libqcow",
+ crate_name: "qcow",
+ edition: "2018",
+ srcs: ["qcow/src/qcow.rs"],
+
+ rlibs: [
+ "libbyteorder",
+ "libc_rust",
+ "libsys_util",
+ "libdata_model",
+ ],
+ proc_macros: ["libremain"],
+}
+
+rust_proc_macro {
+ name: "libenumn",
+ crate_name: "enumn",
+ edition: "2018",
+ srcs: ["enumn/src/lib.rs"],
+
+ rlibs: [
+ "libproc_macro2",
+ "libquote",
+ "libsyn",
+ ],
+
+}
+
+rust_library_host_rlib {
+ name: "libgpu_buffer",
+ crate_name: "gpu_buffer",
+ edition: "2018",
+ srcs: ["gpu_buffer/src/lib.rs"],
+
+ rlibs: [
+ "libdata_model",
+ "libsys_util",
+ ],
+}
+
+rust_library_host_rlib {
+ name: "libsync_rust",
+ crate_name: "sync",
+ edition: "2018",
+ srcs: ["sync/src/lib.rs"],
+ stem: "libsync",
+}
+
+rust_library_host_rlib {
+ name: "libp9",
+ crate_name: "p9",
+ edition: "2018",
+ srcs: ["p9/src/lib.rs"],
+
+ features: ["trace"],
+
+ rlibs: ["libc_rust"],
+ proc_macros: ["libwire_format_derive"],
+}
+
+rust_proc_macro {
+ name: "libwire_format_derive",
+ crate_name: "wire_format_derive",
+ edition: "2018",
+ srcs: ["p9/wire_format_derive/wire_format_derive.rs"],
+
+ rlibs: [
+ "libproc_macro2",
+ "libquote",
+ "libsyn",
+ ],
+}
+
+rust_library_host_rlib {
+ name: "librand_ish",
+ crate_name: "rand_ish",
+ edition: "2018",
+ srcs: ["rand_ish/src/lib.rs"],
+}
+
+rust_library_host_rlib {
+ name: "libx86_64_rust",
+ crate_name: "x86_64",
+ edition: "2018",
+ srcs: ["x86_64/src/lib.rs"],
+ stem: "libx86_64",
+
+ rlibs: [
+ "libarch",
+ "libassertions",
+ "libbyteorder",
+ "libdata_model",
+ "libdevices",
+ "libio_jail",
+ "libkernel_cmdline",
+ "libkernel_loader",
+ "libkvm",
+ "libkvm_sys",
+ "libc_rust",
+ "libresources",
+ "libsync_rust",
+ "libsys_util",
+ ],
+ proc_macros: ["libremain"],
+ static_libs: ["libhost_cpuid"],
+}
+
+cc_library_host_static {
+ name: "libhost_cpuid",
+ srcs: ["x86_64/host_cpuid.c"],
+}
+
+rust_library_host_rlib {
+ name: "libgpu_display",
+ crate_name: "gpu_display",
+ edition: "2018",
+ srcs: ["gpu_display/src/lib.rs"],
+
+ rlibs: [
+ "libdata_model",
+ "libc_rust",
+ "libsys_util",
+ ],
+ static_libs: ["libdisplay_wl"],
+}
+
+cc_library_host_static {
+ name: "libdisplay_wl",
+ c_std: "c11",
+ srcs: ["gpu_display/src/display_wl.c"],
+
+ generated_sources: ["gpu_display_protocol_sources"],
+ generated_headers: ["gpu_display_client_protocol_headers"],
+ export_generated_headers: ["gpu_display_client_protocol_headers"],
+
+ static_libs: ["libwayland_client"],
+}
+
+wayland_protocol_codegen {
+ name: "gpu_display_protocol_sources",
+ cmd: "$(location wayland_scanner) code < $(in) > $(out)",
+ suffix: ".c",
+ srcs: [
+ "gpu_display/protocol/aura-shell.xml",
+ "gpu_display/protocol/linux-dmabuf-unstable-v1.xml",
+ "gpu_display/protocol/viewporter.xml",
+ "gpu_display/protocol/xdg-shell-unstable-v6.xml",
+ ],
+ tools: ["wayland_scanner"],
+}
+
+wayland_protocol_codegen {
+ name: "gpu_display_client_protocol_headers",
+ cmd: "$(location wayland_scanner) client-header < $(in) > $(out)",
+ suffix: ".h",
+ srcs: [
+ "gpu_display/protocol/aura-shell.xml",
+ "gpu_display/protocol/linux-dmabuf-unstable-v1.xml",
+ "gpu_display/protocol/viewporter.xml",
+ "gpu_display/protocol/xdg-shell-unstable-v6.xml",
+ ],
+ tools: ["wayland_scanner"],
+}
+
+rust_library_host_rlib {
+ name: "libkernel_loader",
+ crate_name: "kernel_loader",
+ edition: "2018",
+ srcs: ["kernel_loader/src/lib.rs"],
+
+ rlibs: [
+ "libsys_util",
+ "libc_rust",
+ ],
+}
+
+rust_library_host_rlib {
+ name: "libkernel_cmdline",
+ deny_warnings: false,
+ crate_name: "kernel_cmdline",
+ edition: "2018",
+ srcs: ["kernel_cmdline/src/kernel_cmdline.rs"],
+
+ rlibs: ["libc_rust"],
+}
diff --git a/OWNERS b/OWNERS
index f4d5b78..fecc05c 100644
--- a/OWNERS
+++ b/OWNERS
@@ -1,5 +1,5 @@
-chirantan@chromium.org
-dgreid@chromium.org
-dverkamp@chromium.org
+adelva@google.com
+chirantan@google.com
+dgreid@google.com
smbarber@chromium.org
zachr@chromium.org