summary refs log tree commit diff
path: root/docker
diff options
context:
space:
mode:
authorKeiichi Watanabe <keiichiw@chromium.org>2020-04-01 15:45:56 +0900
committerCommit Bot <commit-bot@chromium.org>2020-04-04 13:49:20 +0000
commitc56bc989668d2d79f2a00d098a24729fc0cd6801 (patch)
tree26aaccb85f96231faf3b4f447cac5cd606d31a0d /docker
parentabf8dabae9d7e2b6916b6a696eb1b278103f2479 (diff)
downloadcrosvm-c56bc989668d2d79f2a00d098a24729fc0cd6801.tar
crosvm-c56bc989668d2d79f2a00d098a24729fc0cd6801.tar.gz
crosvm-c56bc989668d2d79f2a00d098a24729fc0cd6801.tar.bz2
crosvm-c56bc989668d2d79f2a00d098a24729fc0cd6801.tar.lz
crosvm-c56bc989668d2d79f2a00d098a24729fc0cd6801.tar.xz
crosvm-c56bc989668d2d79f2a00d098a24729fc0cd6801.tar.zst
crosvm-c56bc989668d2d79f2a00d098a24729fc0cd6801.zip
docker: Add setup for libvda
Add the following setup for libvda, which will be used by video features
introduced by CL:1973973:

* Pull down platform2 as /platform2
* Create a dummpy libvda.pc file

Note that we don't build libvda.so.

BUG=b:147465619
TEST=build_crosvm.sh

Change-Id: I1f61df57244a13b7df1b7a373d955b6cfe91e188
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/2133987
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Keiichi Watanabe <keiichiw@chromium.org>
Diffstat (limited to 'docker')
-rw-r--r--docker/Dockerfile17
1 files changed, 12 insertions, 5 deletions
diff --git a/docker/Dockerfile b/docker/Dockerfile
index fecc31d..1bd1086 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -110,20 +110,27 @@ RUN git clone https://chromium.googlesource.com/chromiumos/third_party/tpm2 \
     && make -j$(nproc) \
     && cp build/libtpm2.a /lib
 
-# Install librendernodehost
+# PUll down platform2 repositroy and install librendernodehost.
+# Note that we clone the repository outside of /scratch not to be removed
+# because crosvm depends on libvda.
+ENV PLATFORM2_ROOT=/platform2
 ARG PLATFORM2_COMMIT=master
-RUN git clone https://chromium.googlesource.com/chromiumos/platform2 \
-    && cd platform2 \
+RUN git clone https://chromium.googlesource.com/chromiumos/platform2 $PLATFORM2_ROOT \
+    && cd $PLATFORM2_ROOT \
     && git checkout $PLATFORM2_COMMIT \
     && cd rendernodehost \
     && gcc -c src.c -o src.o \
     && ar rcs librendernodehost.a src.o \
-    && cp librendernodehost.a /lib
+    && cp librendernodehost.a /lib \
+    && git clean -f
+
+# Create a dummy pc file for libvda to run 'cargo check' with video features.
+RUN echo "Name: libvda_pc\nDescription:\nVersion:0.1\nLibs: -lvda" > /usr/lib/pkgconfig/libvda.pc
 
 # Set up sysroot from which system_api proto files are built.
 ENV SYSROOT=/sysroot
 RUN mkdir -p $SYSROOT/usr/include/chromeos/dbus/trunks \
-    && cp platform2/trunks/interface.proto \
+    && cp $PLATFORM2_ROOT/trunks/interface.proto \
         $SYSROOT/usr/include/chromeos/dbus/trunks
 
 # Inform pkg-config where libraries we install are placed.