Add I915 minigbm backend for chromeos support

Test: build script works and shows pixels on chromeos
Change-Id: I4fc928d14135849388e82f8c7d11a9d6ddf5762e
diff --git a/aarch64-linux-gnu/BUILD_INFO b/aarch64-linux-gnu/BUILD_INFO
index 2ab5efe..995458c 100644
--- a/aarch64-linux-gnu/BUILD_INFO
+++ b/aarch64-linux-gnu/BUILD_INFO
@@ -1,9 +1,9 @@
 ./src/qemu https://salsa.debian.org/qemu-team/qemu.git c0f9358f2b1adcdc0e29c3d875717391b58fcfc3
-./build/platform/crosvm https://android.googlesource.com/platform/external/crosvm bbd24c5a83014807c8c03aac93d06e9f7d81181c
-./build/third_party/adhd https://android.googlesource.com/platform/external/adhd d410c13e24e855aac4275068565e9112ba91f7ad
-./build/third_party/minijail https://android.googlesource.com/platform/external/minijail 2d69add25d14459e3ef21f3f96b58b3b2bc8882e
+./build/platform/crosvm https://android.googlesource.com/platform/external/crosvm ac83a5996c41c458e2c4bf98d3b3cf1857c92653
+./build/third_party/adhd https://android.googlesource.com/platform/external/adhd d93f1994437a1c85565f01c64ad53eafd0b10971
+./build/third_party/minijail https://android.googlesource.com/platform/external/minijail 7b094ba768d1be344cc72795065354a86e4e645e
 ./build/third_party/virglrenderer https://android.googlesource.com/platform/external/virglrenderer ef72ec3c909204cd620fd67e9131744d1f4ea97d
 ./build/third_party/libepoxy https://android.googlesource.com/platform/external/libepoxy 707f50e680ab4f1861b1e54ca6e2907aaca56c12
 ./build/third_party/minigbm https://android.googlesource.com/platform/external/minigbm 055a6aa3e8274e6689740acc5eb7a4250e05edaa
-./android-cuttlefish https://github.com/google/android-cuttlefish.git 996758314fbc6b9cb92cc69e9a7a0df6ffe55616
+./android-cuttlefish https://github.com/google/android-cuttlefish.git 079d3411e534196045a39eb49393521b031540d3
 ./.cargo/registry/index/github.com-1ecc6299db9ec823  HEAD
diff --git a/aarch64-linux-gnu/bin/crosvm b/aarch64-linux-gnu/bin/crosvm
index a6ce839..253e72d 100755
--- a/aarch64-linux-gnu/bin/crosvm
+++ b/aarch64-linux-gnu/bin/crosvm
Binary files differ
diff --git a/aarch64-linux-gnu/builder-packages.txt b/aarch64-linux-gnu/builder-packages.txt
index 38daa42..6e3122b 100644
--- a/aarch64-linux-gnu/builder-packages.txt
+++ b/aarch64-linux-gnu/builder-packages.txt
@@ -58,7 +58,7 @@
 cross-config	2.6.15-1
 crossbuild-essential-armhf	12.3
 curl	7.52.1-5+deb9u9
-cuttlefish-common	0.9.6
+cuttlefish-common	0.9.8
 dash	0.5.8-2.4
 dbus	1.10.26-0+deb9u1
 dconf-gsettings-backend:arm64	0.26.0-2+b1
@@ -128,13 +128,8 @@
 gdb	7.12-6
 gettext	0.19.8.1-2
 gettext-base	0.19.8.1-2
-gir1.2-atk-1.0:arm64	2.22.0-1
-gir1.2-atspi-2.0:arm64	2.22.0-6+deb9u1
-gir1.2-freedesktop:arm64	1.50.0-1+b1
-gir1.2-gdkpixbuf-2.0:arm64	2.36.5-2+deb9u2
 gir1.2-glib-2.0:arm64	1.50.0-1+b1
 gir1.2-packagekitglib-1.0	1.1.5-2+deb9u1
-gir1.2-pango-1.0:arm64	1.40.5-1
 git	1:2.11.0-3+deb9u4
 git-man	1:2.11.0-3+deb9u4
 glib-networking:arm64	2.50.0-1+b1
