mirror of
https://chromium.googlesource.com/crosvm/crosvm
synced 2024-11-25 05:03:05 +00:00
42b825f740
Instead of requiring crosvm to be checked out via the chromeos manifest to access dependencies in the ChromeOS monorepo, this change adds git submodules to third_party/. The CI scripts and Cargo.toml are updated to use the new paths. BUG=b:194336213 TEST=git clone --recursive https://chromium.googlesource.com/chromiumos/platform/crosvm cd crosvm cargo test ./test_all ./ci/kokoro/simulate_all Change-Id: I9859d18176e21909ac3a140976fbd67cc14129bb Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3049003 Tested-by: kokoro <noreply+kokoro@google.com> Commit-Queue: Dennis Kempin <denniskempin@google.com> Reviewed-by: Chirantan Ekbote <chirantan@chromium.org>
49 lines
1.4 KiB
Docker
49 lines
1.4 KiB
Docker
# Copyright 2021 The Chromium OS Authors. All rights reserved.
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
#
|
|
# Docker container to build crosvm for the host architecture.
|
|
|
|
# Build-argument of the image tag of dependencies to use. Set to the same
|
|
# version as `ci/image_tag`
|
|
ARG TAG
|
|
|
|
# Stage containing VM data to be used later.
|
|
# (COPY --from does not allow the use of ARGs)
|
|
FROM gcr.io/crosvm-packages/crosvm_test_vm_amd64:${TAG} as vm
|
|
|
|
# Main stage
|
|
FROM gcr.io/crosvm-packages/crosvm_base:${TAG}
|
|
|
|
# Install libraries needed to compile crosvm and it's dependencies.
|
|
RUN apt-get install --yes --no-install-recommends \
|
|
libcap-dev \
|
|
libdbus-1-dev \
|
|
libdrm-dev \
|
|
libepoxy-dev \
|
|
libssl-dev \
|
|
qemu-system-x86
|
|
|
|
RUN apt-get install --yes -t testing --no-install-recommends \
|
|
libdrm-dev \
|
|
libepoxy-dev \
|
|
libwayland-dev \
|
|
wayland-protocols
|
|
|
|
# Allow GCC/Rust to find packages and libraries stored on the scratch volume.
|
|
ENV LIBRARY_PATH=/workspace/scratch/lib
|
|
ENV LD_LIBRARY_PATH=/workspace/scratch/lib
|
|
ENV PKG_CONFIG_PATH=/workspace/scratch/lib/pkgconfig
|
|
|
|
# Include test VM inside this container
|
|
COPY --from=vm \
|
|
/workspace/vm/* \
|
|
/workspace/vm/
|
|
COPY --from=vm \
|
|
/root/.ssh /root/.ssh
|
|
|
|
# Setup entrypoint and interactive shell
|
|
WORKDIR /workspace/src/crosvm
|
|
COPY bashrc /root/.bashrc
|
|
COPY entrypoint /workspace
|
|
ENTRYPOINT ["/workspace/entrypoint"]
|