@@ -147,11 +142,9 @@
 grep	2.27-2
 groff-base	1.22.3-9
 gsettings-desktop-schemas	3.22.0-1
-gtk-update-icon-cache	3.22.11-1
 gzip	1.6-5+b1
 haveged	1.9.1-5+deb9u1
 hdparm	9.51+ds-1+deb9u1
-hicolor-icon-theme	0.15-1
 hostapd	3:2.7-99~armbian5.78.190416+1
 hostname	3.18+b1
 html2text	1.3.2a-18+b2
@@ -198,22 +191,12 @@
 libasound2-dev:arm64	1.1.3-5
 libassuan0:arm64	2.4.3-2
 libasyncns0:arm64	0.8-6
-libatk-bridge2.0-0:arm64	2.22.0-2
-libatk-bridge2.0-dev:arm64	2.22.0-2
-libatk1.0-0:arm64	2.22.0-1
-libatk1.0-data	2.22.0-1
-libatk1.0-dev:arm64	2.22.0-1
 libatomic1:arm64	6.3.0-18+deb9u1
 libatomic1-armhf-cross	6.3.0-18cross1
-libatspi2.0-0:arm64	2.22.0-6+deb9u1
-libatspi2.0-dev:arm64	2.22.0-6+deb9u1
 libattr1:arm64	1:2.4.47-2+b2
 libattr1-dev:arm64	1:2.4.47-2+b2
 libaudit-common	1:2.6.7-2
 libaudit1:arm64	1:2.6.7-2
-libavahi-client3:arm64	0.6.32-2
-libavahi-common-data:arm64	0.6.32-2
-libavahi-common3:arm64	0.6.32-2
 libbind9-140:arm64	1:9.10.3.dfsg.P4-12.3+deb9u4
 libbison-dev:arm64	2:3.0.4.dfsg-1+b1
 libblkid1:arm64	2.29.2-1+deb9u1
@@ -240,10 +223,6 @@
 libcaca0:arm64	0.99.beta19-2+b2
 libcacard-dev:arm64	1:2.5.0-3
 libcacard0:arm64	1:2.5.0-3
-libcairo-gobject2:arm64	1.14.8-1
-libcairo-script-interpreter2:arm64	1.14.8-1
-libcairo2:arm64	1.14.8-1
-libcairo2-dev	1.14.8-1
 libcap-dev:arm64	1:2.25-1
 libcap-ng-dev	0.7.7-3+b1
 libcap-ng0:arm64	0.7.7-3+b1
@@ -255,23 +234,19 @@
 libcc1-0:arm64	6.3.0-18+deb9u1
 libclang-common-3.8-dev	1:3.8.1-24
 libclang1-3.8:arm64	1:3.8.1-24
-libcolord2:arm64	1.3.3-2
 libcomerr2:arm64	1.43.4-2
 libconfig-auto-perl	0.44-1
 libconfig-inifiles-perl	2.94-1
 libcpufreq0	008-1+b1
 libcroco3:arm64	0.6.11-3
 libcryptsetup4:arm64	2:1.7.3-4
-libcups2:arm64	2.2.1-8+deb9u3
 libcurl3:arm64	7.52.1-5+deb9u9
 libcurl3-gnutls:arm64	7.52.1-5+deb9u9
 libcurl4-gnutls-dev:arm64	7.52.1-5+deb9u9
 libcwidget3v5:arm64	0.5.17-4+b1
 libdaemon0:arm64	0.14-6
-libdatrie1:arm64	0.2.10-4+b1
 libdb5.3:arm64	5.3.28-12+deb9u1
 libdbus-1-3:arm64	1.10.26-0+deb9u1
-libdbus-1-dev:arm64	1.10.26-0+deb9u1
 libdbus-glib-1-2:arm64	0.108-2
 libdconf1:arm64	0.26.0-2+b1
 libdebconfclient0:arm64	0.227
@@ -288,7 +263,6 @@
 libdrm-radeon1:arm64	2.4.74-1
 libdrm-tegra0:arm64	2.4.74-1
 libdrm2:arm64	2.4.74-1
-libdrm2:armhf	2.4.74-1
 libedit2:arm64	3.1-20160903-3
 libegl1-mesa:arm64	13.0.6-1+b2
 libegl1-mesa-dev:arm64	13.0.6-1+b2
@@ -296,8 +270,6 @@
 liberror-perl	0.17024-1
 libestr0	0.1.10-2
 libexpat1:arm64	2.2.0-2+deb9u1
-libexpat1:armhf	2.2.0-2+deb9u1
-libexpat1-dev:arm64	2.2.0-2+deb9u1
 libexporter-tiny-perl	0.042-1
 libf2fs0:arm64	1.7.0-1.1
 libfakeroot:arm64	1.21-3.1
@@ -307,16 +279,11 @@
 libfdt1:arm64	1.4.2-1
 libfdt1:armhf	1.4.2-1
 libffi6:arm64	3.2.1-6
-libffi6:armhf	3.2.1-6
 libfftw3-single3:arm64	3.3.5-3
 libfile-homedir-perl	1.00-1
 libfile-stripnondeterminism-perl	0.034-1
 libfile-which-perl	1.21-1
 libflac8:arm64	1.3.2-1
-libfontconfig1:arm64	2.11.0-6.7+b1
-libfontconfig1-dev:arm64	2.11.0-6.7+b1
-libfreetype6:arm64	2.6.3-3.2
-libfreetype6-dev	2.6.3-3.2
 libfuse2:arm64	2.9.7-1+deb9u2
 libgbm1:arm64	13.0.6-1+b2
 libgcc-6-dev:arm64	6.3.0-18+deb9u1
@@ -329,8 +296,6 @@
 libgcrypt20-dev	1.7.6-2+deb9u3
 libgdbm3:arm64	1.8.3-14
 libgdk-pixbuf2.0-0:arm64	2.36.5-2+deb9u2
-libgdk-pixbuf2.0-common	2.36.5-2+deb9u2
-libgdk-pixbuf2.0-dev	2.36.5-2+deb9u2
 libgeoip1:arm64	1.6.9-4
 libgflags-dev	2.1.2-4
 libgflags2v5	2.1.2-4
@@ -361,18 +326,11 @@
 libgpg-error-dev	1.26-2
 libgpg-error0:arm64	1.26-2
 libgpm2:arm64	1.20.4-6.2+b1
-libgraphite2-3:arm64	1.3.10-1
-libgraphite2-dev	1.3.10-1
 libgssapi-krb5-2:arm64	1.15-1+deb9u1
 libgtk-3-common	3.22.11-1
 libgudev-1.0-0:arm64	230-3
-libharfbuzz-dev:arm64	1.4.2-1
-libharfbuzz-gobject0:arm64	1.4.2-1
-libharfbuzz-icu0:arm64	1.4.2-1
-libharfbuzz0b:arm64	1.4.2-1
 libhavege1:arm64	1.9.1-5+deb9u1
 libhogweed4:arm64	3.3-1+b2
-libice-dev:arm64	2:1.0.9-2
 libice6:arm64	2:1.0.9-2
 libicu-dev	57.1-6+deb9u2
 libicu57:arm64	57.1-6+deb9u2
@@ -394,12 +352,9 @@
 libitm1:arm64	6.3.0-18+deb9u1
 libiw30:arm64	30~pre9-12+b1
 libjansson4:arm64	2.9-1
-libjbig0:arm64	2.1-3.1+b2
 libjpeg-dev	1:1.5.1-2
 libjpeg62-turbo:arm64	1:1.5.1-2
 libjpeg62-turbo-dev:arm64	1:1.5.1-2
-libjson-glib-1.0-0:arm64	1.2.6-1
-libjson-glib-1.0-common	1.2.6-1
 libjsoncpp-dev:arm64	1.7.4-3
 libjsoncpp1:arm64	1.7.4-3
 libk5crypto3:arm64	1.15-1+deb9u1
@@ -409,7 +364,6 @@
 libkrb5-3:arm64	1.15-1+deb9u1
 libkrb5support0:arm64	1.15-1+deb9u1
 libksba8:arm64	1.3.5-2
-liblcms2-2:arm64	2.8-4+deb9u1
 libldap-2.4-2:arm64	2.4.44+dfsg-5+deb9u2
 libldap-common	2.4.44+dfsg-5+deb9u2
 liblist-moreutils-perl	0.416-1+b1
@@ -467,20 +421,10 @@
 libpam-runtime	1.1.8-3.6
 libpam-systemd:arm64	232-25+deb9u11
 libpam0g:arm64	1.1.8-3.6
-libpango-1.0-0:arm64	1.40.5-1
-libpango1.0-dev	1.40.5-1
-libpangocairo-1.0-0:arm64	1.40.5-1
-libpangoft2-1.0-0:arm64	1.40.5-1
-libpangoxft-1.0-0:arm64	1.40.5-1
 libparted2:arm64	3.2-17
 libpcap0.8:arm64	1.8.1-3
 libpci3:arm64	1:3.5.2-1
 libpcre16-3:arm64	2:8.39-3
-libpcre2-16-0:arm64	10.22-3
-libpcre2-32-0:arm64	10.22-3
-libpcre2-8-0:arm64	10.22-3
-libpcre2-dev:arm64	10.22-3
-libpcre2-posix0:arm64	10.22-3
 libpcre3:arm64	2:8.39-3
 libpcre3-dev:arm64	2:8.39-3
 libpcre32-3:arm64	2:8.39-3
@@ -489,8 +433,6 @@
 libperl5.24:arm64	5.24.1-3+deb9u5
 libpipeline1:arm64	1.4.1-2
 libpixman-1-0:arm64	0.34.0-1
-libpixman-1-dev	0.34.0-1
-libpng-dev:arm64	1.6.28-1
 libpng16-16:arm64	1.6.28-1
 libpolkit-agent-1-0:arm64	0.105-18+deb9u1
 libpolkit-backend-1-0:arm64	0.105-18+deb9u1
@@ -521,9 +463,6 @@
 libreadline5:arm64	5.2+dfsg-3+b1
 libreadline7:arm64	7.0-3
 libregexp-assemble-perl	0.36-1
-librest-0.7-0:arm64	0.8.0-2
-librsvg2-2:arm64	2.40.16-1+b1
-librsvg2-common:arm64	2.40.16-1+b1
 librtmp1:arm64	2.4+20151223.gitfa8646d.1-1+b1
 libsamplerate0:arm64	0.1.8-8+b2
 libsasl2-2:arm64	2.1.27~101-g0780600+dfsg-3
@@ -539,11 +478,9 @@
 libsigc++-2.0-0v5:arm64	2.10.0-1
 libsigsegv2:arm64	2.10-5
 libslang2:arm64	2.3.1-5
-libsm-dev:arm64	2:1.2.2-1+b3
 libsm6:arm64	2:1.2.2-1+b3
 libsmartcols1:arm64	2.29.2-1+deb9u1
 libsndfile1:arm64	1.0.27-3
-libsoup-gnome2.4-1:arm64	2.56.0-2+deb9u2
 libsoup2.4-1:arm64	2.56.0-2+deb9u2
 libsqlite3-0:arm64	3.16.2-5+deb9u1
 libss2:arm64	1.43.4-2
@@ -567,9 +504,6 @@
 libtext-iconv-perl	1.7-5+b3
 libtext-unidecode-perl	1.30-1
 libtext-wrapi18n-perl	0.06-7.1
-libthai-data	0.1.26-1
-libthai0:arm64	0.1.26-1
-libtiff5:arm64	4.0.8-2+deb9u4
 libtimedate-perl	2.3000-2
 libtinfo-dev:arm64	6.0+20161126-1+deb9u2
 libtinfo5:arm64	6.0+20161126-1+deb9u2
@@ -594,12 +528,10 @@
 libvte-2.91-common	0.46.1-1
 libwayland-bin	1.12.0-1+deb9u1
 libwayland-client0:arm64	1.12.0-1+deb9u1
-libwayland-client0:armhf	1.12.0-1+deb9u1
 libwayland-cursor0:arm64	1.12.0-1+deb9u1
 libwayland-dev:arm64	1.12.0-1+deb9u1
 libwayland-egl1-mesa:arm64	13.0.6-1+b2
 libwayland-server0:arm64	1.12.0-1+deb9u1
-libwayland-server0:armhf	1.12.0-1+deb9u1
 libwrap0:arm64	7.6.q-26
 libwrap0-dev:arm64	7.6.q-26
 libx11-6:arm64	2:1.6.4-3+deb9u1
@@ -624,18 +556,12 @@
 libxcb-render0-dev:arm64	1.12-1
 libxcb-shape0:arm64	1.12-1
 libxcb-shape0-dev:arm64	1.12-1
-libxcb-shm0:arm64	1.12-1
-libxcb-shm0-dev:arm64	1.12-1
 libxcb-sync-dev:arm64	1.12-1
 libxcb-sync1:arm64	1.12-1
 libxcb-xfixes0:arm64	1.12-1
 libxcb-xfixes0-dev:arm64	1.12-1
 libxcb1:arm64	1.12-1
 libxcb1-dev:arm64	1.12-1
-libxcomposite-dev:arm64	1:0.4.4-2
-libxcomposite1:arm64	1:0.4.4-2
-libxcursor-dev:arm64	1:1.1.14-1+deb9u2
-libxcursor1:arm64	1:1.1.14-1+deb9u2
 libxdamage-dev:arm64	1:1.1.4-2+b3
 libxdamage1:arm64	1:1.1.4-2+b3
 libxdmcp-dev:arm64	1:1.1.2-3
@@ -644,14 +570,7 @@
 libxext6:arm64	2:1.3.3-1+b2
 libxfixes-dev:arm64	1:5.0.3-1
 libxfixes3:arm64	1:5.0.3-1
-libxft-dev	2.3.2-1+b2
-libxft2:arm64	2.3.2-1+b2
-libxi-dev:arm64	2:1.7.9-1
 libxi6:arm64	2:1.7.9-1
-libxinerama-dev:arm64	2:1.1.3-1+b3
-libxinerama1:arm64	2:1.1.3-1+b3
-libxkbcommon-dev	0.7.1-2~deb9u1
-libxkbcommon0:arm64	0.7.1-2~deb9u1
 libxml-libxml-perl	2.0128+dfsg-1+deb9u1
 libxml-namespacesupport-perl	1.11-1
 libxml-sax-base-perl	1.07-1
@@ -659,14 +578,9 @@
 libxml-simple-perl	2.22-1
 libxml2:arm64	2.9.4+dfsg1-2.2+deb9u2
 libxml2-dev:arm64	2.9.4+dfsg1-2.2+deb9u2
-libxrandr-dev:arm64	2:1.5.1-1
-libxrandr2:arm64	2:1.5.1-1
-libxrender-dev:arm64	1:0.9.10-1
-libxrender1:arm64	1:0.9.10-1
 libxshmfence-dev:arm64	1.2-1+b2
 libxshmfence1:arm64	1.2-1+b2
 libxtables12:arm64	1.6.0+snapshot20161117-6
-libxtst-dev:arm64	2:1.2.3-1
 libxtst6:arm64	2:1.2.3-1
 libxxf86vm-dev:arm64	1:1.1.4-1+b2
 libxxf86vm1:arm64	1:1.1.4-1+b2
@@ -709,9 +623,6 @@
 nocache	1.0-1
 ntfs-3g	1:2016.2.22AR.1+dfsg-1+deb9u1
 ntp	1:4.2.8p10+dfsg-3+deb9u2
-openbios-ppc	1.1.git20161120-2
-openbios-sparc	1.1.git20161120-2
-openhackware	0.4.1+git-20140423.c559da7c-4
 openssh-client	1:7.4p1-10+deb9u6
 openssh-server	1:7.4p1-10+deb9u6
 openssh-sftp-server	1:7.4p1-10+deb9u6
@@ -771,12 +682,10 @@
 python3-software-properties	0.96.20.2-1
 python3.5	3.5.3-1+deb9u1
 python3.5-minimal	3.5.3-1+deb9u1
-qemu-kvm:amd64	1:2.8+dfsg-6+deb9u5
 qemu-system-common	1:2.8+dfsg-6+deb9u5
-qemu-system-misc	1:2.8+dfsg-6+deb9u5
 qemu-system-x86	1:2.8+dfsg-6+deb9u5
 qemu-user	1:2.8+dfsg-6+deb9u5
-qemu-user-binfmt	1:2.8+dfsg-6+deb9u5
+qemu-user-static	1:2.8+dfsg-6+deb9u5
 qemu-utils	1:2.8+dfsg-6+deb9u5
 qrencode	3.4.4-1+b2
 readline-common	7.0-3
@@ -827,14 +736,12 @@
 vim-runtime	2:8.0.0197-4+deb9u1
 vim-tiny	2:8.0.0197-4+deb9u1
 vlan	1.9-3.2+b1
-wayland-protocols	1.7-1
 wget	1.18-5+deb9u3
 whiptail	0.52.19-1+b1
 wireless-regdb	2016.06.10-1
 wireless-tools	30~pre9-12+b1
 wpasupplicant	2:2.4-1+deb9u3
 x11-common	1:7.7+19
-x11proto-composite-dev	1:0.4.2-2
 x11proto-core-dev	7.0.31-1
 x11proto-damage-dev	1:1.2.1-2
 x11proto-dri2-dev	2.8-2
@@ -842,12 +749,8 @@
 x11proto-gl-dev	1.4.17-1
 x11proto-input-dev	2.3.2-1
 x11proto-kb-dev	1.0.7-1
-x11proto-randr-dev	1.5.0-1
-x11proto-record-dev	1.14.2-1
-x11proto-render-dev	2:0.11.1-2
 x11proto-xext-dev	7.3.0-1
 x11proto-xf86vidmode-dev	2.3.1-2
-x11proto-xinerama-dev	1.2.1-2
 xfslibs-dev	4.9.0+nmu1
 xfsprogs	4.9.0+nmu1
 xkb-data	2.19-1+deb9u1
diff --git a/aarch64-linux-gnu/lib/libgbm.so.1 b/aarch64-linux-gnu/lib/libgbm.so.1
index 0d56458..7efd485 100755
--- a/aarch64-linux-gnu/lib/libgbm.so.1
+++ b/aarch64-linux-gnu/lib/libgbm.so.1
Binary files differ
diff --git a/rebuild.sh b/rebuild.sh
index 9e307e9..9a7541a 100755
--- a/rebuild.sh
+++ b/rebuild.sh
@@ -15,15 +15,15 @@
   "" "IP address or DNS name of an ARM system to do the secondary build"
 DEFINE_string arm_user \
   "vsoc-01" "User to invoke on the ARM system"
-DEFINE_string build_instance \
-  "${USER}-build" "Instance name to create for the build" "i"
-DEFINE_string build_user cuttlefish_crosvm_builder \
-  "User name to use on GCE when doing the build"
 DEFINE_string project "$(gcloud config get-value project)" "Project to use" "p"
 DEFINE_string source_image_family debian-9 "Image familty to use as the base" \
   "s"
 DEFINE_string source_image_project debian-cloud \
   "Project holding the base image" "m"
+DEFINE_string x86_instance \
+  "${USER}-build" "Instance name to create for the build" "i"
+DEFINE_string x86_user cuttlefish_crosvm_builder \
+  "User name to use on GCE when doing the build"
 DEFINE_string zone "$(gcloud config get-value compute/zone)" "Zone to use" "z"
 
 SSH_FLAGS=(${INTERNAL_IP})
@@ -52,54 +52,56 @@
   if [[ "${fail}" -ne 0 ]]; then
     exit "${fail}"
   fi
-  project_zone_flags=(--project="${FLAGS_project}" --zone="${FLAGS_zone}")
-  delete_instances=("${FLAGS_build_instance}")
-  gcloud compute instances delete -q \
-    "${project_zone_flags[@]}" \
-    "${delete_instances[@]}" || \
-      echo Not running
-  gcloud compute instances create \
-    "${project_zone_flags[@]}" \
-    --boot-disk-size=200GB \
-    --machine-type=n1-standard-4 \
-    --image-family="${FLAGS_source_image_family}" \
-    --image-project="${FLAGS_source_image_project}" \
-    "${FLAGS_build_instance}"
-  wait_for_instance "${FLAGS_build_instance}"
-  # beta for the --internal-ip flag that may be passed via SSH_FLAGS
-  gcloud beta compute scp "${SSH_FLAGS[@]}" \
-    "${project_zone_flags[@]}" \
-    "${source_files[@]}" \
-    "${FLAGS_build_user}@${FLAGS_build_instance}:"
-  gcloud compute ssh "${SSH_FLAGS[@]}" \
-    "${project_zone_flags[@]}" \
-    "${FLAGS_build_user}@${FLAGS_build_instance}" -- \
-      ./rebuild_gce.sh
-  gcloud beta compute scp --recurse "${SSH_FLAGS[@]}" \
-    "${project_zone_flags[@]}" \
-    "${FLAGS_build_user}@${FLAGS_build_instance}":x86_64-linux-gnu \
-    "${ANDROID_BUILD_TOP}/device/google/cuttlefish_vmm"
-  gcloud beta compute scp "${SSH_FLAGS[@]}" \
-    "${project_zone_flags[@]}" \
-    "${FLAGS_build_user}@${FLAGS_build_instance}":clean-source.tgz \
-    "${ANDROID_BUILD_TOP}/device/google/cuttlefish_vmm"
-  gcloud compute disks describe \
-    "${project_zone_flags[@]}" "${FLAGS_build_instance}" | \
-      grep ^sourceImage: > "${DIR}"/x86_64-linux-gnu/builder_image.txt
+  if [[ -n "${FLAGS_x86_instance}" ]]; then
+    project_zone_flags=(--project="${FLAGS_project}" --zone="${FLAGS_zone}")
+    delete_instances=("${FLAGS_x86_instance}")
+    gcloud compute instances delete -q \
+      "${project_zone_flags[@]}" \
+      "${delete_instances[@]}" || \
+        echo Not running
+    gcloud compute instances create \
+      "${project_zone_flags[@]}" \
+      --boot-disk-size=200GB \
+      --machine-type=n1-standard-4 \
+      --image-family="${FLAGS_source_image_family}" \
+      --image-project="${FLAGS_source_image_project}" \
+      "${FLAGS_x86_instance}"
+    wait_for_instance "${FLAGS_x86_instance}"
+    # beta for the --internal-ip flag that may be passed via SSH_FLAGS
+    gcloud beta compute scp "${SSH_FLAGS[@]}" \
+      "${project_zone_flags[@]}" \
+      "${source_files[@]}" \
+      "${FLAGS_x86_user}@${FLAGS_x86_instance}:"
+    gcloud compute ssh "${SSH_FLAGS[@]}" \
+      "${project_zone_flags[@]}" \
+      "${FLAGS_x86_user}@${FLAGS_x86_instance}" -- \
+        ./rebuild_gce.sh
+    gcloud beta compute scp --recurse "${SSH_FLAGS[@]}" \
+      "${project_zone_flags[@]}" \
+      "${FLAGS_x86_user}@${FLAGS_x86_instance}":x86_64-linux-gnu \
+      "${ANDROID_BUILD_TOP}/device/google/cuttlefish_vmm"
+    gcloud beta compute scp "${SSH_FLAGS[@]}" \
+      "${project_zone_flags[@]}" \
+      "${FLAGS_x86_user}@${FLAGS_x86_instance}":clean-source.tgz \
+      "${ANDROID_BUILD_TOP}/device/google/cuttlefish_vmm"
+    gcloud compute disks describe \
+      "${project_zone_flags[@]}" "${FLAGS_x86_instance}" | \
+        grep ^sourceImage: > "${DIR}"/x86_64-linux-gnu/builder_image.txt
+  fi
   if [[ -n "${FLAGS_arm_system}" ]]; then
     scp \
       "${source_files[@]}" \
       "${ANDROID_BUILD_TOP}/device/google/cuttlefish_vmm/clean-source.tgz" \
       "${FLAGS_arm_user}@${FLAGS_arm_system}:"
-    ssh "${FLAGS_arm_user}@${FLAGS_arm_system}" -- \
+    ssh -t "${FLAGS_arm_user}@${FLAGS_arm_system}" -- \
         ./rebuild_gce.sh secondary_build
-    scp -r "${FLAGS_build_user}@${FLAGS_build_instance}":arm64-linux-gnu \
+    scp -r "${FLAGS_arm_user}@${FLAGS_arm_system}":aarch64-linux-gnu \
       "${ANDROID_BUILD_TOP}/device/google/cuttlefish_vmm"
   fi
   exit 0
   gcloud compute instances delete -q \
     "${project_zone_flags[@]}" \
-    "${FLAGS_build_instance}"
+    "${FLAGS_x86_instance}"
 }
 
 FLAGS "$@" || exit 1
diff --git a/rebuild_gce.sh b/rebuild_gce.sh
index 73d34ca..40a6a91 100755
--- a/rebuild_gce.sh
+++ b/rebuild_gce.sh
@@ -114,7 +114,17 @@
   cd "${THIRD_PARTY_ROOT}/minigbm"
   # The gbm used by upstream linux distros is not compatible with crosvm, which must use Chrome OS's
   # minigbm.
-  DESTDIR="${HOME}" make -j install
+  local cpp_flags=()
+  local make_flags=()
+  local minigbm_drv=(${MINIGBM_DRV})
+  for drv in "${minigbm_drv[@]}"; do
+    cpp_flags+=(-D"DRV_${drv}")
+    make_flags+=("DRV_${drv}"=1)
+  done
+  DESTDIR="${HOME}" make -j install \
+    "${make_flags[@]}" \
+    CPPFLAGS="${cpp_flags[*]}" \
+    PKG_CONFIG=pkg-config
   cp ${HOME}/lib/libgbm.so.1 "${LIB_PATH}/"
 
   cd "${THIRD_PARTY_ROOT}/libepoxy"
@@ -195,7 +205,7 @@
   prepare_cargo
   prepare_source
   save_source
-  compile
+  MINIGBM_DRV="I915 RADEON VC4" compile
 }
 
 secondary_build() {
@@ -204,7 +214,7 @@
   restore_source
   prepare_cargo
   save_source
-  compile
+  MINIGBM_DRV="RADEON VC4" compile
 }
 
 retry() {
diff --git a/x86_64-linux-gnu/BUILD_INFO b/x86_64-linux-gnu/BUILD_INFO
index fa51fdd..ba83f26 100644
--- a/x86_64-linux-gnu/BUILD_INFO
+++ b/x86_64-linux-gnu/BUILD_INFO
@@ -1,7 +1,7 @@
 ./build/third_party/minigbm https://android.googlesource.com/platform/external/minigbm 055a6aa3e8274e6689740acc5eb7a4250e05edaa
-./build/third_party/minijail https://android.googlesource.com/platform/external/minijail 2d69add25d14459e3ef21f3f96b58b3b2bc8882e
+./build/third_party/minijail https://android.googlesource.com/platform/external/minijail 7b094ba768d1be344cc72795065354a86e4e645e
 ./build/third_party/libepoxy https://android.googlesource.com/platform/external/libepoxy 707f50e680ab4f1861b1e54ca6e2907aaca56c12
 ./build/third_party/virglrenderer https://android.googlesource.com/platform/external/virglrenderer ef72ec3c909204cd620fd67e9131744d1f4ea97d
-./build/third_party/adhd https://android.googlesource.com/platform/external/adhd d410c13e24e855aac4275068565e9112ba91f7ad
-./build/platform/crosvm https://android.googlesource.com/platform/external/crosvm bbd24c5a83014807c8c03aac93d06e9f7d81181c
+./build/third_party/adhd https://android.googlesource.com/platform/external/adhd d93f1994437a1c85565f01c64ad53eafd0b10971
+./build/platform/crosvm https://android.googlesource.com/platform/external/crosvm ac83a5996c41c458e2c4bf98d3b3cf1857c92653
 ./.cargo/registry/index/github.com-1ecc6299db9ec823  HEAD
diff --git a/x86_64-linux-gnu/bin/crosvm b/x86_64-linux-gnu/bin/crosvm
index 14a411b..aa8a780 100755
--- a/x86_64-linux-gnu/bin/crosvm
+++ b/x86_64-linux-gnu/bin/crosvm
Binary files differ
diff --git a/x86_64-linux-gnu/lib/libgbm.so.1 b/x86_64-linux-gnu/lib/libgbm.so.1
index 11f8dbe..b243624 100755
--- a/x86_64-linux-gnu/lib/libgbm.so.1
+++ b/x86_64-linux-gnu/lib/libgbm.so.1
Binary files differ